2

私がやっていることは、GitLabからGoogle Cloudeのコンピューティングエンジンへの継続配信を可能にすることです。私はそこにUbuntu 16.04 TSLが走っています。私はSwift、vapor、nginxのように私のプロジェクトを実行するために必要なすべてのコンポーネントをインストールしました。 私はGitlabランナーもインストールでき、gitlabリポジトリからアクセス可能なランナーwhcihcを作成しました。私がマスターを押すたびにランナーがトリガーします。私はchmod -R 777へのアクセス権を変更する場合はGitlab - Googleコンピューティングエンジン継続配信

could not create leading directories of '/home/gitlab-runner/builds/2bbbbbd/0/Server/Packages/vapor.git': Permission denied

それはgitlabパイプライン上に表示buildのステージのためにrunningにハンゲます:何が起こることに起因する障害です。

私のようなものでした: sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/builds sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/cache が、これは助けていない、エラーはあなたが私の.gitlab-ci.yml

before_script: 
    - swift --version 

stages: 
    - build 
    - deploy 

job_build: 
    stage: build 
    before_script: 
    - vapor clean 
    script: 
    - vapor build --release 
    only: 
    - master 

job_run_app: 
    stage: deploy 
    script: 
    - echo "Deploy a API" 
    - vapor run --name=App --env=production 
    environment: 
    name: production 

job_run_frontend: 
    stage: deploy 
    script: 
    - echo "Deploy a Frontend" 
    - vapor run --name=Frontend --env=production 
    environment: 
    name: production 

しかしを持って下の横にPermission denied

合格していないことと同じですステージ。展開する。私は14時間以上待ちましたが、結果は出ませんでした。 そして...私はさらにいくつかの質問があります。

  1. Gitlabランナーが作成するには、すべての新しい仕事は自分のフォルダを持っているこの場所に場所/home/gitlab-runner/builds/の下で構築します。たとえば。 /home/gitlab-runner/builds/2bbbbbd/は私のプロジェクトであり、コマンドは実行されます。最初のバージョンが動作していて、新しいバージョンをデプロイするとどうなりますか?ポートは最初のインスタンスなどでブロックされますか?
  2. もし私がsupervisorを有効にしたいのであれば、これはどのように私がフォルダを展開するときに違うのですか?
  3. 誰でも私のことを説明したり、教えてくれますか?私はfinnaly answearをfaound長く深い検索へ
+0

あなたの許可の問題をどのように解決しましたか?同じ問題に直面しています。 –

+0

私は 'chmod -R 777'を使ってくれました。私はそれが完璧な解決策ではないことを知っていますが、テスト目的のためには問題ありません。どのようにそれは仕上げていないプロセスのために 'ビルド'にぶら下がっていた。 CDのために私は今dplを目指しています – Shial

+0

いくつかの作業の後、私はgceで作業する 'build'を得ました。 CDのための今dplを探している –

答えて

1

How to start a service using GitLab runner

ありがとう!完全な記事は上に見つけることができます。 簡単にGitLab CIのドキュメントでは、展開にdplを使用することを推奨しています。 Gitlabランナーランテストとプロッセスは終了する必要があります。ランナーは、各ビルドを完了した後に、作成されたすべてのプロセスを強制終了するように設計されています。 GitLabランナーはカタログ外の操作を実行できません。

関連する問題