summaryrefslogtreecommitdiff
path: root/.github/workflows/build-and-deploy-prod.yml
diff options
from:
to:
context:
space:
mode:
authorGravatar Saya Andy <145215889+SayaAndy@users.noreply.github.com> 2026-05-04 15:55:49 +0700
committerGravatar GitHub <noreply@github.com> 2026-05-04 15:55:49 +0700
commit6c91e77c8712a234090c940111ea82ed9e0cd034 (patch)
treecb1411d0898ea7a5b5970c88831eaccd30478bc6 /.github/workflows/build-and-deploy-prod.yml
parentdbd3c0f30aeb9eedae6c6ccbcafa38872722da65 (diff)
parent38cb561f5f9048d26ac7f38176c928fd4e7f32df (diff)
downloadweb-0.15.6.tar.gz
web-0.15.6.zip
v0.15.6 (#36)v0.15.6
- [feat: integrate general use favicon.ico for search engines](https://github.com/SayaAndy/saya-today-web/commit/e3601faf8e98ac39be1aa746c9e20b837d09a037) - [ci: use ansible dev tools to speed up deploy step](https://github.com/SayaAndy/saya-today-web/commit/e3601faf8e98ac39be1aa746c9e20b837d09a037) - [ci: enable gha buildx cache](https://github.com/SayaAndy/saya-today-web/pull/36/commits/38cb561f5f9048d26ac7f38176c928fd4e7f32df) - [ci: use sha short from single source](https://github.com/SayaAndy/saya-today-web/pull/36/commits/38cb561f5f9048d26ac7f38176c928fd4e7f32df) - [ci: no strict host key checking in ci](https://github.com/SayaAndy/saya-today-web/pull/36/commits/7b1aca39816f4b82ddf9c4ced83275d56e1b8780)
Diffstat (limited to '.github/workflows/build-and-deploy-prod.yml')
-rw-r--r--.github/workflows/build-and-deploy-prod.yml31
1 files changed, 28 insertions, 3 deletions
diff --git a/.github/workflows/build-and-deploy-prod.yml b/.github/workflows/build-and-deploy-prod.yml
index 97afdf7..d33f7af 100644
--- a/.github/workflows/build-and-deploy-prod.yml
+++ b/.github/workflows/build-and-deploy-prod.yml
@@ -40,6 +40,8 @@ jobs:
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
@@ -50,10 +52,16 @@ jobs:
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
@@ -67,7 +75,7 @@ jobs:
- name: Test SSH connection
run: |
- ssh -o ConnectTimeout=10 -i ~/.ssh/id_ed25519 svc_github@uz.saya.casa "echo 'SSH connection successful'"
+ 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: Install Ansible
shell: bash
@@ -77,7 +85,24 @@ jobs:
- name: Run Ansible playbook
env:
- ANSIBLE_HOST_KEY_CHECKING: False
+ ANSIBLE_HOST_KEY_CHECKING: "False"
working-directory: ./deploy
run: |
- ansible-playbook -i inventory.yml -l prod playbook.yml --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 }}"
+ 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 }}"