Loading...
Loading...
Validate, lint, audit, or fix .gitlab-ci.yml pipelines, stages, and jobs.
npx skill4agent add akin-ozer/cc-devops-skills gitlab-ci-validator.gitlab-ci.yml.gitlab-ci.yml# Ensure validator scripts are executable
chmod +x devops-skills-plugin/skills/gitlab-ci-validator/scripts/*.sh \
devops-skills-plugin/skills/gitlab-ci-validator/scripts/*.py
# Required runtime
python3 --versionVALIDATOR="bash devops-skills-plugin/skills/gitlab-ci-validator/scripts/validate_gitlab_ci.sh"--test-onlybash devops-skills-plugin/skills/gitlab-ci-validator/scripts/install_tools.sh# 1) Full validation (syntax + best practices + security)
$VALIDATOR .gitlab-ci.yml
# 2) Syntax and schema only (required first gate)
$VALIDATOR .gitlab-ci.yml --syntax-only
# 3) Best-practices only (recommended)
$VALIDATOR .gitlab-ci.yml --best-practices
# 4) Security only (required before merge)
$VALIDATOR .gitlab-ci.yml --security-only
# 5) Optional local pipeline structure test (needs gitlab-ci-local + Docker)
$VALIDATOR .gitlab-ci.yml --test-only
# 6) Strict mode (treat best-practice warnings as failure)
$VALIDATOR .gitlab-ci.yml --strict2--syntax-only3--best-practices4--security-onlycriticalhigh5--test-only6--strictcriticalhighmediumlowsuggestionyaml-syntaxjob-stage-undefineddependencies-undefined-jobcache-missingartifact-no-expirationdag-optimizationhardcoded-passwordcurl-pipe-bashinclude-remote-unverifieddevops-skills-plugin/skills/gitlab-ci-validator/docs/gitlab-ci-reference.mddevops-skills-plugin/skills/gitlab-ci-validator/docs/best-practices.mddevops-skills-plugin/skills/gitlab-ci-validator/docs/common-issues.mdpython3PyYAMLpython_wrapper.sh.venvpyyamlpyyamlgitlab-ci-localnodedocker--test-onlychmod$VALIDATOR examples/basic-pipeline.gitlab-ci.yml --syntax-only
$VALIDATOR examples/basic-pipeline.gitlab-ci.yml --security-only$VALIDATOR .gitlab-ci.yml --strictstages:
- validate
validate_gitlab_ci:
stage: validate
script:
- chmod +x devops-skills-plugin/skills/gitlab-ci-validator/scripts/*.sh devops-skills-plugin/skills/gitlab-ci-validator/scripts/*.py
- bash devops-skills-plugin/skills/gitlab-ci-validator/scripts/validate_gitlab_ci.sh .gitlab-ci.yml --strict# Syntax validator (via wrapper for PyYAML fallback)
bash devops-skills-plugin/skills/gitlab-ci-validator/scripts/python_wrapper.sh \
devops-skills-plugin/skills/gitlab-ci-validator/scripts/validate_syntax.py .gitlab-ci.yml
# Best-practices validator
bash devops-skills-plugin/skills/gitlab-ci-validator/scripts/python_wrapper.sh \
devops-skills-plugin/skills/gitlab-ci-validator/scripts/check_best_practices.py .gitlab-ci.yml
# Security validator
bash devops-skills-plugin/skills/gitlab-ci-validator/scripts/python_wrapper.sh \
devops-skills-plugin/skills/gitlab-ci-validator/scripts/check_security.py .gitlab-ci.ymlnamedescriptionchmodgitlab-ci-local