mirror of
https://github.com/bahdotsh/wrkflw.git
synced 2026-02-24 03:49:45 +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.
40 lines
883 B
YAML
40 lines
883 B
YAML
stages:
|
|
- build
|
|
- test
|
|
- deploy
|
|
|
|
# Including external files
|
|
include:
|
|
- local: '.gitlab/ci/build.yml' # Will be created in a moment
|
|
- local: '.gitlab/ci/test.yml' # Will be created in a moment
|
|
- template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml' # Built-in template
|
|
|
|
variables:
|
|
RUST_VERSION: "1.76"
|
|
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo"
|
|
|
|
# Default settings for all jobs
|
|
default:
|
|
image: rust:${RUST_VERSION}
|
|
before_script:
|
|
- rustc --version
|
|
- cargo --version
|
|
|
|
# Main pipeline jobs that use the included templates
|
|
production_deploy:
|
|
stage: deploy
|
|
extends: .deploy-template # This template is defined in one of the included files
|
|
variables:
|
|
ENVIRONMENT: production
|
|
only:
|
|
- main
|
|
when: manual
|
|
|
|
staging_deploy:
|
|
stage: deploy
|
|
extends: .deploy-template
|
|
variables:
|
|
ENVIRONMENT: staging
|
|
only:
|
|
- staging
|
|
when: manual |