問題タブ [gitlab-ci-runner]
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.
linux - kubernetes または google コンテナー エンジンで gitlab-ci (または任意の CI) を使用します (gitlab-runner は kubectl を検出しません)。
gitlab-ci (またはその他の CI など、機能するもの) を使用して、Google コンテナー エンジンにデプロイしたいと考えています。kubectl run
Google コンピューティング エンジンで gitlab ランナーが動作していますが、インストール方法がわからないgcloud
ためkubectl
、ランナーのパスに実行可能ファイルと構成が含まれています。
gitlab pwd
ciファイルを実行するとルートが表示され、/home/gitlab-runner
実行するとwhoami
ルートが表示されるため、kubectlをユーザーgitlab-runner
およびユーザーとしてインストールしましroot
たが、gitlab-ci-multirunnerはまだ文句を言います
についても同じですkubectl
。おそらく、gitlab-runner がどのようにビルドを生成するかについて理解に問題がありますが、docker
インストールにアクセスできるので、gcloud / kubectl インストールにアクセスするにはどうすればよいですか?
kubernetes / google コンテナ エンジンにデプロイするためのより簡単なバージョンはありますか?
本当にありがとう!
gitlab-ci-runner - GitLab.com 共有ランナーがデフォルト サービスの mysql、postgres、redis を開始しないようにする
(確かに、これは重要ではありません。)
GitLab.com CI の共有ランナーを使用して CI ビルドを実行しています。私が行を持っていても、彼らは常にmysql、postgres、およびredisサービスを開始しているようです
私の.gitlab-ci.yml
ファイルで。
共有ランナーがこれらのサービスを開始しないようにする方法はありますか? 確かに、リソースを占有し、ビルド ログに数行のノイズを作成することを除けば、害はありません。
gitlab - ルーティング可能な IP のない Gitlab CI ランナー
ワークフローで Gitlab CI を使用したいのですが、私のプロジェクトはライセンスされたソフトウェアに依存しているため、ルーティング可能なパブリック IP を持たないマシンで実行する必要があります。私の考えでは、heroku で単純なサーバーを作成して Webhook を受け入れ、リクエストをメッセージ キュー (たとえば、redis DB) に入れ、ローカル マシンでポーリングして実際に CI ジョブを実行できると考えています。ただし、Gitlab CI システム全体は、gitlab.com サーバーがランナーと直接通信できることを前提として書かれているようです。プッシュ イベントを受け入れるのではなく、Webhook を介して CI ビルド トリガーをプロキシするか、gitlab-runner プル ビルド ジョブを作成するための概念実証を知っている人はいますか? 必要に応じて、ビルド イベントをポーリングし、必要なコマンドを実行する独自のランナーをロールすることもできますが、既存の、車輪を再発明するのではなく、文書化されたインフラストラクチャ/ファイル形式。提案をありがとう。
gitlab - Gitlab CI: 複数のマシンで同じ一連のテストを実行する
ハイ パフォーマンス コンピューティングでは、ラップトップからスーパーコンピューターまで、さまざまなアーキテクチャ/コンパイラに対してコードをテストすることが重要です。
私たちが持っていると仮定すると
N
テストマシン/ワーカー(それぞれ実行中gitlab-ci-runner
);M
テスト,
マシンがすべてのテストを.gitlab-ci.yml
確実に実行するための正しいレイアウトは何ですか?each
N
労働者を追加するだけで、round-robin
同じような仕事の割り当てになってしまうように私には見えます。
ご協力いただきありがとうございます。
php - gitlab CI で docker-compose 構成を使用する方法
gitlab にプロジェクトがあり、単体テストには gitlab CI を使用します。実際には、2 つのプロジェクト用に docker-compose.yml と Dockerfile を含む別のリポジトリ名「docker」を持っています (本番環境の構成を再現しているため、2 つのプロジェクトは相互依存しています)。
実際に私の開発構成で
プロジェクト ディレクトリ:
- ドッカー
- プロジェクト_1
- プロジェクト_2
docker ディレクトリ内:
- docker-compose.yml
- Dockerfile-project1
- Dockerfile-project2
- [いくつかの設定ファイルはdockerFileで尋ねます]
docker-compose.yml の相対パスは ../project_1 および ../project_2 です
構成をセットアップするために、次を作成します。
- CDドッカー
- docker-compose up -d project1 (docker-compose.yml 内の名前)
- docker exec -ti project1 bash
質問 ? gitlab CI が開始されてから、git リポジトリ「docker」をプルして、project1 用に docker-compose を起動する方法を知りたいですか?
ありがとう
gitlab-ci - gitlab-ci-runner の結果とアップロードされるものは何ですか?
gitlab-ci セットアップの準備をしていますが、答えが見つからない 2 つの質問に達しました。
1) Windows でアーティファクトがサポートされていない場合 (シェル エグゼキューターを使用)、ビルド スクリプトの終了後に何がアップロードされますか?
2) アーティファクトは、何をアップロードする必要があるかをランナーに伝える正しい方法ですか? それとも、生成されたガベージが興味深いかもしれないので、実際の結果の横にアップロードするのが良いとランナーに伝えるための余分なものですか?
gitlab-ci - npm パブリッシュが失敗した場合、Gitlab-ci-multi-runner は続行します
gitlab-ci-multi-runner を使用して、アーティファクトを独自の npm レジストリに公開します。これは .gitlab-ci.yml ファイルです。
npm パブリッシュが失敗することがあります。これは出力です:
ジョブが失敗したため、gitlab-ci-multi-runner が停止することが予想されます。しかし、そうではありません!ビルドが成功したことを報告します。
npm publish が失敗した場合、ビルドを失敗させる方法を知っている人はいますか?