Download .github/workflows/nix-eval.yml from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 2.74 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/.github/workflows/nix-eval.yml
- Command line
-
hf download hf://SaylorTwift/opencode/.github/workflows/nix-eval.yml
-
curl -L -o nix-eval.yml https://huggingface.co/SaylorTwift/opencode/resolve/main/.github/workflows/nix-eval.yml
2.74 kB
| name: nix-eval | |
| on: | |
| push: | |
| branches: [dev] | |
| pull_request: | |
| branches: [dev] | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| nix-eval: | |
| runs-on: blacksmith-4vcpu-ubuntu-2404 | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup Nix | |
| uses: nixbuild/nix-quick-install-action@2c9db80fb984ceb1bcaa77cdda3fdf8cfba92035 # v34 | |
| - name: Evaluate flake outputs (all systems) | |
| run: | | |
| set -euo pipefail | |
| nix --version | |
| echo "=== Flake metadata ===" | |
| nix flake metadata | |
| echo "" | |
| echo "=== Flake structure ===" | |
| nix flake show --all-systems | |
| SYSTEMS="x86_64-linux aarch64-linux x86_64-darwin aarch64-darwin" | |
| PACKAGES="opencode" | |
| # TODO: move 'desktop' to PACKAGES when #11755 is fixed | |
| OPTIONAL_PACKAGES="desktop" | |
| echo "" | |
| echo "=== Evaluating packages for all systems ===" | |
| for system in $SYSTEMS; do | |
| echo "" | |
| echo "--- $system ---" | |
| for pkg in $PACKAGES; do | |
| printf " %s: " "$pkg" | |
| if output=$(nix eval ".#packages.$system.$pkg.drvPath" --raw 2>&1); then | |
| echo "✓" | |
| else | |
| echo "✗" | |
| echo "::error::Evaluation failed for packages.$system.$pkg" | |
| echo "$output" | |
| exit 1 | |
| fi | |
| done | |
| done | |
| echo "" | |
| echo "=== Evaluating optional packages ===" | |
| for system in $SYSTEMS; do | |
| echo "" | |
| echo "--- $system ---" | |
| for pkg in $OPTIONAL_PACKAGES; do | |
| printf " %s: " "$pkg" | |
| if output=$(nix eval ".#packages.$system.$pkg.drvPath" --raw 2>&1); then | |
| echo "✓" | |
| else | |
| echo "✗" | |
| echo "::warning::Evaluation failed for packages.$system.$pkg" | |
| echo "$output" | |
| fi | |
| done | |
| done | |
| echo "" | |
| echo "=== Evaluating devShells for all systems ===" | |
| for system in $SYSTEMS; do | |
| printf "%s: " "$system" | |
| if output=$(nix eval ".#devShells.$system.default.drvPath" --raw 2>&1); then | |
| echo "✓" | |
| else | |
| echo "✗" | |
| echo "::error::Evaluation failed for devShells.$system.default" | |
| echo "$output" | |
| exit 1 | |
| fi | |
| done | |
| echo "" | |
| echo "=== All evaluations passed ===" | |