問題タブ [gitlab-ci]
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.
gitlab - ジョブスクリプトはgitlab ciのどこで実行されますか?
ジョブ スクリプトはどこで実行されますか? Runner と同じシステムで動作しますか? ランナーはどのようにスクリプトを実行し、ビルドはどこに保存されますか? 誰かが Gitlab CI の全体の流れを説明できれば素晴らしいと思います。
node.js - GitLab + GitLab CI + NPM 経由の依存 SSH プロジェクト
現在、GitLab を使用してリポジトリを管理し、GitLab CI を CI として使用しています。
別の GitLab プロジェクトを依存関係として (NPM 経由で) 含むプロジェクトがあります。プロジェクトは内部のもので、package.json の URL は で始まりますgit+ssh://git@
。これは、ローカル マシンで使用するものです。SSHキーをセットアップしました。
ただし、GitLab CI は、この同じメカニズムを使用して、この依存プロジェクトを (経由で) インストールできないようですnpm install
。
私が得るエラーは次のとおりです。
何が欠けていますか?の URL を変更する必要のないソリューションが必要ですpackage.json
。
gitlab - tox を Gitlab CI ジョブとして実行するとアクセス許可が拒否される
私はGitlabとGitlab CIに比較的慣れていません(実際にはCI全体を使用しています)、GitlabサーバーとGitlab CIサーバーの両方を同じマシンに正常にセットアップしました(スペアサーバーが不足しているため、そして私たちのチームがこのCI全体についてはまだ「ベータ」段階です)。
現在、Angular プロジェクト (Web クライアントとして) と Flask プロジェクト (Web サービスとして) の 2 つのプロジェクトが進行中です。Gitlab と Gitlab CI の両方で角度プロジェクトを正常にセットアップしました (うまく機能し、テストを実行し、スクリプトを完全に正常に構築します)。
しかし今、フラスコプロジェクトもセットアップしたいので、継続的インテグレーションも適用できます。そのためにtox
、テストスクリプトなどを実行するために使用gulp
します(角度プロジェクトに使用していました)。
そして、これがかなり基本的な tox.ini です。
Gitlab CI ジョブでtox
は、開発サーバーで実行しているのはこれだけなので (このセットアップは開発マシンで正常に動作tox
し、virtualenv 上になくても実行されます)、これを使い続けます。このコマンドを実行すると、Gitlab CI で許可拒否エラーが発生しました (以下を参照)
ちなみに、私は新しいgitlab-ci-multi-runner
ものを使用しており、角度のあるプロジェクトで使用しているランナーをほとんどリサイクルしました(同じマシンでフラスコプロジェクトに新しいランナーを登録しようとしましたが、テストしようとすると応答しません)それ)
また、私は既にtox
を使用してグローバルにインストールしています。これは、sudo pip install tox
Angular プロジェクトsudo npm install -g bower gulp
とsudo npm install npm -g
それから私はちょうど置く
angularプロジェクトのCIジョブで
ubuntu - GitLab に認証局を追加しますか?
そのため、サーバーで HTTPS を使用して GitLab をセットアップしようとしています。シンプルですね。
良い...
私は一種の自己署名証明書を使用しています。また、必ずしも自己署名証明書だけではありません。システムにルート証明書がインストールされています (Ubuntu 15.04 を実行し、/etc/ssl/certs フォルダーと /etc/ssl/certs の ca-certificates.crt ファイルの両方にあります。中間証明書とサーバー証明書があります)。サーバーで HTTPS に使用している.しかし、GitLab CI から OAUTH を機能させることができないようです.サーバーの GitLab アカウントから承認を押した後、「私たちは申し訳ありませんが、問題が発生しました。」ログに次のエラーが表示されます。
Faraday::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed): app/controllers/user_sessions_controller.rb:18:in `callback'
この問題の原因がわかりません。Web サーバーの証明書チェーンを実行しています。Qualys SSLLabs テストで A を取得しました。解決策を探しているときに見た SSL Doctor Ruby アプリケーションは、証明書チェーンに問題を検出しませんでした。この時点で、このエラーの原因についてはまったくわかりません。誰かがこれを整理するのを手伝ってくれますか?
gitlab - GitLab & GitLab CI WebHook エラー
私は GitLab 7.11.4 と GitLab CI 7.11.4 を実行しています。どちらも Omnibus パッケージ経由でインストールされています。しばらく GitLab を実行していますが、最近 CI サービスを有効にしたばかりです。[code.subdomain.com] と [ci.subdomain.com] でそれぞれアクセスできるように、GitLab と CI を正常にセットアップしました。特定のプロジェクトの CI アクセスを有効にする手順に従い、ランナーをセットアップし、ビルド用のテスト シェル スクリプトを 1 つ作成しました (基本的にはcmake .. && make
)。
これは私が問題にぶつかったところです。GitLab プロジェクト設定ページにアクセスして、[テスト設定] をクリックすることになっています。これを行うと、エラーが発生しますWe tried to send a request to the provided URL but an error occured
。gitlab-rails/production.log はこれを示しています:
そのログの [namespace] と [project] を置き換えましたが、正しいエントリが表示されます。
GitLab CI はリクエストを受信していないようで、プロジェクトでテスト コミットを実行しようとしても GitLab CI がトリガーされません。
何をすべきか途方に暮れており、この問題の原因についてのドキュメントが見つからないようです。どんな助けや指示も大歓迎です。
rsync - Gitlab CI から別のサーバーにビルド ファイルを再同期する方法
rsync を使用して Gitlab CI ( https://ci.gitlab.comでホストされている) から個人用サーバーにビルド ファイルを取得する方法がわかりません。
1 つのテストと1 つのデプロイジョブをセットアップしました。
展開タブの下で、bash コマンドを入力して次のことを行いました。
- rsyncをインストール
- パッケージを更新する
- 最後に、SSH 経由で個人用サーバーにファイルを転送する rsync コマンド。
プライベート パーソナル サーバーの SSH 資格情報を (詳細フラグをオンにして) 入力すると、SSH キーが問題のように見えます。Gitlab では、デプロイ キーを既に確立しています (フック用 - これをテストしたところ、動作しました)。
サーバーにキーをインストールできるように、Gitlab デプロイ インスタンスの公開 SSH キーはどこにありますか?
以下は、Gitlab CI デプロイ ジョブ スクリプト ペインに入力された正確なスクリプトです。