change: build to include dist

This commit is contained in:
abdullahalam123
2025-11-17 14:04:07 +05:30
parent b09f476b26
commit c60d3508bb

View File

@@ -3,12 +3,52 @@ name: Build and Push Docker Images (Default + Simple Mode)
on: on:
push: push:
branches: branches:
- 'main' - "main"
tags: tags:
- 'v*' - "v*"
workflow_dispatch: workflow_dispatch:
jobs: jobs:
# New job to build dist and create release
build-and-release:
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
permissions:
contents: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install dependencies
run: npm ci
- name: Build distribution
run: npm run build
- name: Extract version
id: version
run: |
VERSION=${GITHUB_REF#refs/tags/v}
echo "version=${VERSION}" >> $GITHUB_OUTPUT
- name: Package distribution
run: npm run package
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
files: dist-${{ steps.version.outputs.version }}.zip
generate_release_notes: true
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
docker-build-and-push: docker-build-and-push:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
@@ -19,26 +59,33 @@ jobs:
mode: mode:
- name: default - name: default
simple_mode: false simple_mode: false
suffix: '' suffix: ""
- name: simple - name: simple
simple_mode: true simple_mode: true
suffix: '-simple' suffix: "-simple"
steps: steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
- name: Login to DockerHub - name: Login to DockerHub
uses: docker/login-action@v3 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKER_USERNAME }} username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }} password: ${{ secrets.DOCKER_TOKEN }}
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
uses: docker/login-action@v3 uses: docker/login-action@v3
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.repository_owner }} username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract version from tag - name: Extract version from tag
id: version id: version
run: | run: |