mirror of
https://github.com/magnus919/agent-skills.git
synced 2026-09-14 21:16:36 +03:00
Engineering: backend-engineering, frontend-engineering, data-engineering, ml-engineering, platform-engineering, qa-methodology Executive: go-to-market, legal-strategy, operational-design, org-design, product-strategy ml-engineering: added missing training-infrastructure.md reference qa-methodology: added test-data-management, performance-testing, security-testing references All frontmatter converted to agent-skills convention. Source: https://github.com/magnus919/hermes-profiles
3.6 KiB
3.6 KiB
CI/CD Pipelines — Reference
Pipeline Platforms
GitHub Actions
- Workflow structure:
.github/workflows/*.yml— triggers, jobs, steps, matrix builds - Key patterns: reusable workflows (
uses:with{owner}/{repo}/.github/workflows/{name}@{ref}), composite actions, OIDC for cloud auth, artifacts/pages for delivery - Secrets: GitHub Actions secrets, environment-level secrets, OIDC as an alternative to static keys
- Matrix builds:
strategy.matrixfor cross-platform/testing,fail-fastfor early exit - Self-hosted runners: scale sets, labels, network isolation, ephemeral runners
GitLab CI
- Pipeline structure:
.gitlab-ci.yml— stages, jobs, needs (DAG), artifacts, cache - Key patterns: multi-project pipelines, parent-child pipelines, merge request pipelines, scheduled pipelines
- Runners: shared vs specific, Docker executor, Kubernetes executor, tags, concurrency limits
- Registry: GitLab Container Registry integration, dependency proxy
Forgejo CI / Gitea Actions
- Structure:
.forgejo/workflows/*.ymlor.gitea/workflows/*.yml— compatible with GitHub Actions syntax - Runners: Forgejo Runner (act-based), self-hosted, labels for platform targeting
- Key differences from GitHub Actions: Lighter ecosystem, smaller action marketplace, often need to self-host runners
- Secrets: Forgejo repository/organization secrets, no OIDC built-in (use manual token exchange)
Jenkins
- Pipeline structure:
Jenkinsfile— declarative (pipeline { }) vs scripted (node { }) - Key concepts: agents, stages, steps, post-build actions, shared libraries, Blue Ocean
- Cloud integration: Jenkins X for Kubernetes, plugin ecosystem, custom agents via Docker
CircleCI
- Pipeline structure:
.circleci/config.yml— orbs, executors, jobs, workflows (DAG) - Key concepts: contexts (env sharing), workspaces/persist-to-workspace, parallelism, test splitting
- Orbs: reusable config packages (official and community orbs for AWS, Slack, browsers, etc.)
GitOps
Argo CD
- Core model: Declarative GitOps — desired state in Git repository, Argo CD syncs to cluster
- Key concepts: Applications, Projects, Sync strategies (auto/manual), sync waves, prune policies, health checks
- Multi-cluster: Hub-and-spoke, cluster registration, RBAC per cluster
- Progressive delivery: Rollouts, canary deployments, blue-green, traffic mirroring (Argo Rollouts add-on)
- Patterns: App-of-apps, Kustomize/Helm integration, config management plugins (CMP), ApplicationSets for multi-env/deployment
Flux
- Core model: GitOps toolkit — source → kustomize/helm → sync to cluster
- Key components: Source Controller, Kustomize Controller, Helm Controller, Notification Controller, Image Automation
- Key concepts: GitRepository/Bucket sources, Kustomization/HelmRelease, OCIRepository, ImagePolicy
- Multi-tenancy: Namespace isolation, cross-namespace references, access controls
Release Automation
- Semantic versioning:
MAJOR.MINOR.PATCH— breaking changes, features, fixes; pre-release suffixes, build metadata - Changelog generation: Conventional Commits → automated changelog (git-cliff, standard-version, semantic-release)
- Artifact provenance: SLSA levels, attestation (in-toto), SBOM generation (Syft, Trivy), signing (Cosign)
- Release gates: Manual approvals (GitHub Environments, GitLab Deployments), automatic rollback on health check failure
- Artifact registries: Container registries (Docker Hub, GHCR, GitLab Registry, ECR, GAR), package registries (NPM, PyPI, Maven)