in _einer_ CI Pipeline müssen alle Schritte enthalten sein

This commit is contained in:
Ludger Sicking 2024-10-16 11:58:54 +02:00
parent bde9a58a93
commit b03c4ff502

View file

@ -0,0 +1,54 @@
steps:
- name: set_path_for_branch
image: alpine
commands:
- echo 'step= set_path_for_branch'
- echo "PATH_FOR_BRANCH=$CI_COMMIT_BRANCH" >> environment_variables
- cat environment_variables
- sed "s|blog/'|blog/${CI_COMMIT_BRANCH}/'|" sb/hugo.yaml > hugo-changed.yaml
- cat sb/hugo.yaml
- cat hugo-changed.yaml
- mv hugo-changed.toml sb/hugo.yaml
# nur zum Prüfen, was es an Hugo Konfigs gibt
- find . -name "*hugo*yaml"
- find . -name "*hugo*toml"
when:
- branch:
include: '**'
#exclude: main
- name: build_by_hugo
image: hugomods/hugo
commands:
- hugo version
- hugo --cleanDestinationDir -s sb --logLevel info
- name: copy_to_server
image: alpine
environment:
SSH_HOST:
from_secret: ssh_host
SSH_USER:
from_secret: ssh_user
SSH_KEY:
from_secret: ssh_key
SSH_PORT:
from_secret: ssh_port
TARGET_PATH:
from_secret: target_path
commands:
- DEST_PATH_BASE=public/oer_community/sb/blog
#- if [ "$CI_COMMIT_BRANCH" != "main" ]; then echo "not <main>"; echo $CI_COMMIT_BRANCH; DESTINATION_PATH="$DEST_PATH_BASE/${CI_COMMIT_BRANCH}"; fi
- echo $DESTINATION_PATH
- apk add --no-cache openssh
- mkdir -p ~/.ssh
- echo "$SSH_KEY" | tr -d '\r' > ~/.ssh/deployKey
- chmod 600 ~/.ssh/deployKey
- ssh-keyscan -H -p $SSH_PORT $SSH_HOST 2>/dev/null >> ~/.ssh/known_hosts
- chmod 600 ~/.ssh/known_hosts
- ssh -i ~/.ssh/deployKey -p $SSH_PORT $SSH_USER@$SSH_HOST "mkdir -p $DESTINATION_PATH"
- scp -r -i ~/.ssh/deployKey -P $SSH_PORT sb/public/* $SSH_USER@$SSH_HOST:$DESTINATION_PATH/