Skip to content

1.0.13

1.0.13 #19

Workflow file for this run

name: wipac ci/cd
on:
push:
branches:
- '**'
tags-ignore:
- '**'
env:
py_version: '3.10'
jobs:
flake8:
needs: []
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: ${{ env.py_version }}
- uses: WIPACrepo/[email protected]
py-setup:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- uses: WIPACrepo/[email protected]
py-versions:
needs: [py-setup]
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.versions.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- id: versions
uses: WIPACrepo/[email protected]
pip-install:
needs: [py-versions]
runs-on: ubuntu-latest
strategy:
max-parallel: 4
fail-fast: false
matrix:
version: ${{ fromJSON(needs.py-versions.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.py3_versions }}
- run: |
pip install --upgrade pip wheel setuptools
pip install .
#~ py-tests:
#~ needs: [py-versions]
#~ runs-on: ubuntu-latest
#~ services:
#~ keycloak:
#~ image: quay.io/keycloak/keycloak:10.0.2
#~ env:
#~ KEYCLOAK_USER: admin
#~ KEYCLOAK_PASSWORD: admin
#~ ports:
#~ - 8080:8080
#~ mongo:
#~ image: mongo:4.0
#~ ports:
#~ - 27017:27017
#~ env:
#~ KEYCLOAK_URL: http://localhost:8080
#~ USERNAME: admin
#~ PASSWORD: admin
#~ steps:
#~ - uses: actions/checkout@v3
#~ - uses: actions/setup-python@v3
#~ with:
#~ python-version: ${{ fromJSON(needs.py-versions.outputs.matrix).py3_versions[0] }}
#~ - name: Setup Dependencies
#~ run: |
#~ pip install --upgrade pip wheel setuptools
#~ pip install .[tests]
#~ - name: Run Tests
#~ run: |
#~ python -m pytest tests --tb=short --log-level=INFO
#~ web-tests:
#~ needs: [py-versions]
#~ runs-on: ubuntu-latest
#~ steps:
#~ - uses: actions/checkout@v3
#~ - uses: actions/setup-python@v3
#~ with:
#~ python-version: ${{ fromJSON(needs.py-versions.outputs.matrix).py3_versions[0] }}
#~ - name: Setup Dependencies
#~ run: |
#~ pip install --upgrade pip wheel setuptools
#~ pip install .
#~ - name: Run Tests
#~ run: |
#~ python -m user_mgmt.test_server &
#~ docker run --network=host -v $PWD:/e2e -w /e2e cypress/included:9.5.4
release:
if: ${{ github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main' }}
needs: [pip-install]
runs-on: ubuntu-latest
concurrency: release
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- name: Python Semantic Release
uses: relekang/[email protected]
with:
github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
# DOES NOT GO TO PYPI
#repository_username: __token__
#repository_password: ${{ secrets.PYPI_TOKEN }}
docker:
name: "Docker Image"
needs: [pip-install]
runs-on: ubuntu-latest
steps:
- name: Checkout Project
uses: actions/checkout@v4
- name: Docker meta
id: docker_meta
uses: docker/metadata-action@v5
with:
images: |
ghcr.io/WIPACRepo/people-directory
tags: |
type=ref,event=branch
type=semver,pattern={{major}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}.{{minor}}.{{patch}}
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
if: ${{ github.event_name != 'pull_request' }}
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Push Docker Image
uses: docker/build-push-action@v5
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }}