techstack.hadan.de/.gitea/workflows/main.yml
2025-01-26 20:53:54 +01:00

75 lines
2.8 KiB
YAML

name: Main
on:
push:
branches:
- main
jobs:
build-deploy:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
registry-url: 'https://registry.npmjs.org'
- run: npm install
- run: npm run build
# - run: npm run create:ast
- run: apt-get update && apt-get install -y rsync
- name: Create private key
run: |
echo "${{ secrets.ACT_RUNNER_KEY }}" > /tmp/act_runner_key
chmod 600 /tmp/act_runner_key
- name: rsync public directory
run: |
/usr/bin/rsync -avz --delete -e "ssh -i /tmp/act_runner_key -o StrictHostKeyChecking=no" ${{ gitea.workspace }}/dist/* root@vps03.hadan-it.com:/data/webspace/techstack.hadan.de/
- name: ntfy-success-notifications
uses: https://github.com/niniyas/ntfy-action@master
if: success()
with:
title: 'Forgejo Actions'
url: '${{ secrets.NTFY_URL }}'
topic: '${{ secrets.NTFY_TOPIC }}'
priority: 4
headers: '${{ secrets.NTFY_HEADERS }}'
tags: +1,partying_face,action,successfully,completed
details: Workflow has been successfully completed!
icon: 'https://upload.wikimedia.org/wikipedia/commons/thumb/0/05/Forgejo_logo.svg/512px-Forgejo_logo.svg.png'
image: true
- name: ntfy-failed-notifications
uses: https://github.com/niniyas/ntfy-action@master
if: failure()
with:
title: 'Forgejo Actions'
url: '${{ secrets.NTFY_URL }}'
topic: '${{ secrets.NTFY_TOPIC }}'
priority: 5
headers: '${{ secrets.NTFY_HEADERS }}'
tags: +1,partying_face,action,failed
details: Workflow has failed!
actions: 'default'
icon: 'https://upload.wikimedia.org/wikipedia/commons/thumb/0/05/Forgejo_logo.svg/512px-Forgejo_logo.svg.png'
image: true
- name: ntfy-cancelled-notifications
uses: https://github.com/niniyas/ntfy-action@master
if: cancelled()
with:
title: 'Forgejo Actions'
url: '${{ secrets.NTFY_URL }}'
topic: '${{ secrets.NTFY_TOPIC }}'
priority: 3
headers: '${{ secrets.NTFY_HEADERS }}'
tags: +1,partying_face,action,cancelled
details: Workflow has been cancelled!
actions: '[{"action": "view", "label": "Open portal", "url": "https://techstack.preview.hadan.de/", "clear": true}]'
icon: 'https://upload.wikimedia.org/wikipedia/commons/thumb/0/05/Forgejo_logo.svg/512px-Forgejo_logo.svg.png'
image: true
- run: echo "This job's status is ${{ job.status }}."