55 lines
1.8 KiB
YAML
55 lines
1.8 KiB
YAML
when:
|
|
- event: push
|
|
|
|
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|sb/'|sb/${CI_COMMIT_BRANCH}/'|" sb/hugo.yaml > hugo-changed.yaml
|
|
- cat sb/hugo.yaml
|
|
- cat hugo-changed.yaml
|
|
- mv hugo-changed.yaml sb/hugo.yaml
|
|
# nur zum Prüfen, was es an Hugo Konfigs gibt
|
|
- find . -name "*hugo*yaml"
|
|
- find . -name "*hugo*toml"
|
|
|
|
- name: build_by_hugo
|
|
image: hugomods/hugo
|
|
commands:
|
|
- hugo version
|
|
- git -C sb submodule update --init --recursive
|
|
- hugo --cleanDestinationDir -s sb --logLevel debug --debug --logFile hugo_build.log
|
|
- cat hugo_build.log # zeigt das vollständige Hugo-Log im CI-Protokoll
|
|
# Installiere das `tree`-Tool, um die Struktur von `sb/public` anzuzeigen
|
|
- apk add --no-cache tree
|
|
- tree sb/public # zeigt die Dateistruktur der Ausgabe an
|
|
|
|
- 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:
|
|
- 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
|
|
# TARGET_PATH protokollieren
|
|
- echo "Target Path for Deployment: $TARGET_PATH"
|
|
- ssh -i ~/.ssh/deployKey -p $SSH_PORT $SSH_USER@$SSH_HOST "mkdir -p $TARGET_PATH"
|
|
- scp -r -i ~/.ssh/deployKey -P $SSH_PORT sb/public/* $SSH_USER@$SSH_HOST:$TARGET_PATH/
|