gitlab-ci-job-configuration

GitLab CI - Job Configuration

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "gitlab-ci-job-configuration" with this command: npx skills add thebushidocollective/han/thebushidocollective-han-gitlab-ci-job-configuration

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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

android-jetpack-compose

No summary provided by upstream source.

Repository SourceNeeds Review
General

fastapi-async-patterns

No summary provided by upstream source.

Repository SourceNeeds Review
General

storybook-story-writing

No summary provided by upstream source.

Repository SourceNeeds Review
General

atomic-design-fundamentals

No summary provided by upstream source.

Repository SourceNeeds Review