Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/actions/setup-rust-2/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: "Setup Rust (Custom AMI)"
description: "Lightweight Rust setup for custom AMI runners with pre-installed toolchain"

inputs:
cache-suffix:
description: "optional suffix for cache key to isolate builds with different RUSTFLAGS (e.g. 'sanitizer')"
required: false
default: ""
targets:
description: "optional targets override (for cache key compatibility)"
required: false
timestamp:
description: "Timestamp cache with cargo sweep"
default: "false"

runs:
using: "composite"
steps:
- name: Get Rust version for cache key
id: rust-version
shell: bash
run: |
# Get a short hash of the rustc version (matches dtolnay/rust-toolchain cachekey format)
RUSTC_VERSION=$(rustc --version)
CACHEKEY=$(echo "$RUSTC_VERSION" | sha256sum | cut -c1-20)
echo "cachekey=$CACHEKEY" >> $GITHUB_OUTPUT

- name: Rust Dependency Cache
uses: Swatinem/rust-cache@v2
with:
# save-if: ${{ github.ref_name == 'develop' }}

Check failure on line 31 in .github/actions/setup-rust-2/action.yml

View workflow job for this annotation

GitHub Actions / validate-workflow-yaml

31:1 [comments-indentation] comment not indented like content
shared-key: "rust-cache-${{ runner.os }}-${{ runner.arch }}-${{ runner.environment }}-${{ steps.rust-version.outputs.cachekey }}-${{ inputs.targets }}${{ inputs.cache-suffix && format('-{0}', inputs.cache-suffix) || '' }}"

# Note: sccache is configured by runs-on/action with sccache: s3 in the workflow
# Do NOT add mozilla-actions/sccache-action here as it would override S3 config with GH cache

- name: Timestamp Cache
shell: bash
if: ${{ inputs.timestamp == 'true' && github.ref_name == 'develop' }}
run: cargo sweep --stamp
21 changes: 19 additions & 2 deletions .github/runs-on.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
# Custom AMIs for Vortex CI runners
# These AMIs are automatically rebuilt every 25 days by the ami-prebuild.yml workflow
# to keep the GitHub Actions runner agent up to date (required to be <30 days old).
# AMIs are deprecated after 25 days via Packer's deprecate_at setting.
#
# AMI naming pattern: vortex-ci-{arch}-{timestamp}
# Built with: .github/actions/build-ami and .github/packer/vortex-ci.pkr.hcl
runners:
rust-amd64-medium:
image: vortex-ci-amd64
cpu: 8
family: [m7i, m7i-flex, m7a]
rust-amd64-large:
image: vortex-ci-amd64
cpu: 16
family: [m7i, m7i-flex, m7a]

images:
vortex-ci-amd64:
platform: "linux"
arch: "x64"
name: "vortex-ci-*"
name: "vortex-ci-x64-*"
owner: "375504701696"
vortex-ci-arm64:
platform: "linux"
arch: "arm64"
name: "vortex-ci-*"
name: "vortex-ci-arm64-*"
owner: "375504701696"
Loading
Loading