Skip to content

Merge pull request #1 from IGNF/gh-actions #1

Merge pull request #1 from IGNF/gh-actions

Merge pull request #1 from IGNF/gh-actions #1

Workflow file for this run

name: cicd_full
on:
# Run tests for pull-requests on master
pull_request:
branches:
- main
# Also run when the pull request merges (which generates a push)
# So that we can tag the docker image appropriately.
push:
branches:
- dev
env:
IMAGE_NAME: ${{ github.repository }}
REGISTRY: ghcr.io
TEST_TAG: ${{ github.repository }}:test
jobs:
deploy_docker:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout branch
uses: actions/checkout@v4
- name: Build the Docker image
id: build
uses: docker/build-push-action@v6
with:
load: true
tags: ${{ env.TEST_TAG }}
# run the test on the docker image
- name: Run tests in docker image
run: >
docker run
--ipc=host
${{ env.TEST_TAG }}
python -m pytest -s
--log-cli-level=DEBUG
--log-format="%(asctime)s %(levelname)s %(message)s"
--log-date-format="%Y-%m-%d %H:%M:%S"
-m "not functional_test"
test_local:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout branch
uses: actions/checkout@v4
# See https://github.com/marketplace/actions/setup-micromamba
- name: setup-micromamba
uses: mamba-org/setup-micromamba@v2
with:
environment-file: environment.yml
environment-name: las_digital_models # activate the environment
cache-environment: true
cache-downloads: true
generate-run-shell: true
- name: Run tests with pytest
shell: micromamba-shell {0}
run: >
python -m pytest -s
--log-cli-level=DEBUG
--log-format="%(asctime)s %(levelname)s %(message)s"
--log-date-format="%Y-%m-%d %H:%M:%S"