update ci rust version

This commit is contained in:
Graham McIntire 2026-01-09 13:34:43 -06:00
parent b0fb9c2a78
commit 125b0f427e
No known key found for this signature in database
4 changed files with 24 additions and 3 deletions

View file

@ -17,7 +17,7 @@ variables:
# Test stage - compile and check code
test:
stage: test
image: rust:1.75-alpine
image: rust:1.82-alpine
before_script:
- apk add --no-cache musl-dev
script:

View file

@ -193,7 +193,12 @@ docker run --rm \
### Test Before Pushing
**Prerequisites**: Rust 1.82+ (required for Cargo.lock v4)
```bash
# Check Rust version
rustc --version # Should be 1.82.0 or later
# Check compilation
cargo check --release
@ -286,6 +291,22 @@ Recommended settings:
## Troubleshooting
### Pipeline Fails with "lock file version not understood"
**Symptom**:
```
error: failed to parse lock file at: /builds/graham/towerops-agent/Cargo.lock
Caused by:
lock file version `4` was found, but this version of Cargo does not understand this lock file
```
**Cause**: Cargo.lock version 4 requires Rust 1.77+
**Fix**: The CI configuration uses Rust 1.82. If you see this error:
1. Update `.gitlab-ci.yml` to use `rust:1.82-alpine` or later
2. Update `Dockerfile` to use `rust:1.82-alpine` or later
3. Regenerate Cargo.lock: `cargo update` (if needed)
### Pipeline Fails at Test Stage
**Symptom**: `cargo check` or `cargo clippy` fails

View file

@ -1,5 +1,5 @@
# Build stage
FROM rust:1.75-alpine AS builder
FROM rust:1.82-alpine AS builder
WORKDIR /app

View file

@ -91,7 +91,7 @@ If the API is unreachable, metrics are stored locally for up to 24 hours. When c
### Prerequisites
- Rust 1.75 or later
- Rust 1.82 or later (required for Cargo.lock v4)
- SQLite development libraries
### Build