問題を引き起こしているYAML構文についていくつかの仮定をしています。あなたの代わりにこの書いまったく同じ
- The quick brown fox
jumped over the
lazy dog.
それはされています:
- The quick brown fox jumped over the lazy dog.
を。これは、そのシェルのフラグメントを意味し、あなたは」あなたのように「exend」以降の行をインデントすることでYAMLのライン、もし実際になり
- if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then
./.travis/success_message.sh
fi
:として書かれまし
if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then ./.travis/success_message.sh fi
そして、あなたは、シェルでその行を実行しようとした場合、あなたが得る:
sh: -c: line 1: syntax error: unexpected end of file
あなたはYAML文書に複数行のシェルスクリプトを含めたい場合は、あなたの最善の策は、そのままのブロックを使用することが考えられますオペレータ、|
、次のように:
- |
if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then
./.travis/success_message.sh
fi
意図したように、なりますどの、中:また
if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then
./.travis/success_message.sh
fi
、あなたはジュースができターミナルfi
前
- if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then
./.travis/success_message.sh;
fi
注新しい;
:トンセミコロンを適切に利用します。結果は次のようになります。
if [ $TRAVIS_BRANCH == "master" && $TRAVIS_PULL_REQUEST == "false" ]; then ./.travis/success_message.sh; fi
...これは完全に有効なシェル構文です。