2017-09-29 6 views
0

Travisビルドに新しい問題があります。簡単に言うと、私の.travis.ymlファイルが含まれています:トラビスがブランチが許可されていないため、S3の配備をスキップします

deploy: 
    provider: s3 
    access_key_id: mYacc3ssKeyID 
    secret_access_key: 
    secure: mYacc3ssKey 
    bucket: my-bucket-staging 
    skip_cleanup: true 
    local_dir: dist/ 
    acl: public_read 
    on: 
    branch: staging 

deploy: 
    provider: s3 
    access_key_id: mYOtheracc3ssKeyID 
    secret_access_key: 
    secure: mYOtheracc3ssKey 
    bucket: my-bucket 
    skip_cleanup: true 
    local_dir: dist/ 
    acl: public_read 
    on: 
    branch: master 

を8月16日まで意図したように、このセットアップが働いていた、(ステージングブランチはmy-bucket-stagingバケットに配備された、masterブランチがmy-bucketバケットに配備された、他のすべての分岐が無視されました) 。私.travis.ymlファイルは、7月13日以降に変更されていませんが、staging枝は私の最後の既知の展開を成功それはマスターの展開はまだのように動作することも注目に値します8月15日

にあった8月16日にメッセージSkipping a deployment with the s3 provider because this branch is not permittedで展開停止しました予想通り、私は問題を抱えているステージングブランチです。

私が最後に何も変更していないので(stagingブランチは同じブランチで、.travis.ymlファイルは同じものです)、私が見逃したトラビスの変更があったのでしょうか?なぜ誰かが(一見)ちょうど仕事をやめてしまうのか分かっていますか?

私はトラビスのドキュメントを読み返したが、何か違うことに気付かなかったが、何か変わったはずのものがあるか、何かがひどく明白でないことがわかった。

答えて

0

上記のYAMLセグメントは、2つの同一のキーdeployを定義しているため、最後のものだけが有効です。つまり、.travis.ymlに関する限り、on.branch: stagingで定義されたデプロイメントプロバイダは存在しません。

あなたは異なるブランチに取り組む2つの展開プロバイダを定義したい場合は、あなたがdeploy下の2要素の配列が必要です。

deploy: 
    - provider: s3 
    access_key_id: mYacc3ssKeyID 
    secret_access_key: 
     secure: mYacc3ssKey 
    bucket: my-bucket-staging 
    skip_cleanup: true 
    local_dir: dist/ 
    acl: public_read 
    on: 
     branch: staging 
    - provider: s3 
    access_key_id: mYOtheracc3ssKeyID 
    secret_access_key: 
     secure: mYOtheracc3ssKey 
    bucket: my-bucket 
    skip_cleanup: true 
    local_dir: dist/ 
    acl: public_read 
    on: 
     branch: master 

をあなたと前に働いている可能性がどのように私には明確ではありません示された元の構成。トレヴィスCIのビルドログを見ることに興味があります。

関連する問題