Skip to content

source build in containers #40

source build in containers

source build in containers #40

name: source build in containers
on:
workflow_dispatch:
schedule:
- cron: '44 4 * * 0'
push:
branches: [ main, develop, 'release*' ]
pull_request:
branches: [ main ]
jobs:
run-build-stack:
strategy:
fail-fast: false
matrix:
include:
- { os: Debian11, container: "debian:11", CC: gcc-10, CXX: g++-10, python: '3.10' }
- { os: Debian11, container: "debian:11", CC: gcc-10, CXX: g++-10, python: '3.9' }
# - { os: ubuntu-22.04, CC: gcc, CXX: g++, python: '3.9' }
# - { os: ubuntu-22.04, CC: gcc, CXX: g++, python: '3.10' }
# - { os: ubuntu-22.04, CC: clang, CXX: clang++, python: '3.11' }
- { os: Debian12, container: "debian:12", CC: gcc-12, CXX: g++-12, python: '3.12' }
- { os: Debian12, container: "debian:12", CC: gcc-12, CXX: g++-12, python: '3.11' }
- { os: Debian12, container: "debian:12", CC: gcc-12, CXX: g++-12, python: '3.10' }
- { os: Arch, container: "archlinux:latest", CC: gcc, CXX: g++, python: '3' }
# - { os: macos-11, CC: clang, CXX: clang++, python: "3.10" }
# - { os: macos-12, CC: clang, CXX: clang++, python: "3.11" }
# - { os: macos-13, CC: clang, CXX: clang++, python: "3.11" }
runs-on: ubuntu-22.04
container: ${{ matrix.container }}
env:
CC: ${{ matrix.CC }}
CXX: ${{ matrix.CXX }}
steps:
- name: bootstrap debians
run: |
echo ${{ matrix.os }}
echo APT::Get::Assume-Yes \"true\"\; > /etc/apt/apt.conf.d/00AssumeYes
apt-get update
apt-get dist-upgrade
apt-get install git build-essential sudo
if: ${{ matrix.os == 'Debian11' || matrix.os == 'Debian12' }}
- name: bootstrap arch
run: |
pacman -Syu --noconfirm gcc python>${{ matrix.python }} cmake git sudo make python-numpy python-pip cython
if: ${{ matrix.os == 'Arch' }}
- name: checkout_main_repo
uses: actions/checkout@v3
with:
repository: 'openmsr/openmc_install_scripts'
ref: '${{github.sha}}'
path: openmc_install_scripts
submodules: true
- name: moab-install
run: |
cd openmc_install_scripts/${{ matrix.os }}
./moab-install.sh
- name: double_down-install
run: |
cd openmc_install_scripts/${{ matrix.os }}
./double_down-install.sh
- name: dagmc-install
run: |
cd openmc_install_scripts/${{ matrix.os }}
./dagmc-install.sh
- name: openmc-install
run: |
cd openmc_install_scripts/${{ matrix.os }}
./openmc-install.sh
- name: check if openmc is runnable
run: |
/usr/local/lib/bin/openmc -v