Restoring self-hosted windows build #5
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: Build F* (Windows, self-hosted) | |
on: | |
workflow_call: | |
workflow_dispatch: | |
push: | |
jobs: | |
build-windows: | |
runs-on: [self-hosted, Windows, X64, opam-2-3] | |
# NOTE: no setup, the self-hosted runner already has all that is needed. | |
# This workflow also has many weird restrictions like | |
# having to set cygwin bash, cd into $GITHUB_WORKSPACE, and keep | |
# shell commands to a single line. | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v4 | |
- name: Set version | |
shell: C:\cygwin64\bin\bash.exe --login '{0}' | |
run: | | |
# Setting FSTAR_VERSION for nightly and release builds. If unset, | |
# we use $(version.txt)~dev. Setting it avoids the ~dev. | |
cd $GITHUB_WORKSPACE && if [[ "${{github.workflow_ref}}" =~ "nightly.yml" ]]; then echo FSTAR_VERSION="nightly-$(date -I)" >> $GITHUB_ENV; elif [[ "${{github.workflow_ref}}" =~ "release.yml" ]]; then echo FSTAR_VERSION="$(cat version.txt)" >> $GITHUB_ENV; echo FSTAR_RELEASE=1 >> $GITHUB_ENV; fi && echo "There is a CR at the end of this line" | |
- name: Build a package | |
shell: C:\cygwin64\bin\bash.exe --login '{0}' | |
run: | | |
cd $GITHUB_WORKSPACE && eval $(opam env) && export CC=x86_64-w64-mingw32-gcc.exe && make -j$(nproc) package && echo "There is a CR at the end of this line" | |
- name: Test the package | |
shell: C:\cygwin64\bin\bash.exe --login '{0}' | |
run: | | |
cd $GITHUB_WORKSPACE && eval $(opam env) && export CC=x86_64-w64-mingw32-gcc.exe && export CI_THREADS=$(nproc) && .scripts/test_package.sh && echo "There is a CR at the end of this line" | |
- name: Upload artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
path: fstar-*.zip | |
name: package-win |