mirror of
https://github.com/bahdotsh/wrkflw.git
synced 2025-12-16 03:37:49 +01:00
This commit adds full support for GitLab CI/CD pipelines: - Add GitLab CI pipeline models with complete spec support (jobs, stages, artifacts, cache, etc.) - Implement GitLab CI/CD pipeline parsing and validation - Add schema validation against GitLab CI JSON schema - Support automatic pipeline type detection based on filename and content - Add GitLab-specific CLI commands and flags - Implement pipeline conversion for executor compatibility - Add validation for common GitLab CI configuration issues - Update CLI help text to reflect GitLab CI/CD support - Support listing both GitHub and GitLab pipeline files This expands wrkflw to be a multi-CI tool that can validate and execute both GitHub Actions workflows and GitLab CI/CD pipelines locally.
45 lines
674 B
YAML
45 lines
674 B
YAML
stages:
|
|
- build
|
|
- test
|
|
- deploy
|
|
|
|
variables:
|
|
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo"
|
|
|
|
# Default image for all jobs
|
|
image: rust:1.76
|
|
|
|
build:
|
|
stage: build
|
|
script:
|
|
- cargo build --release
|
|
artifacts:
|
|
paths:
|
|
- target/release/
|
|
expire_in: 1 week
|
|
|
|
test:
|
|
stage: test
|
|
script:
|
|
- cargo test
|
|
dependencies:
|
|
- build
|
|
|
|
lint:
|
|
stage: test
|
|
script:
|
|
- rustup component add clippy
|
|
- cargo clippy -- -D warnings
|
|
- cargo fmt -- --check
|
|
|
|
deploy:
|
|
stage: deploy
|
|
script:
|
|
- echo "Deploying application..."
|
|
- cp target/release/wrkflw /usr/local/bin/
|
|
only:
|
|
- main
|
|
environment:
|
|
name: production
|
|
dependencies:
|
|
- build |