[英]Run multi line script in gitlab-ci.yml
我正在嘗試將示例管道代碼集成到我當前的代碼中,我已經做到了這一點:
default:
image:
name: hashicorp/terraform:light
entrypoint:
- /usr/bin/env
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
stages:
- validate
- yor
validate:
stage: validate
before_script:
- rm -rf .terraform
- terraform --version
- terraform init
- export AWS_DEFAULT_REGION=eu-west-1
script:
- terraform validate -json
only:
- merge_requests
run-yor:
stage: yor
image: ruby:2.5
script:
- git checkout ${CI_COMMIT_SHA}
- export YOR_VERSION=0.1.62
- wget -q -O - https://github.com/bridgecrewio/yor/releases/download/${YOR_VERSION}/yor-${YOR_VERSION}-linux-amd64.tar.gz | tar -xvz -C /tmp
- /tmp/yor tag -d .
after_script:
- |
cd $CI_PROJECT_DIR
git status
lines=$(git status -s | wc -l)
if [ $lines -gt 0 ];then
echo "committing"
git config --global user.name "$AUTO_COMMITTER_NAME"
git config --global user.email "$AUTO_COMMITTER_EMAIL"
echo ".yor_plugins" >> .gitignore
git add .
git commit -m "YOR: Auto add/update yor.io tags."
git push -o ci.skip "https://${GITLAB_USER_NAME}:${GIT_PUSH_TOKEN}@${CI_REPOSITORY_URL#*@}"
else
echo "no updated resources, nothing to commit."
fi
only:
- merge_requests
deploy:native-application:
stage: deploy
script:
- |
mvn $MAVEN_CLI_OPTS package -DskipTests \
-Pnative \
-Dquarkus.native.builder-image=quay.io/quarkus/ubi-quarkus-mandrel:21.3.0.0-Final-java17 \
-Dquarkus.container-image.push=true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.