This commit is contained in:
parent
33e8bf5ab7
commit
0dcd76c302
1 changed files with 11 additions and 27 deletions
|
|
@ -6,18 +6,13 @@ on:
|
||||||
- "placement-dev[0-9]+.[0-9]+.[0-9]+"
|
- "placement-dev[0-9]+.[0-9]+.[0-9]+"
|
||||||
- "placement-dev[0-9]+.[0-9]+.[0-9]+*"
|
- "placement-dev[0-9]+.[0-9]+.[0-9]+*"
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
|
||||||
version:
|
|
||||||
description: "Version to deploy"
|
|
||||||
type: string
|
|
||||||
required: false
|
|
||||||
default: "latest"
|
|
||||||
|
|
||||||
env:
|
env:
|
||||||
REGISTRY: ${{ vars.CONTAINER_REGISTRY }}
|
REGISTRY: ${{ vars.CONTAINER_REGISTRY }}
|
||||||
REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }}
|
REGISTRY_USERNAME: ${{ vars.CONTAINER_REGISTRY_USERNAME }}
|
||||||
REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
|
REGISTRY_PASSWORD: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}
|
||||||
CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}
|
CONTAINER_IMAGE_NAME: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_OWNER }}
|
||||||
|
IMAGE_VERSION: latest
|
||||||
SERVICE_NAME: hrms-api-placement
|
SERVICE_NAME: hrms-api-placement
|
||||||
DISCORD_WEBHOOK: ${{ vars.DISCORD_WEBHOOK }}
|
DISCORD_WEBHOOK: ${{ vars.DISCORD_WEBHOOK }}
|
||||||
|
|
||||||
|
|
@ -28,26 +23,15 @@ jobs:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Extract version from tag
|
- name: Tag Version
|
||||||
id: version
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
if [ "${{ gitea.event_name }}" == "push" ] && [ -n "${{ gitea.ref_name }}" ]; then
|
if [[ "${{ github.event_name }}" == "push" ]]; then
|
||||||
# Extract version from tag (remove 'placement-dev' prefix)
|
VERSION=$(echo "${{ github.ref_name }}" | sed 's/placement-dev//g')
|
||||||
VERSION="${{ gitea.ref_name }}"
|
echo "IMAGE_VERSION=${VERSION}" >> $GITHUB_ENV
|
||||||
VERSION="${VERSION#placement-dev}"
|
|
||||||
echo "IMAGE_VERSION=$VERSION" >> $GITEA_OUTPUT
|
|
||||||
echo "VERSION=$VERSION" >> $GITEA_OUTPUT
|
|
||||||
else
|
else
|
||||||
# Use workflow dispatch input or default to 'latest'
|
echo "IMAGE_VERSION=${{ env.IMAGE_VERSION }}-${{ github.run_number }}" >> $GITHUB_ENV
|
||||||
VERSION="${{ inputs.version || 'latest' }}"
|
|
||||||
echo "IMAGE_VERSION=$VERSION" >> $GITEA_OUTPUT
|
|
||||||
echo "VERSION=$VERSION" >> $GITEA_OUTPUT
|
|
||||||
fi
|
fi
|
||||||
echo "Using version: $VERSION"
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
|
|
||||||
- name: Login in to registry
|
- name: Login in to registry
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
|
|
@ -61,11 +45,11 @@ jobs:
|
||||||
platforms: linux/amd64
|
platforms: linux/amd64
|
||||||
context: .
|
context: .
|
||||||
file: ./BMA.EHR.Placement.Service/Dockerfile
|
file: ./BMA.EHR.Placement.Service/Dockerfile
|
||||||
tags: ${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:${{ steps.version.outputs.VERSION }}
|
tags: ${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:latest,${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}:${{ env.IMAGE_VERSION }}
|
||||||
push: true
|
push: true
|
||||||
|
|
||||||
- name: Remote Deploy
|
- name: Remote Deploy
|
||||||
uses: appleboy/ssh-action@v1.0.3
|
uses: appleboy/ssh-action@v1.2.1
|
||||||
with:
|
with:
|
||||||
host: ${{ vars.SSH_DEPLOY_HOST }}
|
host: ${{ vars.SSH_DEPLOY_HOST }}
|
||||||
port: ${{ vars.SSH_DEPLOY_PORT }}
|
port: ${{ vars.SSH_DEPLOY_PORT }}
|
||||||
|
|
@ -73,7 +57,7 @@ jobs:
|
||||||
password: ${{ secrets.SSH_DEPLOY_PASSWORD }}
|
password: ${{ secrets.SSH_DEPLOY_PASSWORD }}
|
||||||
script: |
|
script: |
|
||||||
cd ~/repo
|
cd ~/repo
|
||||||
./replace-env.sh API_PLACEMENT "${{ steps.version.outputs.VERSION }}"
|
./replace-env.sh API_PLACEMENT "${{ env.IMAGE_VERSION }}"
|
||||||
./deploy.sh ${{ env.SERVICE_NAME }}
|
./deploy.sh ${{ env.SERVICE_NAME }}
|
||||||
|
|
||||||
- name: Discord Notification
|
- name: Discord Notification
|
||||||
|
|
@ -87,7 +71,7 @@ jobs:
|
||||||
-d "{
|
-d "{
|
||||||
\"embeds\": [{
|
\"embeds\": [{
|
||||||
\"title\": \"$STATUS\",
|
\"title\": \"$STATUS\",
|
||||||
\"description\": \"**Build & Deploy**\\n- Image: \`${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}\`\\n- Version: \`${{ steps.version.outputs.VERSION }}\`\\n- By: \`${{ gitea.actor }}\`\",
|
\"description\": \"**Build & Deploy**\\n- Image: \`${{ env.CONTAINER_IMAGE_NAME }}/${{ env.SERVICE_NAME }}\`\\n- Version: \`${{ env.IMAGE_VERSION }}\`\\n- By: \`${{ gitea.actor }}\`\",
|
||||||
\"color\": $COLOR,
|
\"color\": $COLOR,
|
||||||
\"footer\": {
|
\"footer\": {
|
||||||
\"text\": \"Release Notification\",
|
\"text\": \"Release Notification\",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue