Bump actions/upload-artifact from 4.3.2 to 4.3.3 #488
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: VERDICT Main Workflow | |
# Runs whenever the main branch is changed (except for tags) | |
on: | |
push: | |
branches: [ master ] | |
tags-ignore: [ '*' ] | |
workflow_dispatch: | |
# Runs main workflow and uploads build artifacts: | |
# - Builds & uploads soteria_pp native binaries | |
# - Builds VERDICT source and runs unit tests | |
# - Pushes verdict-dev image to Docker Hub | |
# - Updates verdict-dev in VERDICT-update-sites | |
jobs: | |
native-binaries: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
ocaml-compiler: [ 4.09.1 ] | |
os: [ macos-12, ubuntu-22.04 ] | |
steps: | |
- name: Check out VERDICT source | |
uses: actions/[email protected] | |
- name: Set up OCaml | |
uses: ocaml/[email protected] | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-compiler }} | |
- name: Build soteria_pp | |
run: | | |
cd tools/verdict-back-ends/soteria_pp | |
opam install --yes . --deps-only | |
opam exec make | |
- name: Upload soteria_pp | |
uses: actions/[email protected] | |
with: | |
name: ${{ runner.os }}-binaries | |
path: tools/verdict-back-ends/soteria_pp/bin/soteria_pp | |
main: | |
needs: native-binaries | |
container: | |
image: maven:${{ matrix.maven-version }} | |
volumes: | |
- /usr/bin/docker:/usr/bin/docker | |
- /var/run/docker.sock:/var/run/docker.sock | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
distribution: [ temurin ] | |
java-version: [ 17 ] | |
maven-version: [ 3.9.5 ] | |
os: [ ubuntu-22.04 ] | |
steps: | |
- name: Check out VERDICT source | |
uses: actions/[email protected] | |
- name: Set up Java and Maven | |
uses: actions/[email protected] | |
with: | |
cache: maven | |
distribution: ${{ matrix.distribution }} | |
java-version: ${{ matrix.java-version }} | |
- name: Build VERDICT source | |
run: | | |
mvn -B install -f tools/verdict-back-ends/verdict-bundle/z3-native-libs/pom.xml | |
mvn -B package -f tools/pom.xml -Dtycho.localArtifacts=ignore | |
- name: Download soteria_pp | |
uses: actions/[email protected] | |
with: | |
name: ${{ runner.os }}-binaries | |
path: tools/verdict-back-ends/soteria_pp/bin | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- name: Set up Docker Buildx | |
uses: docker/[email protected] | |
- name: Build and push verdict-dev image | |
uses: docker/[email protected] | |
with: | |
context: tools/verdict-back-ends | |
file: tools/verdict-back-ends/Dockerfile | |
push: true | |
cache-from: type=registry,ref=gehighassurance/verdict-dev:latest | |
cache-to: type=inline | |
tags: gehighassurance/verdict-dev:latest | |
- name: Check out VERDICT-update-sites | |
uses: actions/[email protected] | |
with: | |
repository: ge-high-assurance/VERDICT-update-sites | |
token: ${{ secrets.CI_PAT }} | |
path: VERDICT-update-sites | |
- name: Update verdict-dev in VERDICT-update-sites | |
run: | | |
cd VERDICT-update-sites | |
rm -rf verdict-dev | |
mv ../tools/verdict/com.ge.research.osate.verdict.updatesite/target/repository verdict-dev | |
git config user.name github-actions | |
git config user.email [email protected] | |
git add . | |
git commit -m "Update verdict-dev in VERDICT-update-sites" | |
git push |