Skip to content

set notebook to test #57

set notebook to test

set notebook to test #57

name: Build & Push
on:
push:
branches:
- 'main'
paths:
- '.github/workflows/**'
- 'dscreator/**'
- 'tests/**'
- 'Dockerfile'
- 'poetry.lock'
- 'pyproject.toml'
env:
IMAGE_NAME: dscreator
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install Poetry
run: |
pip install poetry==1.4.2
- name: Install dependencies
run: poetry install --with dev
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
- name: "Run tests"
run: |
poetry run pytest
build:
needs:
- test
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- name: "Checkout"
uses: actions/checkout@v3
- name: Docker meta
id: meta
uses: docker/metadata-action@v4
with:
images: europe-west1-docker.pkg.dev/niva-cd/images/${{ env.IMAGE_NAME }}
tags: |
type=sha,prefix=
type=raw,value=latest
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- id: "auth"
name: "Authenticate to Google Cloud"
uses: "google-github-actions/auth@v1"
with:
token_format: access_token
workload_identity_provider: "${{ secrets.POOL }}"
service_account: "${{ secrets.SA }}"
- name: Login to Artifact Registry
uses: "docker/login-action@v2"
with:
registry: "europe-west1-docker.pkg.dev"
username: "oauth2accesstoken"
password: "${{ steps.auth.outputs.access_token }}"
- id: docker_push
name: Build and push
uses: docker/build-push-action@v4
with:
push: true
context: .
tags: ${{ steps.meta.outputs.tags }}