Some checks are pending
deploy blog / deploy (push) Waiting to run
Signed-off-by: xengi <cccb-git@xengi.de>
46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
name: deploy blog
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- staging
|
|
- production
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: some-runner
|
|
secrets:
|
|
SSH_PRIVATE_KEY: keep_it_private
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
ref: forgejo.ref
|
|
- uses: actions/setup-go@v6
|
|
with:
|
|
go-version: 'stable'
|
|
- run: go version
|
|
- run: go install github.com/gohugoio/hugo@latest
|
|
|
|
- uses: actions/setup-python@v6
|
|
with:
|
|
python-version-file: '.python-version'
|
|
- run: python --version
|
|
- run: pip install -r requirements.txt
|
|
|
|
- name: Render site
|
|
run: ./build.sh
|
|
|
|
- name: Setup SSH key
|
|
run: |
|
|
echo ${{ secrets.SSH_PRIVATE_KEY }} > id_ed25519
|
|
chmod 600 id_ed25519
|
|
- name: Sync rendered site to staging
|
|
if: forgejo.ref == 'refs/heads/staging'
|
|
run: rsync -var -e 'ssh -i id_ed25519' ./public/ deploy@www.berlin.ccc.de:srv/http/www-staging/
|
|
continue-on-error: true
|
|
- name: Sync rendered site to production
|
|
if: forgejo.ref == 'refs/heads/production'
|
|
run: rsync -var -e 'ssh -i id_ed25519' ./public/ deploy@www.berlin.ccc.de:srv/http/www/
|
|
continue-on-error: true
|
|
- name: Cleanup
|
|
run: rm -rf id_ed25519
|