Skip to content

[TAG]v3-tagged

[TAG]v3-tagged #13

Workflow file for this run

name: devops testing
on:
push:
branches:
- main
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: npm install
- name: Run tests
run: npm test
docker:
runs-on: ubuntu-latest
needs: test
steps:
- name: Set tag
run: |
COMMIT_MSG="${{ github.event.head_commit.message }}"
echo "Commit message: $COMMIT_MSG"
if [[ "$COMMIT_MSG" =~ ^\[TAG\] ]]; then
TAG=$(echo "$COMMIT_MSG" | sed 's/^\[TAG\] *//')
echo "TAG=$TAG" >> $GITHUB_ENV
else
echo "TAG=latest" >> $GITHUB_ENV
fi
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USER }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v3
with:
push: true
tags: ${{ secrets.DOCKERHUB_USER }}/expertlab:${{ env.TAG }}