Update .forgejo/workflows/build-report_bk.yml

This commit is contained in:
Warunee Tamkoo 2025-09-16 15:44:13 +07:00
parent d0c5bafdba
commit 87e6f88cf6
2 changed files with 84 additions and 84 deletions

View file

@ -1,84 +0,0 @@
name: Build
on:
push:
tags:
- "report-dev[0-9]+.[0-9]+.[0-9]+"
- "report-dev[0-9]+.[0-9]+.[0-9]+*"
workflow_dispatch:
env:
REGISTRY: ${{ vars.CONTAINER_REGISTRY }}
REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }}
REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}
SERVICE_NAME: hrms-api-report
IMAGE_VERSION: build
DISCORD_WEBHOOK: ${{ vars.DISCORD_WEBHOOK }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
config-inline: |
[registry."${{ env.REGISTRY }}"]
ca=["/etc/ssl/certs/ca-certificates.crt"]
- name: Tag Version
run: |
if [[ "${{ github.event_name }}" == "push" ]]; then
echo "IMAGE_VERSION=${{ github.ref_name }}" | sed 's/report-dev//g' >> $GITHUB_ENV
else
echo "IMAGE_VERSION=${{ env.IMAGE_VERSION }}-${{ github.run_number }}" >> $GITHUB_ENV
fi
- name: Login in to registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ env.REGISTRY_USERNAME }}
password: ${{ env.REGISTRY_PASSWORD }}
- name: Build and push docker image
uses: docker/build-push-action@v3
with:
platforms: linux/amd64
context: .
file: ./BMA.EHR.Report.Service/Dockerfile
tags: ${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:${{ env.IMAGE_VERSION }}
push: true
- name: Remote Deploy
uses: appleboy/ssh-action@v1.2.1
with:
host: ${{ vars.SSH_DEPLOY_HOST }}
port: ${{ vars.SSH_DEPLOY_PORT }}
username: ${{ secrets.SSH_DEPLOY_USER }}
password: ${{ secrets.SSH_DEPLOY_PASSWORD }}
script: |
cd ~/repo
./replace-env.sh API_REPORT "${{ env.IMAGE_VERSION }}"
./deploy.sh ${{ env.SERVICE_NAME }}
- name: Discord Notification
if: always()
run: |
STATUS="${{ job.status == 'success' && '✅ Success' || '❌ Failed' }}"
COLOR="${{ job.status == 'success' && '3066993' || '15158332' }}"
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ)
curl -H "Content-Type: application/json" \
-X POST \
-d "{
\"embeds\": [{
\"title\": \"$STATUS\",
\"description\": \"**Build & Deploy**\\n- Image: \`${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}\`\\n- Version: \`${{ env.IMAGE_VERSION }}\`\\n- By: \`${{ github.actor }}\`\",
\"color\": $COLOR,
\"footer\": {
\"text\": \"Release Notification\",
\"icon_url\": \"https://example.com/success-icon.png\"
},
\"timestamp\": \"$TIMESTAMP\"
}]
}" \
${{ env.DISCORD_WEBHOOK }}

View file

@ -0,0 +1,84 @@
# name: Build
# on:
# push:
# tags:
# - "report-dev[0-9]+.[0-9]+.[0-9]+"
# - "report-dev[0-9]+.[0-9]+.[0-9]+*"
# workflow_dispatch:
# env:
# REGISTRY: ${{ vars.CONTAINER_REGISTRY }}
# REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }}
# REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
# CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}
# SERVICE_NAME: hrms-api-report
# IMAGE_VERSION: build
# DISCORD_WEBHOOK: ${{ vars.DISCORD_WEBHOOK }}
# jobs:
# build:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout repository
# uses: actions/checkout@v4
# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v2
# with:
# config-inline: |
# [registry."${{ env.REGISTRY }}"]
# ca=["/etc/ssl/certs/ca-certificates.crt"]
# - name: Tag Version
# run: |
# if [[ "${{ github.event_name }}" == "push" ]]; then
# echo "IMAGE_VERSION=${{ github.ref_name }}" | sed 's/report-dev//g' >> $GITHUB_ENV
# else
# echo "IMAGE_VERSION=${{ env.IMAGE_VERSION }}-${{ github.run_number }}" >> $GITHUB_ENV
# fi
# - name: Login in to registry
# uses: docker/login-action@v2
# with:
# registry: ${{ env.REGISTRY }}
# username: ${{ env.REGISTRY_USERNAME }}
# password: ${{ env.REGISTRY_PASSWORD }}
# - name: Build and push docker image
# uses: docker/build-push-action@v3
# with:
# platforms: linux/amd64
# context: .
# file: ./BMA.EHR.Report.Service/Dockerfile
# tags: ${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:${{ env.IMAGE_VERSION }}
# push: true
# - name: Remote Deploy
# uses: appleboy/ssh-action@v1.2.1
# with:
# host: ${{ vars.SSH_DEPLOY_HOST }}
# port: ${{ vars.SSH_DEPLOY_PORT }}
# username: ${{ secrets.SSH_DEPLOY_USER }}
# password: ${{ secrets.SSH_DEPLOY_PASSWORD }}
# script: |
# cd ~/repo
# ./replace-env.sh API_REPORT "${{ env.IMAGE_VERSION }}"
# ./deploy.sh ${{ env.SERVICE_NAME }}
# - name: Discord Notification
# if: always()
# run: |
# STATUS="${{ job.status == 'success' && '✅ Success' || '❌ Failed' }}"
# COLOR="${{ job.status == 'success' && '3066993' || '15158332' }}"
# TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ)
# curl -H "Content-Type: application/json" \
# -X POST \
# -d "{
# \"embeds\": [{
# \"title\": \"$STATUS\",
# \"description\": \"**Build & Deploy**\\n- Image: \`${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}\`\\n- Version: \`${{ env.IMAGE_VERSION }}\`\\n- By: \`${{ github.actor }}\`\",
# \"color\": $COLOR,
# \"footer\": {
# \"text\": \"Release Notification\",
# \"icon_url\": \"https://example.com/success-icon.png\"
# },
# \"timestamp\": \"$TIMESTAMP\"
# }]
# }" \
# ${{ env.DISCORD_WEBHOOK }}