Schedul full build workflow at 00 Sunday #616
Workflow file for this run
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: Oracle 8 Build | |
on: | |
merge_group: | |
push: | |
branches: | |
- develop | |
- dependabot/* | |
pull_request: | |
release: | |
types: [ created ] | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
jobs: | |
versions: | |
runs-on: ubuntu-latest | |
outputs: | |
antares-version: ${{steps.antares-version.outputs.result}} | |
antares-xpansion-version: ${{steps.antares-xpansion-version.outputs.result}} | |
antares-deps-version: ${{steps.antares-deps-version.outputs.result}} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Read antares-solver version | |
id: antares-version | |
uses: ./.github/actions/read-json-value | |
with: | |
path: 'antares-version.json' | |
key: 'antares_version' | |
- name: Read antares-xpansion version | |
id: antares-xpansion-version | |
uses: ./.github/actions/read-json-value | |
with: | |
path: 'antares-version.json' | |
key: 'antares_xpansion_version' | |
- name: Read antares-deps version | |
id: antares-deps-version | |
uses: ./.github/actions/read-json-value | |
with: | |
path: 'antares-version.json' | |
key: 'antares_deps_version' | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
container: 'oraclelinux:8' | |
strategy: | |
matrix: | |
xprs: [ | |
# { value: XPRESS-ON, ref: 8.13a }, | |
{ value: XPRESS-ON, ref: 9.2.5 }, | |
# { value: XPRESS-OFF } | |
] | |
needs: [ versions ] | |
env: | |
XPRESSDIR: ${{ github.workspace }}/xpress | |
XPRESS: ${{ github.workspace }}/xpress/bin | |
XPRS_LIB_Path: ${{ github.workspace }}/xpress/lib | |
XPRESSDIR_CONTAINER: ${GITHUB_WORKSPACE}/xpress | |
XPRESS_CONTAINER: ${GITHUB_WORKSPACE}/xpress/bin | |
XPRS_LIB_Path_CONTAINER: ${GITHUB_WORKSPACE}/xpress/lib | |
steps: | |
- name: Install System | |
run: | | |
dnf install -y epel-release git wget rpm-build redhat-lsb-core openmpi-devel | |
dnf install -y unzip libuuid-devel gcc-toolset-10-toolchain python3-devel zlib-devel | |
#make gcc &co available system wide and "action wide" | |
source /opt/rh/gcc-toolset-10/enable | |
echo $PATH >> $GITHUB_PATH | |
- run: | | |
dnf module install -y nodejs:20/common | |
- uses: lukka/get-cmake@latest | |
with: | |
useLocalCache: false | |
useCloudCache: true | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Checkout xpressmp linux | |
uses: actions/checkout@v4 | |
with: | |
token: ${{ secrets.AS_TOKEN }} | |
repository: rte-france/xpress-mp | |
path: ${{ env.XPRESSDIR }} | |
github-server-url: https://github.com | |
ref: ${{matrix.xprs.ref}} | |
if: matrix.xprs.value == 'XPRESS-ON' | |
- name: Set up Python | |
run: | | |
dnf update -y | |
dnf install -y python3 python3-pip | |
pip3 install wheel #Too late to install in requirements.txt | |
pip3 install -r requirements-tests.txt | |
- name: Download pre-compiled librairies | |
uses: ./.github/workflows/download-extract-precompiled-libraries-tgz | |
with: | |
antares-deps-version: ${{needs.versions.outputs.antares-deps-version}} | |
antares-version: ${{needs.versions.outputs.antares-version}} | |
os: Oracle8 | |
os-full-name: OracleServer-8.9 | |
- name: Compile TBB | |
uses: ./.github/workflows/compile-tbb | |
- run: | | |
mkdir -p ${{ github.workspace }}/vcpkg_cache | |
- name: vcpkg install | |
run: | | |
pushd vcpkg | |
git fetch --unshallow | |
./bootstrap-vcpkg.sh | |
popd | |
vcpkg/vcpkg install | |
- name: Configure | |
run: | | |
[[ ${{ matrix.xprs.value }} == "XPRESS-ON" ]] && XPRESS_VALUE="ON" || XPRESS_VALUE="OFF" | |
cmake -B _build -S . \ | |
-DDEPS_INSTALL_DIR=rte-antares-deps-Release \ | |
-DBUILD_TESTING=ON \ | |
-DCMAKE_BUILD_TYPE=Release \ | |
-DCMAKE_INSTALL_PREFIX=_install \ | |
-DBUILD_UI=OFF \ | |
-DXPRESS=${{ env.XPRESS_VALUE }} \ | |
-DALLOW_RUN_AS_ROOT=ON \ | |
-DCMAKE_TOOLCHAIN_FILE=vcpkg/scripts/buildsystems/vcpkg.cmake | |
- name: Build | |
run: | | |
cmake --build _build --config Release -j$(nproc) | |
- name: Running unit tests | |
timeout-minutes: 120 | |
shell: bash | |
run: | | |
export PATH=${GITHUB_WORKSPACE}/vcpkg_installed/x64-linux/tools/openmpi/bin/:$PATH | |
export LD_LIBRARY_PATH=LD_LIBRARY_PATH:${{ env.XPRS_LIB_Path_CONTAINER }} | |
export XPRESS=${{ env.XPRESS_CONTAINER }} | |
cd _build | |
ctest -C Release --output-on-failure -L "unit|benders|lpnamer|medium" |