Purity inference #2682
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
on: | |
pull_request: | |
name: devtools nix files test - macos | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
devtools-test-macos: | |
name: devtools-test-mac | |
runs-on: [self-hosted, macOS, ARM64] | |
timeout-minutes: 120 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Only run all steps if a nix file changed | |
run: | | |
git fetch origin ${{ github.base_ref }} | |
if git diff --name-only origin/${{ github.base_ref }} HEAD | grep 'nix'; then | |
echo "A nix file was changed. Testing devtools nix files..." | |
echo "nix_changed=true" >> $GITHUB_ENV | |
else | |
echo "A nix file was changed. No need to run tests." | |
echo "nix_changed=false" >> $GITHUB_ENV | |
fi | |
- name: test devtools/flake.nix | |
if: env.nix_changed == 'true' | |
id: devtools_test_step | |
run: | | |
sed -i '' "s|/home/username/gitrepos/roc|$(realpath .)|g" devtools/flake.nix | |
cat devtools/flake.nix | |
mkdir -p ../temp | |
cp devtools/flake.nix ../temp | |
cp devtools/flake.lock ../temp | |
cd ../temp | |
git init | |
git add flake.nix flake.lock | |
nix develop --show-trace | |
- name: Print tip on fail | |
if: steps.devtools_test_step.outcome == 'failure' | |
run: | | |
echo "The devtools test failed, this can likely be fixed by" | |
echo "locally deleting devtools/flake.lock and following the" | |
echo "instructions in devtools/README.md. This will create a" | |
echo "new flake.lock you should use to replace the old devtools/flake.lock" |