Build Test #256
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Test | |
# Builds and tests paynt and deploys images to Dockerhub | |
on: | |
push: | |
branches: | |
- master | |
- mdp | |
schedule: | |
# run weekly | |
- cron: '0 10 * * 3' | |
# needed to trigger the workflow manually | |
workflow_dispatch: | |
pull_request: | |
env: | |
GIT_URL: "${{ github.server_url }}/${{ github.repository }}.git" | |
BRANCH: "${{ github.ref }}" | |
# GitHub runners currently have two cores | |
NR_JOBS: "2" | |
jobs: | |
deploy: | |
name: Deploy on latest (${{ matrix.buildType.name }}) | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
buildType: | |
- {name: "Release", imageName : "randriu/paynt", dockerTag: "latest", setupArgs: ""} | |
fail-fast: false | |
if: github.ref == 'refs/heads/master' | |
steps: | |
- name: Git clone | |
uses: actions/checkout@v4 | |
- name: Build paynt image from Dockerfile | |
run: docker build -t ${{ matrix.buildType.imageName }}:${{ matrix.buildType.dockerTag }} . --build-arg setup_args=${{ matrix.buildType.setupArgs }} --build-arg setup_args_pycarl=${{ matrix.buildType.setupArgs }} --build-arg no_threads=${NR_JOBS} | |
- name: Login into docker | |
# Only login if using master on original repo (and not for pull requests or forks) | |
if: github.repository_owner == 'randriu' | |
run: echo '${{ secrets.STORMPY_CI_DOCKER_PASSWORD }}' | docker login -u randriu --password-stdin | |
- name: Deploy paynt image | |
# Only deploy if using master on original repo (and not for pull requests or forks) | |
if: github.repository_owner == 'randriu' | |
run: docker push ${{ matrix.buildType.imageName }}:${{ matrix.buildType.dockerTag }} | |
deploy-mdp: | |
name: Deploy on branch (mdp) (${{ matrix.buildType.name }}) | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
buildType: | |
- {name: "Release", imageName : "randriu/paynt", dockerTag: "mdp", baseImage : "randriu/stormpy-alex", setupArgs: "--disable-smg"} | |
fail-fast: false | |
if: github.ref == 'refs/heads/mdp' | |
steps: | |
- name: Git clone | |
uses: actions/checkout@v4 | |
- name: Build paynt image from Dockerfile | |
run: docker build -t ${{ matrix.buildType.imageName }}:${{matrix.buildType.dockerTag}} . --build-arg base_image=${{matrix.buildType.baseImage}} --build-arg setup_args=${{ matrix.buildType.setupArgs }} --build-arg no_threads=${NR_JOBS} | |
- name: Login into docker | |
# Only login if using mdp on original repo (and not for pull requests or forks) | |
if: github.repository_owner == 'randriu' | |
run: echo '${{ secrets.STORMPY_CI_DOCKER_PASSWORD }}' | docker login -u randriu --password-stdin | |
- name: Deploy paynt image | |
# Only deploy if using mdp on original repo (and not for pull requests or forks) | |
if: github.repository_owner == 'randriu' | |
run: docker push ${{ matrix.buildType.imageName }}:${{ matrix.buildType.dockerTag }} |