Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Poc/presolve save restore #926

Draft
wants to merge 21 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
215 changes: 109 additions & 106 deletions .github/workflows/build_centos7.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:
- develop
- dependabot/*
- release/*
- poc/presolve-save-restore
pull_request:
release:
types: [ created ]
Expand Down Expand Up @@ -87,7 +88,7 @@ jobs:

- name: Config OR-Tools URL
run: |
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2-test-4/ortools_cxx_centos7_static_sirius.zip" >> $GITHUB_ENV
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2/ortools_cxx_centos7_static_sirius.zip" >> $GITHUB_ENV

- uses: actions/checkout@v3 #Keep at 3
with:
Expand Down Expand Up @@ -175,11 +176,11 @@ jobs:
cmake --build _build --config Release -j$(nproc)


- name: Run cucumber on outer_loop tests
uses: ./.github/workflows/cucumber-tests
with:
feature: "features/outer_loop_tests.feature"
mpi_path: ${GITHUB_WORKSPACE}/_build/vcpkg_installed/x64-linux-release/tools/openmpi/bin
# - name: Run cucumber on outer_loop tests
# uses: ./.github/workflows/cucumber-tests
# with:
# feature: "features/outer_loop_tests.feature"
# mpi_path: ${GITHUB_WORKSPACE}/_build/vcpkg_installed/x64-linux-release/tools/openmpi/bin

- name: Cache vcpkg binary dir
if: always()
Expand All @@ -189,13 +190,15 @@ jobs:
path: ${{ env.VCPKG_CACHE_DIR }}
key: vcpkg-cache-centOS-${{ hashFiles('src/vcpkg.json', '.git/modules/vcpkg/HEAD') }}

- name: Running unit tests
timeout-minutes: 120
shell: bash
run: |
export PATH=${GITHUB_WORKSPACE}/_build/vcpkg_installed/x64-linux-release/tools/openmpi/bin/:$PATH
cd _build
ctest -C Release --output-on-failure -L "unit|benders|lpnamer|medium"
# - name: Running unit tests
# timeout-minutes: 120
# shell: bash
# run: |
# export PATH=${GITHUB_WORKSPACE}/_build/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"

#######################
- name: Install
Expand Down Expand Up @@ -285,99 +288,99 @@ jobs:
name: centos
path: /tmp/centos.tar

test_assets:
runs-on: ubuntu-latest
needs: [ build, build_running_image ]
steps:
- name: Download build assets
uses: actions/download-artifact@v3
with:
name: ${{needs.build.outputs.TGZ_NAME}}

- name: Download image
uses: actions/download-artifact@v4
with:
name: centos
path: /tmp

- name: Load image
run: |
docker load --input /tmp/centos.tar

- name: setup
run: |
tar --strip-components=1 -xzf ${{needs.build.outputs.TGZ_NAME}}

- uses: addnab/docker-run-action@v3
name: Run tests
with:
image: centos:run
shell: bash
options: -v ${{ github.workspace }}:/work
run: |
export PATH=$PATH:/usr/lib64/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
cd /work
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates --allow-run-as-root

- uses: addnab/docker-run-action@v3
name: run tests with 2 processes
with:
image: centos:run
shell: bash
options: -v ${{ github.workspace }}:/work
run: |
export PATH=$PATH:/usr/lib64/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
cd /work
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2 --allow-run-as-root

test_single_file_asset:
runs-on: ubuntu-latest
needs: [ build, build_running_image ]
steps:
- name: Download build assets
uses: actions/download-artifact@v3
with:
name: ${{needs.build.outputs.SINGLE_FILE_NAME}}

- name: Download image
uses: actions/download-artifact@v4
with:
name: centos
path: /tmp

- name: Load image
run: |
docker load --input /tmp/centos.tar

- name: setup
run: |
tar --strip-components=1 -xzf ${{needs.build.outputs.SINGLE_FILE_NAME}}

- uses: addnab/docker-run-action@v3
name: Run tests
with:
image: centos:run
shell: bash
options: -v ${{ github.workspace }}:/work
run: |
export PATH=$PATH:/usr/lib64/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
cd /work
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates --allow-run-as-root

- uses: addnab/docker-run-action@v3
name: run tests with 2 processes
with:
image: centos:run
shell: bash
options: -v ${{ github.workspace }}:/work
run: |
export PATH=$PATH:/usr/lib64/openmpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
cd /work
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2 --allow-run-as-root
# test_assets:
# runs-on: ubuntu-latest
# needs: [ build, build_running_image ]
# steps:
# - name: Download build assets
# uses: actions/download-artifact@v3
# with:
# name: ${{needs.build.outputs.TGZ_NAME}}

# - name: Download image
# uses: actions/download-artifact@v4
# with:
# name: centos
# path: /tmp

# - name: Load image
# run: |
# docker load --input /tmp/centos.tar

# - name: setup
# run: |
# tar --strip-components=1 -xzf ${{needs.build.outputs.TGZ_NAME}}

# - uses: addnab/docker-run-action@v3
# name: Run tests
# with:
# image: centos:run
# shell: bash
# options: -v ${{ github.workspace }}:/work
# run: |
# export PATH=$PATH:/usr/lib64/openmpi/bin
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
# cd /work
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates --allow-run-as-root

# - uses: addnab/docker-run-action@v3
# name: run tests with 2 processes
# with:
# image: centos:run
# shell: bash
# options: -v ${{ github.workspace }}:/work
# run: |
# export PATH=$PATH:/usr/lib64/openmpi/bin
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
# cd /work
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2 --allow-run-as-root

# test_single_file_asset:
# runs-on: ubuntu-latest
# needs: [ build, build_running_image ]
# steps:
# - name: Download build assets
# uses: actions/download-artifact@v3
# with:
# name: ${{needs.build.outputs.SINGLE_FILE_NAME}}

# - name: Download image
# uses: actions/download-artifact@v4
# with:
# name: centos
# path: /tmp

# - name: Load image
# run: |
# docker load --input /tmp/centos.tar

# - name: setup
# run: |
# tar --strip-components=1 -xzf ${{needs.build.outputs.SINGLE_FILE_NAME}}

# - uses: addnab/docker-run-action@v3
# name: Run tests
# with:
# image: centos:run
# shell: bash
# options: -v ${{ github.workspace }}:/work
# run: |
# export PATH=$PATH:/usr/lib64/openmpi/bin
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
# cd /work
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates --allow-run-as-root

# - uses: addnab/docker-run-action@v3
# name: run tests with 2 processes
# with:
# image: centos:run
# shell: bash
# options: -v ${{ github.workspace }}:/work
# run: |
# export PATH=$PATH:/usr/lib64/openmpi/bin
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
# cd /work
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2 --allow-run-as-root

release:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_oracle8.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ jobs:

- name: Config OR-Tools URL
run: |
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2-test-4/ortools_cxx_oraclelinux-8_static_sirius.zip" >> $GITHUB_ENV
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2/ortools_cxx_oraclelinux-8_static_sirius.zip" >> $GITHUB_ENV

- run: |
dnf module install -y nodejs:20/common
Expand Down
89 changes: 41 additions & 48 deletions .github/workflows/build_ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ jobs:

- name: Config OR-Tools URL
run: |
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2-test-4/ortools_cxx_ubuntu-20.04_static_sirius.zip" >> $GITHUB_ENV
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2/ortools_cxx_ubuntu-20.04_static_sirius.zip" >> $GITHUB_ENV

- name: Download pre-compiled librairies
uses: ./.github/workflows/download-extract-precompiled-libraries-tgz
Expand Down Expand Up @@ -152,18 +152,11 @@ jobs:
run: |
cmake --build _build --config Release -j$(nproc)

- name: Run cucumber on outer_loop tests
uses: ./.github/workflows/cucumber-tests
with:
feature: "features/outer_loop_tests.feature"
mpi_path: ${{ github.workspace }}/_build/vcpkg_installed/x64-linux-release/tools/openmpi/bin


- name: Test
run: |
export PATH=${GITHUB_WORKSPACE}/_build/vcpkg_installed/x64-linux-release/tools/openmpi/bin:$PATH
cd _build
ctest -C Release --output-on-failure -L "medium|unit|benders|lpnamer"
# - name: Test
# run: |
# export PATH=${GITHUB_WORKSPACE}/_build/vcpkg_installed/x64-linux/tools/openmpi/bin:$PATH
# cd _build
# ctest -C Release --output-on-failure -L "medium|unit|benders|lpnamer"

- name: Cache vcpkg binary dir
if: always()
Expand Down Expand Up @@ -242,41 +235,41 @@ jobs:
name: user-guide
path: ${{ steps.create-user-guide.outputs.pdf-path }}

test_assets:
runs-on: ubuntu-latest
needs: [ build ]
steps:
- name: Download build assets
uses: actions/download-artifact@v4
with:
name: ${{needs.build.outputs.TGZ_NAME}}
- name: setup
run: |
tar --strip-components=1 -xzf ${{needs.build.outputs.TGZ_NAME}}
sudo apt-get update -y
sudo apt-get install openmpi-bin -y

- name: run launcher
run: |
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates

- name: run launcher parallel
run: |
./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2

test_single_file_asset:
runs-on: ubuntu-latest
needs: [ build ]
steps:
- name: Download build assets
uses: actions/download-artifact@v4
with:
name: ${{needs.build.outputs.SINGLE_FILE_NAME}}
- name: setup
run: |
tar --strip-components=1 -xzf ${{needs.build.outputs.SINGLE_FILE_NAME}}
sudo apt-get update -y
sudo apt-get install openmpi-bin -y
# test_assets:
# runs-on: ubuntu-latest
# needs: [ build ]
# steps:
# - name: Download build assets
# uses: actions/download-artifact@v4
# with:
# name: ${{needs.build.outputs.TGZ_NAME}}
# - name: setup
# run: |
# tar --strip-components=1 -xzf ${{needs.build.outputs.TGZ_NAME}}
# sudo apt-get update -y
# sudo apt-get install openmpi-bin -y

# - name: run launcher
# run: |
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates

# - name: run launcher parallel
# run: |
# ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates -n 2

# test_single_file_asset:
# runs-on: ubuntu-latest
# needs: [ build ]
# steps:
# - name: Download build assets
# uses: actions/download-artifact@v4
# with:
# name: ${{needs.build.outputs.SINGLE_FILE_NAME}}
# - name: setup
# run: |
# tar --strip-components=1 -xzf ${{needs.build.outputs.SINGLE_FILE_NAME}}
# sudo apt-get update -y
# sudo apt-get install openmpi-bin -y

- name: run launcher
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ jobs:
- name: Config OR-Tools URL
shell: bash
run: |
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2-test-4/ortools_cxx_windows-latest_static.zip" >> $GITHUB_ENV
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2/ortools_cxx_windows-latest_static.zip" >> $GITHUB_ENV

- run: echo ${{env.ORTOOLS_URL}}
- name: Download pre-compiled librairies
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ runs:
shell: bash
run: |
mkdir -p deps
wget https://github.com/AntaresSimulatorTeam/Antares_Simulator/releases/download/v${{inputs.antares-version}}/antares-${{inputs.antares-version}}-${{inputs.os-full-name}}.tar.gz
tar -xvf antares-${{inputs.antares-version}}-${{inputs.os-full-name}}.tar.gz -C deps --strip-components=1
rm -rf antares-${{inputs.antares-version}}-${{inputs.os-full-name}}.tar.gz
wget https://github.com/AntaresSimulatorTeam/Antares_Simulator/releases/download/v9.2.0-api03/antares-9.2.0-rc4-CentOS-7.9.2009.tar.gz
tar -xvf antares-9.2.0-rc4-CentOS-7.9.2009.tar.gz -C deps --strip-components=1
rm -rf antares-9.2.0-rc4-CentOS-7.9.2009.tar.gz

- name: Download & extract OR-Tools
shell: bash
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sonarcloud.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ jobs:
- name: Config OR-Tools URL
shell: bash
run: |
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2-test-4/ortools_cxx_ubuntu-20.04_static_sirius.zip" >> $GITHUB_ENV
echo "ORTOOLS_URL=https://github.com/rte-france/or-tools-rte/releases/download/v9.10-rte1.2/ortools_cxx_ubuntu-20.04_static_sirius.zip" >> $GITHUB_ENV

- name: Download pre-compiled librairies
uses: ./.github/workflows/download-extract-precompiled-libraries-tgz
Expand Down
Loading
Loading