Skip to content

Add functionality for volumetric coupling of material models #340

Add functionality for volumetric coupling of material models

Add functionality for volumetric coupling of material models #340

Workflow file for this run

name: Calculix 2.20 with preCICE adapter test build
on: [push, pull_request]
jobs:
build:
strategy:
matrix:
os: [ubuntu-20.04, ubuntu-22.04]
include:
- os: ubuntu-20.04
name: focal
flags: -fallow-argument-mismatch
- os: ubuntu-22.04
name: jammy
flags: -fallow-argument-mismatch
runs-on: ${{matrix.os}}
container: precice/precice:develop
continue-on-error: true
env: # Versioning is "calculix-preciceX_2.YY-Z[...]" with X the major preCICE version, YY the minor CCX version and Z the package version
PACKAGE_NAME: "calculix-precice3_2.20.1-1_amd64"
steps:
- name: Update system
run: |
apt-get -qq update
apt-get -qq install sudo
sudo apt update && sudo apt upgrade -y
- uses: actions/checkout@v2
with:
ref: ${{ github.ref }}
- name: install dependencies
run: sudo apt install libarpack2-dev libspooles-dev libyaml-cpp-dev -y
- name: Download CalculiX
run: wget http://www.dhondt.de/ccx_2.20.src.tar.bz2
- name: Unpack Calculix
run: tar -xjf ccx_2.20.src.tar.bz2
- name: make
run: make -j 4 CCX="./CalculiX/ccx_2.20/src" ADDITIONAL_FFLAGS="${{matrix.flags}}"
- name: Test run
run: ./bin/ccx_preCICE -h
- name: Download tools for packaging
run: sudo apt install lintian pandoc -y
- name: Create Debian Package
run: |
mkdir -p "packaging/calculix-precice3_2.20.1-1_amd64/usr/bin" &&
cp ./bin/ccx_preCICE ./packaging/calculix-precice3_2.20.1-1_amd64/usr/bin/ccx_preCICE &&
cd packaging && pwd && bash ./make_deb.sh ${{matrix.name}}
- name: Store Debian package artifact
uses: actions/upload-artifact@v2
with:
name: "${{env.PACKAGE_NAME}}_${{matrix.name}}.deb"
path: "packaging/${{env.PACKAGE_NAME}}_${{matrix.name}}.deb"
- name: Compute SHA256 checksum
run: sha256sum "packaging/${{env.PACKAGE_NAME}}_${{matrix.name}}.deb" > "packaging/${{env.PACKAGE_NAME}}_${{matrix.name}}.deb.sha256"
- name: Store SHA256 checksum as artifact
uses: actions/upload-artifact@v2
with:
name: "${{env.PACKAGE_NAME}}_${{matrix.name}}.deb.sha256"
path: "packaging/${{env.PACKAGE_NAME}}_${{matrix.name}}.deb.sha256"
- name: Inspect package with lintian
run: sudo apt install lintian -y && lintian ./packaging/${{env.PACKAGE_NAME}}_${{matrix.name}}.deb