Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
63c60f4c45 |
+32
-5
@@ -9,13 +9,25 @@ on:
|
|||||||
env:
|
env:
|
||||||
CARGO_TERM_COLOR: always
|
CARGO_TERM_COLOR: always
|
||||||
RUSTFLAGS: "-D warnings"
|
RUSTFLAGS: "-D warnings"
|
||||||
# sccache caches compilation artifacts within a job so that compiling
|
# Compile cache: sccache -> Hetzner S3 (breakpilot-sccache), runner-independent
|
||||||
# both --features server and --features web shares common crate work.
|
# and persistent across CI runs (own key prefix). Reuses the shared cluster S3
|
||||||
|
# creds (same bucket as werkpilot). Requires repo secrets HETZNER_S3_ACCESS_KEY
|
||||||
|
# and HETZNER_S3_SECRET_KEY.
|
||||||
RUSTC_WRAPPER: /usr/local/bin/sccache
|
RUSTC_WRAPPER: /usr/local/bin/sccache
|
||||||
SCCACHE_DIR: /tmp/sccache
|
SCCACHE_BUCKET: breakpilot-sccache
|
||||||
|
SCCACHE_ENDPOINT: https://nbg1.your-objectstorage.com
|
||||||
|
SCCACHE_REGION: auto
|
||||||
|
SCCACHE_S3_USE_SSL: "true"
|
||||||
|
SCCACHE_S3_KEY_PREFIX: compliance-scanner
|
||||||
|
AWS_ACCESS_KEY_ID: ${{ secrets.HETZNER_S3_ACCESS_KEY }}
|
||||||
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.HETZNER_S3_SECRET_KEY }}
|
||||||
# compliance-agent depends on tramiton-core via git; use the system git so the
|
# compliance-agent depends on tramiton-core via git; use the system git so the
|
||||||
# credential rewrite below (see "Configure git auth ...") is honored on fetch.
|
# credential rewrite below (see "Configure git auth ...") is honored on fetch.
|
||||||
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
|
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
|
||||||
|
# Throttle cargo so a ~670-crate concurrent download burst doesn't 429 the
|
||||||
|
# Kellnr mirror: fewer concurrent connections (HTTP/1.1) + more retries.
|
||||||
|
CARGO_NET_RETRY: "10"
|
||||||
|
CARGO_HTTP_MULTIPLEXING: "false"
|
||||||
|
|
||||||
# Cancel in-progress runs for the same branch/PR
|
# Cancel in-progress runs for the same branch/PR
|
||||||
concurrency:
|
concurrency:
|
||||||
@@ -39,11 +51,26 @@ jobs:
|
|||||||
git remote add origin "${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}.git"
|
git remote add origin "${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}.git"
|
||||||
git fetch --depth=1 origin "${GITHUB_SHA}"
|
git fetch --depth=1 origin "${GITHUB_SHA}"
|
||||||
git checkout FETCH_HEAD
|
git checkout FETCH_HEAD
|
||||||
|
# Resolve crates.io deps through the self-hosted Kellnr mirror (cached,
|
||||||
|
# crates.io-independent). Git deps (tramiton-core) are unaffected — source
|
||||||
|
# replacement only applies to crates.io-sourced crates.
|
||||||
|
- name: Use Kellnr crates.io mirror
|
||||||
|
run: |
|
||||||
|
: "${CARGO_HOME:=/usr/local/cargo}"
|
||||||
|
mkdir -p "$CARGO_HOME"
|
||||||
|
{
|
||||||
|
echo '[source.crates-io]'
|
||||||
|
echo 'replace-with = "kellnr"'
|
||||||
|
echo '[registries.kellnr]'
|
||||||
|
echo 'index = "sparse+https://crates.meghsakha.com/api/v1/cratesio/"'
|
||||||
|
} >> "$CARGO_HOME/config.toml"
|
||||||
|
env:
|
||||||
|
RUSTC_WRAPPER: ""
|
||||||
- name: Install tools
|
- name: Install tools
|
||||||
run: |
|
run: |
|
||||||
rustup component add rustfmt clippy
|
rustup component add rustfmt clippy
|
||||||
curl -fsSL https://github.com/mozilla/sccache/releases/download/v0.9.1/sccache-v0.9.1-x86_64-unknown-linux-musl.tar.gz \
|
curl -fsSL https://github.com/mozilla/sccache/releases/download/v0.10.0/sccache-v0.10.0-x86_64-unknown-linux-musl.tar.gz \
|
||||||
| tar xz --strip-components=1 -C /usr/local/bin/ sccache-v0.9.1-x86_64-unknown-linux-musl/sccache
|
| tar xz --strip-components=1 -C /usr/local/bin/ sccache-v0.10.0-x86_64-unknown-linux-musl/sccache
|
||||||
chmod +x /usr/local/bin/sccache
|
chmod +x /usr/local/bin/sccache
|
||||||
cargo install cargo-audit --locked
|
cargo install cargo-audit --locked
|
||||||
env:
|
env:
|
||||||
|
|||||||
Reference in New Issue
Block a user