Fix/external context runtime #45
This file contains hidden or 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: Test | |
| on: | |
| workflow_call: | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| name: ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-node@v7 | |
| with: | |
| node-version: 22.12.0 | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: 1.3.14 | |
| - name: Install current Codex CLI | |
| run: npm install --global @openai/codex@latest | |
| - name: Install Linux shell tools | |
| if: runner.os == 'Linux' | |
| run: | | |
| if ! command -v shellcheck >/dev/null 2>&1; then | |
| sudo apt-get update | |
| sudo apt-get install -y shellcheck | |
| fi | |
| - name: Install macOS shell tools | |
| if: runner.os == 'macOS' | |
| run: | | |
| brew install bash coreutils gnu-sed shellcheck | |
| { | |
| echo "$(brew --prefix bash)/bin" | |
| echo "$(brew --prefix coreutils)/libexec/gnubin" | |
| echo "$(brew --prefix gnu-sed)/libexec/gnubin" | |
| } >>"$GITHUB_PATH" | |
| - name: Validate GitHub Actions workflows | |
| if: runner.os == 'Linux' | |
| env: | |
| ACTIONLINT_VERSION: 1.7.12 | |
| ACTIONLINT_SHA256: 8aca8db96f1b94770f1b0d72b6dddcb1ebb8123cb3712530b08cc387b349a3d8 | |
| run: | | |
| set -Eeuo pipefail | |
| actionlint_dir="$(mktemp -d)" | |
| trap 'rm -rf -- "$actionlint_dir"' EXIT | |
| archive="$actionlint_dir/actionlint.tar.gz" | |
| curl --fail --location --proto '=https' --retry 3 --tlsv1.2 \ | |
| --output "$archive" \ | |
| "https://github.com/rhysd/actionlint/releases/download/v${ACTIONLINT_VERSION}/actionlint_${ACTIONLINT_VERSION}_linux_amd64.tar.gz" | |
| printf '%s %s\n' "$ACTIONLINT_SHA256" "$archive" | sha256sum --check --strict | |
| tar -xzf "$archive" -C "$actionlint_dir" actionlint | |
| "$actionlint_dir/actionlint" | |
| - name: Run complete validation | |
| run: bash tests/ci.sh |