diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000000..2c48305b7e --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + groups: + github-actions: + patterns: ["*"] + schedule: + interval: "weekly" + cooldown: + default-days: 7 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c4893ad3c9..f5dd0a2cff 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,14 +30,14 @@ jobs: RUSTDOCFLAGS: -Dwarnings steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Use Node.js - uses: actions/setup-node@v6 + uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0 - name: Set up Rust run: | rustup toolchain install $(awk -F'"' '/channel/{print $2}' rust-toolchain.toml) --profile minimal --no-self-update --component rustfmt,clippy --target x86_64-unknown-linux-gnu - name: Set up Nextest - uses: taiki-e/install-action@v2 + uses: taiki-e/install-action@5b4d68e2e660441203ab128a23676f1e4faf1532 # v2.86.3 with: tool: nextest@${{ env.NEXTEST_VERSION }} - name: Set up tun @@ -49,9 +49,9 @@ jobs: - name: Install diod run: | sudo apt install -y diod - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - name: Cache custom out directories - uses: actions/cache@v5 + uses: actions/cache@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0 with: path: | target/*/build/litebox_runner_linux_userland-*/out @@ -85,18 +85,18 @@ jobs: RUSTFLAGS: -Dwarnings steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Set up Rust run: | rustup toolchain install $(awk -F'"' '/channel/{print $2}' rust-toolchain.toml) --profile minimal --no-self-update --component rustfmt,clippy - name: Set up Nextest - uses: taiki-e/install-action@v2 + uses: taiki-e/install-action@5b4d68e2e660441203ab128a23676f1e4faf1532 # v2.86.3 with: tool: nextest@${{ env.NEXTEST_VERSION }} - name: Install diod run: | sudo apt install -y diod - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - run: ./.github/tools/github_actions_run_cargo fmt - run: | ./.github/tools/github_actions_run_cargo clippy --all-targets --all-features -p litebox -p litebox_common_linux @@ -110,7 +110,7 @@ jobs: RUSTFLAGS: -Dwarnings steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 # LVBS requires a nightly toolchain because: # 1. It uses a custom target (x86_64_vtl1.json) for bare-metal VTL1 kernel development # 2. The custom target requires `-Z build-std` to build core/alloc from source @@ -130,15 +130,15 @@ jobs: rustup override set ${RUST_CHANNEL} rustup show - name: Set up Nextest - uses: taiki-e/install-action@v2 + uses: taiki-e/install-action@5b4d68e2e660441203ab128a23676f1e4faf1532 # v2.86.3 with: tool: nextest@${{ env.NEXTEST_VERSION }} - name: Set up tun run: | sudo ./litebox_platform_linux_userland/scripts/tun-setup.sh - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - name: Cache custom out directories - uses: actions/cache@v5 + uses: actions/cache@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0 with: path: | target/*/build/litebox_runner_linux_userland-*/out @@ -167,15 +167,15 @@ jobs: RUSTDOCFLAGS: -Dwarnings steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Set up Rust run: | rustup toolchain install $(awk -F'"' '/channel/{print $2}' rust-toolchain.toml) --profile minimal --no-self-update --component rustfmt,clippy --target x86_64-pc-windows-msvc - name: Set up Nextest - uses: taiki-e/install-action@v2 + uses: taiki-e/install-action@5b4d68e2e660441203ab128a23676f1e4faf1532 # v2.86.3 with: tool: nextest@${{ env.NEXTEST_VERSION }} - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - run: cargo clippy --locked --verbose --all-targets --all-features -p litebox_runner_linux_on_windows_userland - run: cargo build --locked --verbose -p litebox_runner_linux_on_windows_userland - run: cargo nextest run --locked --profile ci -p litebox_runner_linux_on_windows_userland @@ -195,7 +195,7 @@ jobs: RUSTFLAGS: -Dwarnings steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Set up Rust run: | RUST_CHANNEL=$(awk -F'"' '/channel/{print $2}' litebox_runner_snp/rust-toolchain.toml) @@ -204,7 +204,7 @@ jobs: rustup default ${RUST_CHANNEL} rustup override set ${RUST_CHANNEL} rustup show - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - run: ./.github/tools/github_actions_run_cargo clippy --all-features --target litebox_runner_snp/target.json --manifest-path=litebox_runner_snp/Cargo.toml -Zbuild-std=core,compiler_builtins,alloc - run: | ./.github/tools/github_actions_run_cargo build -Zbuild-std=core,compiler_builtins,alloc -Zbuild-std-features=compiler-builtins-mem --manifest-path=litebox_runner_snp/Cargo.toml --target litebox_runner_snp/target.json @@ -216,11 +216,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Set up Rust run: | rustup toolchain install $(awk -F'"' '/channel/{print $2}' rust-toolchain.toml) --profile minimal --no-self-update --target x86_64-unknown-none - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2 - name: Confirm that we haven't accidentally pulled in std into LiteBox run: | # Essentially, we run a build on a target that simply does NOT have diff --git a/.github/workflows/copilot-setup-steps.yml b/.github/workflows/copilot-setup-steps.yml index ddc334fb73..26c5d4d4ed 100644 --- a/.github/workflows/copilot-setup-steps.yml +++ b/.github/workflows/copilot-setup-steps.yml @@ -27,7 +27,7 @@ jobs: # If you do not check out your code, Copilot will do this for you. steps: - name: Checkout code - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Set up Rust run: | rustup toolchain install $(awk -F'"' '/channel/{print $2}' rust-toolchain.toml) --profile minimal --no-self-update --component rustfmt,clippy diff --git a/.github/workflows/semver-checks.yml b/.github/workflows/semver-checks.yml index 6ee599f588..914c6acb3d 100644 --- a/.github/workflows/semver-checks.yml +++ b/.github/workflows/semver-checks.yml @@ -29,7 +29,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out repo - uses: actions/checkout@v6 + uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 - name: Determine baseline ref id: baseline run: |