refactor(trunk): refactor the entire project idk #1
This file contains 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
# This workflow _produces_ caches which are used to speed up pull request builds. | |
# Originally from https://github.com/libp2p/rust-libp2p/blob/master/.github/workflows/cache-factory.yml | |
name: Cache Factory | |
on: | |
push: | |
paths: | |
- 'Cargo.lock' | |
- './scripts/setup.sh' | |
- './scripts/setup.ps1' | |
- '.github/workflows/cache-factory.yaml' | |
- '.github/actions/**/*.yml' | |
- '.github/actions/**/*.yaml' | |
- '**/build.rs' | |
- 'core/prisma/**' | |
branches: | |
- main | |
# Cancel previous runs of the same workflow on the same branch. | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
make_cache: | |
strategy: | |
fail-fast: true | |
matrix: | |
settings: | |
- host: macos-latest | |
target: x86_64-apple-darwin | |
- host: macos-latest | |
target: aarch64-apple-darwin | |
- host: windows-latest | |
target: x86_64-pc-windows-msvc | |
- host: ubuntu-20.04 | |
target: x86_64-unknown-linux-gnu | |
name: 'Make Cache' | |
runs-on: ${{ matrix.settings.host }} | |
steps: | |
- name: Maximize build space | |
if: ${{ runner.os == 'Linux' }} | |
uses: easimon/maximize-build-space@master | |
with: | |
swap-size-mb: 3072 | |
root-reserve-mb: 6144 | |
remove-dotnet: 'true' | |
remove-codeql: 'true' | |
remove-haskell: 'true' | |
remove-docker-images: 'true' | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Symlink target to C:\ | |
if: ${{ runner.os == 'Windows' }} | |
shell: powershell | |
run: | | |
New-Item -ItemType Directory -Force -Path C:\nexus_target | |
New-Item -Path target -ItemType Junction -Value C:\nexus_target | |
- name: Setup System and Rust | |
uses: ./.github/actions/setup-system | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
target: ${{ matrix.settings.target }} | |
save-cache: 'true' | |
- name: Clippy | |
run: cargo clippy --workspace --all-features --target ${{ matrix.settings.target }} | |
- name: Compile (debug) | |
run: cargo test --workspace --all-features --no-run --target ${{ matrix.settings.target }} | |
- name: Compile (release) | |
run: cargo test --workspace --all-features --no-run --release --target ${{ matrix.settings.target }} |