ALaDyn Continuous Integration #67
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: ALaDyn Continuous Integration | |
on: | |
pull_request: | |
push: | |
workflow_dispatch: | |
inputs: | |
debug_enabled: | |
description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)' | |
required: false | |
default: false | |
schedule: | |
- cron: '0 6 * * *' | |
env: | |
VCPKG_BINARY_SOURCES: 'clear;nuget,vcpkgbinarycache,readwrite' | |
jobs: | |
ubuntu-vcpkg: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- uses: lukka/get-cmake@latest | |
- name: Update apt | |
run: sudo apt update | |
- name: Install dependencies | |
run: sudo apt-get install -y yasm nasm openmpi-bin libopenmpi-dev | |
- name: 'Setup vcpkg and NuGet artifacts backend' | |
shell: bash | |
run: > | |
git clone https://github.com/microsoft/vcpkg ; | |
./vcpkg/bootstrap-vcpkg.sh ; | |
mono $(./vcpkg/vcpkg fetch nuget | tail -n 1) sources add | |
-Name "vcpkgbinarycache" | |
-Source http://93.49.111.10:5555/v3/index.json | |
- name: Setup NuGet API key if found | |
shell: bash | |
env: | |
BAGET_API_KEY: ${{ secrets.BAGET_API_KEY }} | |
if: env.BAGET_API_KEY != null | |
run: > | |
mono $(./vcpkg/vcpkg fetch nuget | tail -n 1) | |
setapikey ${{ secrets.BAGET_API_KEY }} | |
-Source http://93.49.111.10:5555/v3/index.json | |
- name: 'Build' | |
shell: pwsh | |
run: ${{ github.workspace }}/cmake/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -DisableInteractive -DoNotUpdateTOOL | |
osx-vcpkg: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Upgrade bash version | |
run: | | |
brew install bash | |
brew install gnu-sed | |
echo "/usr/local/bin" >> $GITHUB_PATH | |
echo "$(brew --prefix)/opt/gnu-sed/libexec/gnubin" >> $GITHUB_PATH | |
- name: Install dependencies | |
shell: bash | |
run: > | |
brew install libomp yasm nasm open-mpi gcc ; | |
all_versions=$(ls -1 /usr/local/bin/gfortran-* | tail -1) ; | |
IFS="-" read -ra tokens <<< "$all_versions" ; | |
latest_version="${tokens[-1]}" ; | |
ln -s /usr/local/bin/gfortran-${latest_version} /usr/local/bin/gfortran ; | |
which gfortran-${latest_version} ; | |
which gfortran | |
- uses: lukka/get-cmake@latest | |
- name: 'Setup vcpkg and NuGet artifacts backend' | |
shell: bash | |
run: > | |
git clone https://github.com/microsoft/vcpkg ; | |
./vcpkg/bootstrap-vcpkg.sh ; | |
mono $(./vcpkg/vcpkg fetch nuget | tail -n 1) sources add | |
-Name "vcpkgbinarycache" | |
-Source http://93.49.111.10:5555/v3/index.json | |
- name: Setup NuGet API key if found | |
shell: bash | |
env: | |
BAGET_API_KEY: ${{ secrets.BAGET_API_KEY }} | |
if: env.BAGET_API_KEY != null | |
run: > | |
mono $(./vcpkg/vcpkg fetch nuget | tail -n 1) | |
setapikey ${{ secrets.BAGET_API_KEY }} | |
-Source http://93.49.111.10:5555/v3/index.json | |
- name: 'Build' | |
shell: pwsh | |
run: ${{ github.workspace }}/cmake/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -DisableInteractive -DoNotUpdateTOOL |