Skip to content

Build and Push Docker Image to Quay #2

Build and Push Docker Image to Quay

Build and Push Docker Image to Quay #2

Workflow file for this run

name: Build and Push Docker Image to Quay
#on:
# push:
# branches:
# - main
on:
workflow_dispatch: # This allows manual trigger of the workflow
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
cache-dependency-path: 'requirements-dev.txt'
- name: Install dependencies
run: |
python -m pip install -r requirements-dev.txt
- name: Make stylesheet
run: |
python manage.py compilescss
- name: Run Pytest
run: |
pytest
- name: Get Version from Git Tag
id: get_version
run: |
VERSION=$(git describe --tags --abbrev=0 2>/dev/null || echo "0.1.0")
echo "VERSION=${VERSION}" >> $GITHUB_ENV
shell: bash
- name: Log in to Quay.io
run: echo "${{ secrets.QUAY_PASSWORD }}" | docker login quay.io -u "${{ secrets.QUAY_USERNAME }}" --password-stdin
- name: Build Docker image
run: docker build -t quay.io/microbiome-informatics/mett-dataportal:${{ env.VERSION }} -f k8s/Dockerfile .
- name: Push Docker image to Quay.io
run: docker push quay.io/microbiome-informatics/mett-dataportal:${{ env.VERSION }}
- name: Tag the Docker Image as Latest
run: |
docker tag quay.io/microbiome-informatics/mett-dataportal:${{ env.VERSION }} quay.io/microbiome-informatics/mett-dataportal:latest
docker push quay.io/microbiome-informatics/mett-dataportal:latest