Skip to content

fix: upgrade to debian and python 12 #81

fix: upgrade to debian and python 12

fix: upgrade to debian and python 12 #81

Workflow file for this run

name: Push Events
on:
push:
branches:
- main
- dev
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
release-please:
name: Create release
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
outputs:
release_created: ${{ steps.release-please.outputs.release_created }}
steps:
- name: 🚀 Create Release
id: release-please
uses: agrc/release-composite-action@v1
with:
release-type: python
prerelease: ${{ github.ref_name == 'dev' }}
repo-token: ${{ secrets.GITHUB_TOKEN }}
github-app-id: ${{ secrets.UGRC_RELEASE_BOT_APP_ID }}
github-app-key: ${{ secrets.UGRC_RELEASE_BOT_APP_KEY }}
github-app-name: ${{ secrets.UGRC_RELEASE_BOT_NAME }}
github-app-email: ${{ secrets.UGRC_RELEASE_BOT_EMAIL }}
test-unit:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- name: ⬇️ Set up code
uses: actions/checkout@v4
with:
show-progress: false
- name: 🐍 Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.10"
cache: pip
cache-dependency-path: setup.py
- name: 🏗 Install conductor
run: pip install .[tests,cloud-run]
- name: Create folders
run: mkdir -p secrets/db
- name: 🤐 Create secret file
uses: jsdaniell/[email protected]
with:
name: "secrets/db/connections"
json: ${{ secrets.TESTING_DB_CONNECTIONS }}
- name: 🧪 Run pytest
run: pytest
- name: ⬆️ Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./cov.xml
deploy-dev:
runs-on: ubuntu-latest
needs: [test-unit, release-please]
if: github.ref == 'refs/heads/dev' && needs.release-please.outputs.release_created
environment:
name: dev
permissions:
id-token: write
steps:
- name: ⬇️ Set up code
uses: actions/checkout@v4
with:
show-progress: false
- name: 🚀 Deploy
uses: ./.github/actions/deploy
with:
identity_provider: ${{ secrets.IDENTITY_PROVIDER }}
service_account_email: ${{ secrets.SERVICE_ACCOUNT_EMAIL }}
project_id: ${{ secrets.PROJECT_ID }}
vpc: ${{ secrets.VPC }}
environment_variables: PORTER_DEVELOPMENT=1
deploy-prod:
runs-on: ubuntu-latest
needs: [test-unit, release-please]
if: github.ref == 'refs/heads/main' && needs.release-please.outputs.release_created
environment:
name: prod
permissions:
id-token: write
steps:
- name: ⬇️ Set up code
uses: actions/checkout@v4
with:
show-progress: false
- name: 🚀 Deploy
uses: ./.github/actions/deploy
with:
identity_provider: ${{ secrets.IDENTITY_PROVIDER }}
service_account_email: ${{ secrets.SERVICE_ACCOUNT_EMAIL }}
project_id: ${{ secrets.PROJECT_ID }}
vpc: ${{ secrets.VPC }}