summaryrefslogtreecommitdiffci
path: root/.github/workflows
diff options
from:
to:
context:
space:
mode:
authorGravatar Saya Andy <saya.andy@posteo.com> 2026-07-30 10:59:45 +0700
committerGravatar Saya Andy <saya.andy@posteo.com> 2026-07-30 10:59:45 +0700
commitf73435c674c0ef67bde106d3f953ace17d22a856 (patch)
tree11c43abcfd67ca5223e61c954fe07a5d7b022d38 /.github/workflows
parent0d8fc1c94414f8e69cffe389620867a70ea85590 (diff)
parent4bdcac0a88d0510df9cdef2e99bee20370fe219b (diff)
downloadweb-0.17.3.2.tar.gz
web-0.17.3.2.zip
v0.17.3.2v0.17.3.2main
ci: use self-hosted sayag.it jenkins
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build-and-deploy-prod.yml103
-rw-r--r--.github/workflows/build-and-deploy-stage.yml104
2 files changed, 0 insertions, 207 deletions
diff --git a/.github/workflows/build-and-deploy-prod.yml b/.github/workflows/build-and-deploy-prod.yml
deleted file mode 100644
index fc44571..0000000
--- a/.github/workflows/build-and-deploy-prod.yml
+++ /dev/null
@@ -1,103 +0,0 @@
-name: Docker image building and publishing onto Production
-on:
- push:
- tags:
- - "*"
-jobs:
- build-and-push:
- if: github.repository == 'SayaAndy/saya-today-web'
- runs-on: ubuntu-latest
- environment: Production
- permissions:
- packages: write
- steps:
- - name: Checkout
- uses: actions/checkout@v6
-
- - name: Generate output.css with tailwindcss
- uses: ZoeyVid/tailwindcss-update@main
- with:
- input: static/input.css
- output: static/output.css
- params: "--minify"
-
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v4
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v4
-
- - name: Login to GitHub Container Registry
- uses: docker/login-action@v4
- with:
- registry: ghcr.io
- username: ${{ github.repository_owner }}
- password: ${{ secrets.GHCR_TOKEN }}
-
- - name: Build and push
- uses: docker/build-push-action@v7
- with:
- context: .
- file: ./Dockerfile
- push: true
- cache-from: type=gha
- cache-to: type=gha,mode=max
- tags: |
- ghcr.io/sayaandy/saya-today-web:latest
- ghcr.io/sayaandy/saya-today-web:stable
- ghcr.io/sayaandy/saya-today-web:${{ github.ref_name }}
-
- deploy:
- if: github.repository == 'SayaAndy/saya-today-web'
- runs-on: ubuntu-latest
- environment: Production
- needs: [build-and-push]
- container:
- image: ghcr.io/ansible/community-ansible-dev-tools:v26.4.6
- options: --user root
- steps:
- - name: Checkout
- uses: actions/checkout@v6
-
- - name: Install community.docker collection
- run: ansible-galaxy collection install community.docker
-
- - name: Set up SSH connection for uz.saya.casa
- run: |
- mkdir -p ~/.ssh
- (cat <<EOF
- ${{ secrets.SVC_GITHUB_PK }}
- EOF
- ) > ~/.ssh/id_ed25519
- chmod 600 ~/.ssh/id_ed25519
- sed -i 's/\r$//' ~/.ssh/id_ed25519
- ssh-keyscan -H uz.saya.casa >> ~/.ssh/known_hosts
-
- - name: Test SSH connection
- run: |
- ssh -o ConnectTimeout=10 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 svc_github@uz.saya.casa "echo 'SSH connection successful'"
-
- - name: Run Ansible playbook
- env:
- ANSIBLE_HOST_KEY_CHECKING: "False"
- working-directory: ./deploy
- run: |
- ansible-playbook \
- playbook.yml \
- -i inventory.yml \
- -l prod \
- --private-key ~/.ssh/id_ed25519 \
- -u svc_github \
- -e saya_today_web_auth_salt="${{ secrets.AUTH_SALT }}" \
- -e saya_today_web_s3_access_key_id="${{ secrets.S3_ACCESS_KEY_ID }}" \
- -e saya_today_web_s3_secret_access_key="${{ secrets.S3_SECRET_ACCESS_KEY }}" \
- -e saya_today_web_environment=prod \
- -e saya_today_web_tag=${{ github.ref_name }} \
- -e saya_today_web_mail_salt="${{ secrets.MAIL_SALT }}" \
- -e saya_today_web_mail_host="${{ secrets.MAIL_HOST }}" \
- -e saya_today_web_mail_address="${{ secrets.MAIL_ADDRESS }}" \
- -e saya_today_web_mail_username="${{ secrets.MAIL_USERNAME }}" \
- -e saya_today_web_mail_password="${{ secrets.MAIL_PASSWORD }}" \
- -e saya_today_google_site_verification="${{ secrets.GOOGLE_SITE_VERIFICATION }}" \
- -e saya_today_yandex_verification="${{ secrets.YANDEX_VERIFICATION }}" \
- -e saya_today_bing_verification="${{ secrets.BING_VERIFICATION }}"
diff --git a/.github/workflows/build-and-deploy-stage.yml b/.github/workflows/build-and-deploy-stage.yml
deleted file mode 100644
index ce4a1fb..0000000
--- a/.github/workflows/build-and-deploy-stage.yml
+++ /dev/null
@@ -1,104 +0,0 @@
-name: Docker image building and publishing onto Stage
-on:
- push:
- branches: [stage]
-jobs:
- build-and-push:
- if: github.repository == 'SayaAndy/saya-today-web'
- runs-on: ubuntu-latest
- environment: Stage
- permissions:
- packages: write
- outputs:
- sha_short: ${{ steps.ghss_vars.outputs.sha_short }}
- steps:
- - name: Checkout
- uses: actions/checkout@v6
-
- - name: Generate output.css with tailwindcss
- uses: ZoeyVid/tailwindcss-update@main
- with:
- input: static/input.css
- output: static/output.css
- params: "--minify"
-
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v4
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v4
-
- - name: Login to GitHub Container Registry
- uses: docker/login-action@v4
- with:
- registry: ghcr.io
- username: ${{ github.repository_owner }}
- password: ${{ secrets.GHCR_TOKEN }}
-
- - name: Set github short sha
- id: ghss_vars
- run: echo "sha_short=${GITHUB_SHA::7}" >> $GITHUB_OUTPUT
-
- - name: Build and push
- uses: docker/build-push-action@v7
- with:
- context: .
- file: ./Dockerfile
- push: true
- cache-from: type=gha
- cache-to: type=gha,mode=max
- tags: |
- ghcr.io/sayaandy/saya-today-web:latest
- ghcr.io/sayaandy/saya-today-web:commit-${{ steps.ghss_vars.outputs.sha_short }}
-
- deploy:
- if: github.repository == 'SayaAndy/saya-today-web'
- runs-on: ubuntu-latest
- environment: Stage
- needs: [build-and-push]
- container:
- image: ghcr.io/ansible/community-ansible-dev-tools:v26.4.6
- options: --user root
- steps:
- - name: Checkout
- uses: actions/checkout@v6
-
- - name: Install community.docker collection
- run: ansible-galaxy collection install community.docker
-
- - name: Set up SSH connection for uz.saya.casa
- run: |
- mkdir -p ~/.ssh
- (cat <<EOF
- ${{ secrets.SVC_GITHUB_PK }}
- EOF
- ) > ~/.ssh/id_ed25519
- chmod 600 ~/.ssh/id_ed25519
- sed -i 's/\r$//' ~/.ssh/id_ed25519
- ssh-keyscan -H uz.saya.casa >> ~/.ssh/known_hosts
-
- - name: Test SSH connection
- run: |
- ssh -o ConnectTimeout=10 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 svc_github@uz.saya.casa "echo 'SSH connection successful'"
-
- - name: Run Ansible playbook
- env:
- ANSIBLE_HOST_KEY_CHECKING: "False"
- working-directory: ./deploy
- run: |
- ansible-playbook \
- playbook.yml \
- -i inventory.yml \
- -l stage \
- --private-key ~/.ssh/id_ed25519 \
- -u svc_github \
- -e saya_today_web_auth_salt="${{ secrets.AUTH_SALT }}" \
- -e saya_today_web_s3_access_key_id="${{ secrets.S3_ACCESS_KEY_ID }}" \
- -e saya_today_web_s3_secret_access_key="${{ secrets.S3_SECRET_ACCESS_KEY }}" \
- -e saya_today_web_environment=stage \
- -e saya_today_web_tag=commit-${{ needs.build-and-push.outputs.sha_short }} \
- -e saya_today_web_mail_salt="${{ secrets.MAIL_SALT }}" \
- -e saya_today_web_mail_host="${{ secrets.MAIL_HOST }}" \
- -e saya_today_web_mail_address="${{ secrets.MAIL_ADDRESS }}" \
- -e saya_today_web_mail_username="${{ secrets.MAIL_USERNAME }}" \
- -e saya_today_web_mail_password="${{ secrets.MAIL_PASSWORD }}"