私はgitlabのドキュメントを読みました。
私の場合は特殊文字(コロン「:」)があり、次の内容も読みました。
今私の質問は:この2つを組み合わせる方法は?
一方では、私(引用する):
job name:
script:
- |
for file in *; do
echo "$file";
echo "${REPO}/${file}";
done
一方、私は(引用する):
script:
- 'for file in *; do curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file "${file}" "${REPO}/${file}"; done'
この2つをどのように組み合わせますか?長期的な解決策は、for
ループ内のエラーを次のように処理することです。引用する):
- 'http_code=$(curl -o /dev/null -s -w "%{http_code}" --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file "$file" "${REPO}/${file}")'
- if [ $http_code -ne 201 ]; then echo "Upload failed: terminating" && false; fi;
答え1
variables
区間内の特殊文字移動の問題を簡素化しました。 YAMLはまだ動作していますが、これは症状を解決するようです。
job name:
variables:
token: "JOB-TOKEN: $CI_JOB_TOKEN"
script:
- |
for file in *; do
http_code=$(curl -o /dev/null -s -w "%{http_code}" --header "$token" --upload-file "$file" "${REPO}/${file}")
if [ $http_code -ne 201 ]; then echo "Upload failed for $file" && false; fi;
done