The upstream skill gitlab-org/ci-cd/github-actions-to-gitlab-ci ships ~48 curated before/after pairs across its two reference files:
references/syntax-mapping.md — ~15 pairs covering triggers, jobs/stages, steps/scripts, runs-on, matrix, env/secrets, containers/services, artifacts, caching, conditional execution, reusable workflows, job control (timeout/continue-on-error/concurrency/permissions), outputs, workflow_dispatch inputs, and github.* context expressions
references/marketplace-actions.md — 33 pairs, one per Tier 1/2/3 action
This is canonical migration material curated by the GitLab CI team. Lifting it into chant gives us the test corpus, the regression-assertion fixtures, and the docs demos as a single dataset, aligned 1:1 with the ActionMapping[] entries from #87 + #88.
Layout:
lexicons/gitlab/src/migrate/from-github/fixtures/
syntax-mapping/
triggers/
input.yml # the GH workflow from the skill's before block
expected.gitlab-ci.yml # the GL pipeline from the skill's after block
expected-report.sarif # provenance the migration tool is expected to emit
matrix/
env-secrets/
...
marketplace-actions/
tier-1/
actions-checkout/
actions-setup-node/
...
tier-2/
tier-3/
Tests under migrate.test.ts iterate the fixture tree and assert chant migrate input.yml produces the expected YAML (canonicalised compare) and the expected SARIF provenance. A curated subset embeds in #94's migration.mdx as worked examples (don't render all 48 — pick ~6 representative ones).
Done when
Depends on: #85, #86, #87, #88. Blocks: #94.
Inspired by
gitlab-org/ci-cd/github-actions-to-gitlab-ci — references/syntax-mapping.md and references/marketplace-actions.md. Both files are MIT-licensed; their before/after blocks are the exact fixture content this issue ports.
The upstream skill
gitlab-org/ci-cd/github-actions-to-gitlab-ciships ~48 curated before/after pairs across its two reference files:references/syntax-mapping.md— ~15 pairs covering triggers, jobs/stages, steps/scripts,runs-on, matrix, env/secrets, containers/services, artifacts, caching, conditional execution, reusable workflows, job control (timeout/continue-on-error/concurrency/permissions), outputs,workflow_dispatchinputs, andgithub.*context expressionsreferences/marketplace-actions.md— 33 pairs, one per Tier 1/2/3 actionThis is canonical migration material curated by the GitLab CI team. Lifting it into chant gives us the test corpus, the regression-assertion fixtures, and the docs demos as a single dataset, aligned 1:1 with the
ActionMapping[]entries from #87 + #88.Layout:
Tests under
migrate.test.tsiterate the fixture tree and assertchant migrate input.ymlproduces the expected YAML (canonicalised compare) and the expected SARIF provenance. A curated subset embeds in #94'smigration.mdxas worked examples (don't render all 48 — pick ~6 representative ones).Done when
input.yml+expected.gitlab-ci.yml.expected-report.sarifcapturing the provenance the migration tool emits.migrate.test.tsiterates the fixture tree and asserts a match for each.migration.mdx(docs: GitLab lexicon migration page #94).LICENSE-3RD-PARTY(or equivalent) credits the upstream skill's MIT license for the lifted fixture content.Depends on: #85, #86, #87, #88. Blocks: #94.
Inspired by
gitlab-org/ci-cd/github-actions-to-gitlab-ci—references/syntax-mapping.mdandreferences/marketplace-actions.md. Both files are MIT-licensed; their before/after blocks are the exact fixture content this issue ports.