fix: updated build and push CI/CD configuration
This commit is contained in:
@@ -30,34 +30,42 @@ jobs:
|
|||||||
name: Build & Push to Registry
|
name: Build & Push to Registry
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: test
|
needs: test
|
||||||
if: startsWith(github.ref, 'refs/tags/')
|
|
||||||
steps:
|
|
||||||
- name: Debug ref
|
|
||||||
run: |
|
|
||||||
echo "github.ref = ${{ github.ref }}"
|
|
||||||
echo "GITHUB_REF = $GITHUB_REF"
|
|
||||||
echo "This should only run on tags!"
|
|
||||||
|
|
||||||
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Load config from Makefile
|
- name: Load config from Makefile
|
||||||
id: config
|
id: config
|
||||||
run: |
|
run: |
|
||||||
eval "$(make _ci-image-name)"
|
eval "$(make -s _ci-image-name)"
|
||||||
echo "image_name=${IMAGE_NAME}" >> $GITHUB_OUTPUT
|
echo "image_name=${IMAGE_NAME}" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Extract version from tag
|
- name: 🏷️ Docker Metadata (Tags & Labels)
|
||||||
id: version
|
id: meta
|
||||||
run: echo "version=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
|
uses: docker/metadata-action@v5
|
||||||
|
with:
|
||||||
|
images: gitea.iswearihadsomethingforthis.net/francwa/${{ steps.config.outputs.image_name }}
|
||||||
|
tags: |
|
||||||
|
# Case 1 - Git Tag (v1.2.3)
|
||||||
|
type=semver,pattern={{version}}
|
||||||
|
# Case 2 - Push on main
|
||||||
|
type=raw,value=latest,enable={{is_default_branch}}
|
||||||
|
# Both case - Commit sha
|
||||||
|
type=sha
|
||||||
|
|
||||||
- name: Build production image
|
- name: Login to Gitea Registry
|
||||||
run: make build
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: gitea.iswearihadsomethingforthis.net
|
||||||
|
username: ${{ gitea.actor }}
|
||||||
|
password: ${{ secrets.G1T34_TOKEN }}
|
||||||
|
|
||||||
- name: Tag and push to registry
|
- name: Build and push
|
||||||
run: |
|
uses: docker/build-push-action@v5
|
||||||
docker tag ${{ steps.config.outputs.image_name }}:latest ${{ env.REGISTRY_URL }}/${{ env.REGISTRY_USER }}/${{ steps.config.outputs.image_name }}:${{ steps.version.outputs.version }}
|
with:
|
||||||
docker tag ${{ steps.config.outputs.image_name }}:latest ${{ env.REGISTRY_URL }}/${{ env.REGISTRY_USER }}/${{ steps.config.outputs.image_name }}:latest
|
context: .
|
||||||
echo "${{ secrets.G1T34_TOKEN }}" | docker login ${{ env.REGISTRY_URL }} -u ${{ env.REGISTRY_USER }} --password-stdin
|
file: ./brain/Dockerfile
|
||||||
docker push ${{ env.REGISTRY_URL }}/${{ env.REGISTRY_USER }}/${{ steps.config.outputs.image_name }}:${{ steps.version.outputs.version }}
|
push: true
|
||||||
docker push ${{ env.REGISTRY_URL }}/${{ env.REGISTRY_USER }}/${{ steps.config.outputs.image_name }}:latest
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
|||||||
Reference in New Issue
Block a user