mirror of
https://gitlab.com/asus-linux/asusctl.git
synced 2026-02-06 00:15:04 +01:00
Chore: Spare memory on CI
This commit is contained in:
@@ -1,22 +1,26 @@
|
||||
image: rust:latest
|
||||
|
||||
# Use shallow clone to reduce checkout size
|
||||
variables:
|
||||
GIT_DEPTH: "1"
|
||||
# Put cargo home and target under project dir so we can clean them easily
|
||||
CARGO_HOME: "$CI_PROJECT_DIR/.cargo"
|
||||
CARGO_TARGET_DIR: "$CI_PROJECT_DIR/ci-target"
|
||||
GIT_SUBMODULE_STRATEGY: normal
|
||||
|
||||
# Cache only cargo registries/git metadata to speed dependency fetches.
|
||||
# Avoid caching compiled `target` artifacts which are large and easily fill disk.
|
||||
.rust_cache: &rust_cache
|
||||
cache:
|
||||
# key: $CI_COMMIT_REF_SLUG
|
||||
key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
|
||||
paths:
|
||||
# Don't include `incremental` to save space
|
||||
# Debug
|
||||
- target/debug/build/
|
||||
- target/debug/deps/
|
||||
- target/debug/.fingerprint/
|
||||
- target/debug/.cargo-lock
|
||||
# Release
|
||||
- target/release/build/
|
||||
- target/release/deps/
|
||||
- target/release/.fingerprint/
|
||||
- target/release/.cargo-lock
|
||||
- .cargo/registry
|
||||
- .cargo/git
|
||||
|
||||
before_script:
|
||||
- df -h
|
||||
- echo "Cleaning stale targets to free space if present"
|
||||
- rm -rf "$CI_PROJECT_DIR/target" "$CI_PROJECT_DIR/ci-target" || true
|
||||
- apt-get update -qq && apt-get install -y -qq libudev-dev libgtk-3-dev grep llvm clang libclang-dev libsdl2-dev libsdl2-gfx-dev
|
||||
|
||||
stages:
|
||||
@@ -33,6 +37,9 @@ format:
|
||||
script:
|
||||
- rustup component add rustfmt || true
|
||||
- cargo fmt --check
|
||||
after_script:
|
||||
- du -sh "$CI_PROJECT_DIR/ci-target" || true
|
||||
- rm -rf "$CI_PROJECT_DIR/ci-target" || true
|
||||
|
||||
check:
|
||||
except:
|
||||
@@ -44,6 +51,8 @@ check:
|
||||
# deny currently catches too much
|
||||
#- cargo install cargo-deny && cargo deny
|
||||
- cargo install cargo-cranky && cargo cranky
|
||||
after_script:
|
||||
- rm -rf "$CI_PROJECT_DIR/ci-target" || true
|
||||
|
||||
test:
|
||||
except:
|
||||
@@ -52,6 +61,8 @@ test:
|
||||
script:
|
||||
- mkdir -p .git/hooks > /dev/null
|
||||
- cargo test --locked --all
|
||||
after_script:
|
||||
- rm -rf "$CI_PROJECT_DIR/ci-target" || true
|
||||
|
||||
release:
|
||||
only:
|
||||
@@ -64,6 +75,9 @@ release:
|
||||
paths:
|
||||
- vendor_asusctl*.tar.xz
|
||||
- cargo-config
|
||||
expire_in: 1 week
|
||||
after_script:
|
||||
- rm -rf vendor vendor_asusctl*.tar.xz "$CI_PROJECT_DIR/ci-target" || true
|
||||
|
||||
pages:
|
||||
stage: deploy
|
||||
@@ -74,11 +88,11 @@ pages:
|
||||
- cargo doc --locked --document-private-items --no-deps --workspace
|
||||
- rm -rf public
|
||||
- mkdir public
|
||||
- cp -R target/doc/* public
|
||||
- cp -R ci-target/doc/* public
|
||||
- cp extra/index.html public
|
||||
artifacts:
|
||||
paths:
|
||||
- public
|
||||
|
||||
variables:
|
||||
GIT_SUBMODULE_STRATEGY: normal
|
||||
expire_in: 1 week
|
||||
after_script:
|
||||
- rm -rf "$CI_PROJECT_DIR/ci-target" || true
|
||||
|
||||
Reference in New Issue
Block a user