問題タブ [build-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
24 参照

hudson - Hudsonビルドを最後の実行でソートする方法は? (最後の成功または最後の失敗とは対照的に)

Hudson ビルドのより有用なテスト結果を取得しようとしており、すべてのビルドを でソートできるようにしたいと考えていますlast run date

last success残念ながら、またはでしかソートできないようlast failureです。

ベースアプリまたはプラグインを介してこの機能を追加する方法はありますか?

追加の列プラグインを既にインストールしていることに注意してください。ただし、この機能はないようです。

ありがとう

0 投票する
3 に答える
468 参照

tfs - TFS ビルド システムを使用した巨大なセキュリティ リスク

tfs ビルド システムは常に同じビルド アカウントを使用して最新のソース コードを取得し、ビルド ジョブを実行することがわかりました。そして、このアカウントには、すべてのソース コードにアクセスするための最高の権限があります。

そのため、チーム プロジェクトのビルド アクセス許可を 1 つだけ持っている人は誰でも、ビルド定義を作成し、「ソース設定」を TeamProjectCollection のルートに設定してから、MSBuild ポスト イベントで「XCopy」を実行して移動することで、実際にすべてのチーム プロジェクトのソース コードを取得できます。ソース コードを任意のリモート サーバーに送信します。

0 投票する
2 に答える
2197 参照

msbuild - ビルド サーバーがカスタム コード分析ルールセットの読み込みに失敗する

プロジェクトでコード分析を使用しています。この一環として、ビルド サーバーでコード分析を有効にして、継続的なチェックを可能にしています。

現在、次のエラーが表示されています。

CA0063 : * ルール セット ファイル '[name].ruleset' またはそれに依存するルール セット ファイルの 1 つを読み込めませんでした。

[name] は内部ネットワーク上のルールセットであり、誰でも利用できます。

コード分​​析は、各ローカル コンピューターでは問題なく実行されますが、ビルド サーバーでは実行されません。この問題を解決するにはどうすればよいですか?

ノート:

  • カスタムメイドのルールセットを使用します
  • カスタムルールは使用していません (まだ)
0 投票する
1 に答える
1380 参照

git - Grunt でビルドし、Capistrano でデプロイする Jenkins のベスト プラクティスは何ですか?

現在、私たちのオフィスでビルド サーバーをセットアップしています。状況ごとに異なるアプローチが必要であり、同じ目標を達成する方法は無数にあることはわかっていますが、私は Jenkins の新参者であり、サーバー構築の一般的な概念であるため、これを正しく行っているかどうか疑問に思っていました。 '。

当社は、WordPress や Magento などのさまざまなプラットフォームを使用して、さまざまなクライアント向けの Web サイトを構築することに重点を置いています。私は今、次のセットアップを持っています:

変更を Git のマスターまたはステージング ブランチにプッシュします。Jenkins はこれらのブランチをポーリングし、変更が検出されると次のことを行います。

  • Git からリポジトリをプルします (masterこの例では)
  • というブランチをチェックアウトしますbuild-master
  • このブランチをリセットしますorigin/master
  • aが見つかったnpm install場合に aを実行します。package.json
  • aが見つかったgrunt build場合に aを実行します。Gruntfile.js
  • (ここには phpunit や casperJS テストなどの他のものを入れる余地があります)
  • 変更をコミットして にプッシュバックしorigin/build-masterます。
  • a を実行しcap build-master deployて、Capistrano がリモート サーバーでの展開を処理できるようにします。

これがビルドサーバーを使用する「正しい」方法であるかどうか疑問に思っていました。いくつかの論理的な問題に遭遇しました。お気に入り:

たとえば、ベンダー ソフトウェア。たとえば、Bower を使用したさまざまな JS ライブラリ (git-ignored js/vendor-folder にある) がある場合、それらを連結して縮小された JS ファイルに醜くし、build-masterリポジトリ (Capistrano 用) に git commit することができます。しかし、PHP ライブラリ (Composer など) を使用している場合、これに対処する方法がわかりません。これらは git-ignored -folder にありますが、ライブサーバーにデプロイさphp/vendorれるように -branch に含める必要があります。build-master現在、 -folder.gitignore.buildを含むリポジトリに を追加することでこれを行っており、コミットして にプッシュする前に、既存のものをこれで上書きします。php/vendor.gitignoreorigin/build-master

および/または:

コンパイル済みファイル。一部のファイル (たとえば、SASS から生成された CSS ファイルなど) を含めたくない場合は、これらを.gitignore. しかし、繰り返しになりますが、Capistrano がデプロイするときは、コンパイルされ、連結され、縮小された CSS ファイルをリポジトリに入れたいと思います。そうしないと、プロダクション サーバーに置かれません。

「あるべき」方法で構築および展開しているかどうか、誰か教えてもらえますか? それとも、私はここでそれを完全に複雑にしすぎていますか? これについてより多くの経験を持つ人々が、ビルドプロセスで Jenkins、Grunt、Bower、Composer、Capistrano などをどのように利用しているかに非常に興味があります。

0 投票する
1 に答える
351 参照

css - ビルドごとにビルド サーバーで LESS ファイルを自動的にコンパイルする

main.less ファイルがあり、それが他の複数の less ファイルをインポートします。私が達成したいのは、ビルドサーバーでビルドするたびに main.less ファイルを main.css ファイルにコンパイルすることです。nodejs パッケージと、Visual Studio 用の dotless nuget パッケージをインストールしてみました。nodejs パッケージ ファイルをプロジェクト内の 1 つのフォルダーに分離して、npm がインストールされていないマシンでより少ないファイルのコンパイルを実行できるようにする方法はありますか? これを達成するためのオプションは何ですか?lessc パッケージでできますか?

0 投票する
2 に答える
686 参照

visual-studio - 特定のプロジェクトでコード分析を実行しないように TFS ビルド サーバーに依頼する

このプロジェクトでは、プロジェクトごとにコード分析 (CA) が設定されており、これが TFS ビルド サーバーに伝達されます。しかし、ローカルでビルドするときは CA を実行せず、ビルド サーバーでのみ実行したいと考えています。

問題は、DLL を生成しない 1 つのプロジェクト (SP 2013) があり、これが原因で CA エラーが発生することです: - CA0052 ターゲットが選択されていません - ファイルを読み込めませんでした .... App.dll

これらを抑制することもできますが、CA にビルド サーバーでこのプロジェクトをスキップさせたいと考えています。これはまったく可能ですか?

0 投票する
1 に答える
1735 参照

continuous-integration - TeamCity ビルドステップのセットアップ

次のタスクを達成するために TeamCity ビルドステップを構成する方法を見つけようとしています。

  1. dev ブランチをテスト ブランチ (TFS 内) にマージし、プロジェクト構成に使用されるテスト ブランチ内のファイルの一部を手動で変更するコンソール アプリを呼び出します。このプロセスは完全に機能し、テスト済みです。また、この手順では、マージされたファイルまたは変更されたファイルがテスト ブランチにチェックインされないことに注意してください。
  2. このビルド ステップにより、テスト ブランチの実際のソリューション ビルドが開始されます。(これは C#.NET ですが、重要ではないと思います)
  3. このビルド ステップは、追加されたすべての SQL スクリプトのデータベース移行を処理します。(この手順もテスト済みで動作します)
  4. この手順では、別のコンソール アプリを呼び出します。このステップは、前のステップが失敗した場合でも実行されます。ビルドが成功すると、ステップ 1 の保留中の変更がチェックインされ、ビルドがデプロイされます。前のステップでビルドが失敗した場合、ステップ 1 からの保留中の変更が取り消されます。

それは十分に簡単に思えますが、ステップ 1 と 2 の間の相互作用は、どうすればよいかわかりません。ステップ 2 でサーバー側のチェックアウトを使用すると、サーバーからソースがプルされ、ステップ 1 の変更は使用されません。エージェント側のチェックアウトを使用すると、新しいワークスペースが作成され、ソースがプルされます。サーバー、再びステップ1での変更を使用しません。

ステップ 1 で作成された保留中の変更を使用してステップ 2 をビルドする方法はありますか? 私が考えることができる他の唯一のオプションは、ステップ 1 の後に変更をチェックインし、ビルドが失敗した場合はステップ 4 で変更セットをロールバックすることです。ただし、その場合、ステップ 4 で変更セットをロールバックする方法を知るにはどうすればよいでしょうか。


また、1 つ小さな質問があります。ビルドの成功をパラメーターとしてステップ 4 に渡すにはどうすればよいですか? 組み込みパラメーターを調べましたが、ビルドの失敗/成功のパラメーターはありませんでしたか?

ありがとう!