Agent skill
gitlab-ci-job-configuration
Use when defining GitLab CI jobs, configuring scripts, setting up environments, or managing job dependencies. Covers job structure and execution options.
Install this agent skill to your Project
npx add-skill https://github.com/TheBushidoCollective/han/tree/main/plugins/tools/gitlab-ci/skills/job-configuration
SKILL.md
GitLab CI - Job Configuration
Configure GitLab CI jobs with proper scripts, environments, and execution settings.
Basic Job Structure
job_name:
stage: test
image: node:20-alpine
before_script:
- npm ci
script:
- npm test
after_script:
- echo "Cleanup tasks"
rules:
- if: $CI_COMMIT_BRANCH == "main"
Script Configuration
Multi-Line Scripts
build:
script:
- echo "Building application..."
- npm run build
- echo "Build complete"
Script with Exit Codes
test:
script:
- npm test || exit 1
- npm run lint
allow_failure: false
Environment Configuration
deploy:production:
stage: deploy
script:
- ./deploy.sh
environment:
name: production
url: https://example.com
on_stop: stop:production
rules:
- if: $CI_COMMIT_BRANCH == "main"
when: manual
stop:production:
stage: deploy
script:
- ./teardown.sh
environment:
name: production
action: stop
when: manual
Job Rules
Conditional Execution
job:
rules:
- if: $CI_COMMIT_BRANCH == "main"
when: always
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
when: on_success
- when: never
Changes-Based Rules
test:frontend:
rules:
- changes:
- "src/frontend/**/*"
- "package.json"
Exists-Based Rules
docker:build:
rules:
- exists:
- Dockerfile
Job Dependencies
Using Dependencies
build:
stage: build
script: npm run build
artifacts:
paths:
- dist/
test:
stage: test
dependencies:
- build
script: npm test
Using Needs (DAG)
test:unit:
needs:
- job: build
artifacts: true
script: npm run test:unit
Parallel Jobs
Matrix Jobs
test:
parallel:
matrix:
- NODE_VERSION: ["18", "20", "22"]
OS: ["alpine", "bullseye"]
image: node:${NODE_VERSION}-${OS}
script: npm test
Simple Parallel
test:
parallel: 5
script: npm run test:shard
Resource Configuration
heavy_job:
tags:
- high-memory
resource_group: deploy
timeout: 2h
retry:
max: 2
when:
- runner_system_failure
- stuck_or_timeout_failure
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
create-blog-post
Research Reddit discussions and write a blog post about how Han addresses the topic
research-new-features
Research Claude AI/Code feature requests and discussions on Reddit
create-jutsu
Create a new technique plugin for a technology (language, tool, framework, or validation)
create-do
Create a new discipline plugin with specialized agents
create-hashi
Create a new bridge plugin for MCP server integration
plugin-development
Use when creating or modifying Han plugins. Covers plugin structure, configuration, hooks, skills, and best practices.
Didn't find tool you were looking for?