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

Various CI fixes #23

Merged
merged 34 commits into from
Sep 18, 2024
Merged
Changes from 22 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
a017495
Fixed CI to my QuantLib fork
raneamri Aug 2, 2024
f397d77
Added CXX 20 in CI and manual download for boost with Linux
raneamri Aug 2, 2024
e256974
Fixed -DCMAKE_CXX_STANDARD argument
raneamri Aug 2, 2024
14a57f0
Added manual boost install for linux-std-classes and added libtool fo…
raneamri Aug 2, 2024
dc47af8
Fixed Windows workflow
raneamri Aug 6, 2024
ff4d4d8
Fixed newline separator in Windows workflow
raneamri Aug 6, 2024
13b8ace
Boost installation with sudo
raneamri Aug 11, 2024
fe1fc2a
Fixed boost version
raneamri Aug 11, 2024
ffe0c38
Re-added ninja installation
raneamri Aug 11, 2024
c8d62e9
removed has_static_min_max redef
raneamri Aug 11, 2024
438706b
reverted last change
raneamri Aug 11, 2024
187c91c
Reverted ql_repo to lballabio/QuantLib
raneamri Aug 11, 2024
2a50a16
Using QL rolling container
raneamri Sep 12, 2024
bc4aa8e
Restored build configuration
raneamri Sep 12, 2024
4f4b0b8
Added ninja installation
raneamri Sep 15, 2024
cff24a2
Added setup to linux CI
raneamri Sep 15, 2024
44b6e72
Patched setup
raneamri Sep 15, 2024
44098a8
Removed sudo
raneamri Sep 15, 2024
0e66416
GH WS tmp attempt patch
raneamri Sep 15, 2024
433dcd9
Hardcode of matrix.workspace
raneamri Sep 15, 2024
02be1bc
Fixed wrong path for external subdir.
raneamri Sep 15, 2024
c852c44
Undid last changes and removed unnecessary installs
raneamri Sep 15, 2024
7c1ace1
substituted matrix.workspace for pwd to correct path
raneamri Sep 15, 2024
457388f
patched paths
raneamri Sep 15, 2024
0f1cb47
attempt path patch
raneamri Sep 15, 2024
c68945f
linux-std-classes workflow to use rolling container
raneamri Sep 15, 2024
ad2d639
simplified linux-std setup
raneamri Sep 15, 2024
6cd37cf
removed sudo from linux-std setup
raneamri Sep 15, 2024
ebcd069
fixed paths for linux-std
raneamri Sep 15, 2024
32a2367
reverted last change from macos and applied proper change to linux-st…
raneamri Sep 15, 2024
0fabac4
added quote to unterminated string
raneamri Sep 15, 2024
ddd8449
removed redundant matrix builds
raneamri Sep 15, 2024
4d39fe8
patched path for test install linux workflow
raneamri Sep 16, 2024
8a679b9
removed cxx20 windows build due to failure
raneamri Sep 17, 2024
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
46 changes: 39 additions & 7 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,11 @@ jobs:
fail-fast: false
matrix:
disable_aad: ["ON", "OFF"]
cxx: ["17", "20"]
boost_version: ["1.85.0"]
boost_dir: ["boost_1_85_0"]
raneamri marked this conversation as resolved.
Show resolved Hide resolved
runs-on: ubuntu-latest
container: ghcr.io/lballabio/quantlib-devenv:rolling
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -54,22 +58,23 @@ jobs:
- uses: actions/checkout@v4
with:
path: QuantLib-Risks-Cpp
- name: Setup
run: |
sudo apt update
sudo apt install -y libboost-dev ccache ninja-build
- name: ccache
uses: hendrikmuhs/[email protected]
with:
key: linux-${{ matrix.disable_aad }}
max-size: 650M
- name: Setup
run: |
apt-get update \
&& apt install -y libboost-dev ccache ninja-build
raneamri marked this conversation as resolved.
Show resolved Hide resolved
- name: Configure
run: |
rm -rf ${{ github.workspace }}/install
cd QuantLib
mkdir build
cd build
cmake -G Ninja -DBOOST_ROOT=/usr \
-DCMAKE_CXX_STANDARD=${{ matrix.cxx }} \
-DQLRISKS_DISABLE_AAD=${{ matrix.disable_aad }} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
Expand Down Expand Up @@ -125,6 +130,7 @@ jobs:
fail-fast: false
matrix:
disable_aad: ["ON", "OFF"]
cxx: ["17", "20"]
runs-on: windows-2022
env:
vsvarsall: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat
Expand Down Expand Up @@ -163,7 +169,15 @@ jobs:
mkdir build
cd build
call "${{ env.vsvarsall }}" amd64
cmake .. -G Ninja -DQLRISKS_DISABLE_AAD=${{ matrix.disable_aad }} -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DCMAKE_BUILD_TYPE=Release -DQL_EXTERNAL_SUBDIRECTORIES="${{ github.workspace }}/xad;${{ github.workspace }}/QuantLib-Risks-Cpp" -DQL_EXTRA_LINK_LIBRARIES=QuantLib-Risks -DQL_NULL_AS_FUNCTIONS=ON -DXAD_STATIC_MSVC_RUNTIME=ON -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/install
cmake .. -G Ninja -DQLRISKS_DISABLE_AAD=${{ matrix.disable_aad }} ^
-DCMAKE_CXX_STANDARD=${{ matrix.cxx }} ^
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache ^
-DCMAKE_BUILD_TYPE=Release ^
-DQL_EXTERNAL_SUBDIRECTORIES="${{ github.workspace }}/xad;${{ github.workspace }}/QuantLib-Risks-Cpp" ^
-DQL_EXTRA_LINK_LIBRARIES=QuantLib-Risks ^
-DQL_NULL_AS_FUNCTIONS=ON ^
-DXAD_STATIC_MSVC_RUNTIME=ON ^
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/install
- name: Build
shell: cmd
run: |
Expand Down Expand Up @@ -217,6 +231,7 @@ jobs:
fail-fast: false
matrix:
disable_aad: ["ON", "OFF"]
cxx: ["17", "20"]
runs-on: macos-13
env:
CXXFLAGS: -stdlib=libc++ -mmacosx-version-min=10.9
Expand Down Expand Up @@ -250,6 +265,7 @@ jobs:
mkdir build
cd build
cmake -G Ninja -DBOOST_ROOT=/usr \
-DCMAKE_CXX_STANDARD=${{ matrix.cxx }} \
-DQLRISKS_DISABLE_AAD=${{ matrix.disable_aad }} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
Expand Down Expand Up @@ -298,6 +314,11 @@ jobs:
./AdjointSwapXAD

xad-linux-std-classes:
strategy:
fail-fast: false
matrix:
boost_version: ["1.85.0"]
boost_dir: ["boost_1_85_0"]
raneamri marked this conversation as resolved.
Show resolved Hide resolved
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -315,8 +336,19 @@ jobs:
path: QuantLib-Risks-Cpp
- name: Setup
run: |
sudo apt update
sudo apt install -y libboost-dev ccache ninja-build
sudo apt-get update \
raneamri marked this conversation as resolved.
Show resolved Hide resolved
&& sudo apt install -y libboost-dev ccache ninja-build \
&& sudo DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential wget libbz2-dev autoconf automake libtool ccache cmake clang git \
&& sudo apt-get clean \
&& sudo rm -rf /var/lib/apt/lists/*

wget https://boostorg.jfrog.io/artifactory/main/release/${{ matrix.boost_version }}/source/${{ matrix.boost_dir }}.tar.gz \
&& tar xfz ${{ matrix.boost_dir }}.tar.gz \
&& rm ${{ matrix.boost_dir }}.tar.gz \
&& cd ${{ matrix.boost_dir }} \
&& ./bootstrap.sh \
&& sudo ./b2 --without-python --prefix=/usr -j 4 link=shared runtime-link=shared install \
&& cd .. && sudo rm -rf ${{ matrix.boost_dir }} && sudo ldconfig
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and the same thing here - use the container image provided by QuantLib.

- name: ccache
uses: hendrikmuhs/[email protected]
with:
Expand Down