multica-artifact-cicd-sync · git:20260910.8db057c · 2026-09-10 · sha256 80e483775ee71f83
multica-artifact-cicd-sync git:20260910.8db057cA
Immutable. This exact content is served forever at /api/v1/blob/80e483775ee71f83.
---
name: multica-artifact-cicd-sync
description: CI/CD artifact-orchestration skill (placeholder shell): after G2 PASS and code push, call the underlying CI/CD platform skill to trigger dev/sit builds, write back to the Issue, and return the deploy URL. Parameters auto-discovered from the CI API; the orchestration layer never hardcodes parameter names. Concrete platform in the multica-platform-* layer.
metadata:
layer: orchestration
orchestrates:
- multica-platform-jenkins
- multica-platform-jira
runtime:
python: ">=3.10"
---
# Artifact · CI/CD Sync (orchestration, placeholder shell)
## Purpose
After G2 PASS + push, call the underlying CI/CD platform skill to trigger build/deploy. **Parameters auto-discovered from the CI API**; the orchestration layer never hardcodes parameter names.
## Agent flow
```text
1. discover-only (recommended first, check missing):
python scripts/trigger_cicd.py --issue <ISSUE-KEY> --env sit --branch release/<ISSUE-KEY>-<slug> --discover-only --json
2. trigger (**only the Issue deploy branch, never a feature branch**):
python scripts/trigger_cicd.py --issue <ISSUE-KEY> --env sit --branch release/<ISSUE-KEY>-<slug> --json
3. missing params: append --param name=value
```
## Parameter resolution
Default (`use_last_success=true`):
1. Read all build params of `lastSuccessfulBuild`
2. **Only** replace branch-type params (branchName / branch / gitBranch …) with `--branch`
3. `--param` may override any item; `--no-last-success` disables this
---
## Workflow A: dev deploy
```bash
python scripts/trigger_cicd.py --issue <ISSUE-KEY> --env dev --service <service> --branch release/<ISSUE-KEY>-<slug> --json
```
## Workflow B: sit deploy (G2.5 → Tester T3)
```bash
python scripts/trigger_cicd.py --issue <ISSUE-KEY> --env sit --branch release/<ISSUE-KEY>-<slug> --json
```
Issue-prefix → logical-service mapping in `config.yaml` → `issue_service_map`, so `--service` is optional.
## Workflow C: multi-service
```bash
python scripts/trigger_cicd.py --env sit --service svc-a,svc-b --branch release/<ISSUE-KEY>-<slug> --json
```
## Usage (role side)
```text
After G2 PASS and code push, use multica-artifact-cicd-sync to trigger CI/CD and return the deploy link.
```
## Why it works
The orchestration layer depends only on the script; Issue-prefix auto-maps to the logical service in `jobs-catalog.yaml`. The underlying CI system (Jenkins / GitLab CI / GitHub Actions / etc.) is wrapped by the `multica-platform-*` layer, invisible to this skill.