Download .github/scripts/run-argument-comment-lint-bazel.sh from SaylorTwift/codex: direct link, hf CLI and curl.
- Browser
- Download file 1.74 kB
-
https://huggingface.co/SaylorTwift/codex/resolve/main/.github/scripts/run-argument-comment-lint-bazel.sh
- Command line
-
hf download hf://SaylorTwift/codex/.github/scripts/run-argument-comment-lint-bazel.sh
-
curl -L -o run-argument-comment-lint-bazel.sh https://huggingface.co/SaylorTwift/codex/resolve/main/.github/scripts/run-argument-comment-lint-bazel.sh
1.74 kB
| set -euo pipefail | |
| bazel_lint_args=("$@") | |
| if [[ "${RUNNER_OS:-}" == "Windows" ]]; then | |
| # Some Rust top-level targets are still intentionally incompatible with the | |
| # local Windows exec platform. Skip those explicit targets so the native | |
| # lint aspect can run across the compatible crate graph instead of failing the | |
| # whole build after analysis. | |
| bazel_lint_args+=("--skip_incompatible_explicit_targets") | |
| fi | |
| read_query_labels() { | |
| local query="$1" | |
| local query_stdout | |
| local query_stderr | |
| query_stdout="$(mktemp)" | |
| query_stderr="$(mktemp)" | |
| if ! ./.github/scripts/run-bazel-query-ci.sh \ | |
| --keep_going \ | |
| --output=label \ | |
| -- "$query" >"$query_stdout" 2>"$query_stderr"; then | |
| cat "$query_stderr" >&2 | |
| rm -f "$query_stdout" "$query_stderr" | |
| exit 1 | |
| fi | |
| cat "$query_stdout" | |
| rm -f "$query_stdout" "$query_stderr" | |
| } | |
| final_build_targets=(//codex-rs/...) | |
| if [[ "${RUNNER_OS:-}" == "Windows" ]]; then | |
| # Bazel's local Windows platform currently lacks a default test toolchain for | |
| # `rust_test`, so target the concrete Rust crate rules directly. The lint | |
| # aspect still walks their crate graph, which preserves incremental reuse for | |
| # non-test code while avoiding non-Rust wrapper targets such as platform_data. | |
| final_build_targets=() | |
| while IFS= read -r label; do | |
| [[ -n "$label" ]] || continue | |
| final_build_targets+=("$label") | |
| done < <(read_query_labels 'kind("rust_(library|binary|proc_macro) rule", //codex-rs/...)') | |
| if [[ ${#final_build_targets[@]} -eq 0 ]]; then | |
| echo "Failed to discover Windows Bazel lint targets." >&2 | |
| exit 1 | |
| fi | |
| fi | |
| ./.github/scripts/run-bazel-ci.sh \ | |
| -- \ | |
| build \ | |
| "${bazel_lint_args[@]}" \ | |
| -- \ | |
| "${final_build_targets[@]}" | |