Skip to content

Migrate CI from WAC to vanilla GitHub Actions#2

Closed
maksvet wants to merge 3 commits intomasterfrom
1-migrate-wac-to-vanilla-yaml
Closed

Migrate CI from WAC to vanilla GitHub Actions#2
maksvet wants to merge 3 commits intomasterfrom
1-migrate-wac-to-vanilla-yaml

Conversation

@maksvet
Copy link
Contributor

@maksvet maksvet commented Feb 26, 2026

Summary

  • Replace WAC (Workflow-as-Code) TypeScript workflow generation with vanilla GitHub Actions YAML
  • CI, release, and hotfix workflows now use reusable workflows from elastio/gh-actions for golang checks and k8s deployment
  • Remove all WAC infrastructure (ci/workflows/, package.json, tsconfig.json, etc.) — 3,732 lines deleted, 173 added

Changes

Rewritten workflows (ci.yml, release.yml, release-hotfix.yml):

  • Use elastio/gh-actions/.github/workflows/golang-checks.yml@main for typos, fmt, lint, build
  • Use elastio/gh-actions/.github/workflows/deploy-to-k8s.yml@main for Helm deployments
  • Use elastio/gh-actions/actions/configure-env@main and cell-config@main composite actions
  • Strict shell default: bash --noprofile --norc -euo pipefail {0}
  • Removed unused TSAR_FERRIS_GITHUB_TOKEN from deploy-to-k8s passthrough

Deleted WAC infrastructure:

  • ci/workflows/ (TypeScript sources and lib/)
  • ci/package.json, ci/package-lock.json, ci/tsconfig.json
  • ci/wac.config.json, ci/eslint.config.mjs

Retained: ci/deployment/bs-cells.json (cell configuration)

Companion PR

elastio/gh-actions@0cef47c — composite actions and reusable workflows already pushed to master

Test plan

  • PR triggers ci.ymlgolang-checks + check-image-version pass
  • After merge: build-image + deploy-to-k8s trigger on push to master
  • release.yml / release-hotfix.yml verify via workflow_dispatch

Closes #1

- Add image.jobs.ts and deploy.jobs.ts for build/deploy job definitions
- Add release.wac.ts and release-hotfix.wac.ts workflows
- Extend constants.ts with AWS/ECR configuration
- Extend helper.steps.ts with AWS credential and ECR login steps
- Add check-image-version job to checks.jobs.ts
- Update ci.wac.ts with build-image, generate-sbom, deploy-to-k8s jobs
- Add Dockerfile for shared-services container image
- Add .helm/ directory with Chart and values for dev/staging/production
- Add .semver.yaml for version tracking
- Add bs-cells.json for cell deployment configuration
Replace WAC (Workflow-as-Code) TypeScript workflow generation with vanilla
GitHub Actions YAML. CI, release, and hotfix workflows now use reusable
workflows from elastio/gh-actions for golang checks and k8s deployment.

- Rewrite ci.yml, release.yml, release-hotfix.yml as plain YAML
- Use elastio/gh-actions golang-checks.yml reusable workflow
- Use elastio/gh-actions deploy-to-k8s.yml reusable workflow
- Use elastio/gh-actions configure-env and cell-config composite actions
- Remove all WAC infrastructure (ci/workflows/, package.json, tsconfig, etc)
- Retain ci/deployment/bs-cells.json for cell configuration

Closes #1
@maksvet maksvet self-assigned this Feb 26, 2026
The elastio/gh-actions default branch is master, not main.
@maksvet
Copy link
Contributor Author

maksvet commented Feb 26, 2026

Reverting — need to resolve repo visibility issues first

@maksvet maksvet closed this Feb 26, 2026
@maksvet maksvet deleted the 1-migrate-wac-to-vanilla-yaml branch February 26, 2026 21:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate CI from WAC to vanilla GitHub Actions

1 participant