Skip to content

feat(process-compose): add parity with gitlab and github backends#100

Merged
terlar merged 2 commits into
mainfrom
feat/process-compose-parity
Jun 4, 2026
Merged

feat(process-compose): add parity with gitlab and github backends#100
terlar merged 2 commits into
mainfrom
feat/process-compose-parity

Conversation

@terlar

@terlar terlar commented Jun 3, 2026

Copy link
Copy Markdown
Owner
  • Map job env attrset to process-compose environment list format
  • Use process_completed condition for optional needs and runAlways jobs
  • Inline pipelineCall child pipeline jobs as namespaced processes with a sentinel in the process-compose backend
  • Extract gitlab-ci job rendering into module/jobs/gitlab-ci.nix
  • Extract process-compose job rendering into module/jobs/process-compose.nix
  • Trim module/jobs/default.nix to an imports-only file
  • Change per-job process-compose freeformType from deferredModule to lib.types.anything so freeform keys evaluate to plain values
  • Guard command and depends_on emission with lib.mkIf to avoid empty fields in process definitions
  • Fix eval-process-compose in tests to evaluate the deferredModule settings value through lib.evalModules
  • Add tests for env, needs condition, and pipelineCall inlining behavior

@terlar terlar force-pushed the feat/process-compose-parity branch 7 times, most recently from 86c711f to b0d9740 Compare June 4, 2026 07:29
- Extract gitlab-ci helpers from module/lib/default.nix into
  module/lib/gitlab-ci.nix and scope them under ci-lib.gitlab-ci
- Extract gitlab-ci job rendering from module/jobs/default.nix into
  module/jobs/gitlab-ci.nix
- Update module/jobs/job/gitlab-ci.nix to use ci-lib.gitlab-ci.*
- Trim module/jobs/default.nix to imports + process-compose passthrough
@terlar terlar force-pushed the feat/process-compose-parity branch 3 times, most recently from 0b64b28 to b2e9a23 Compare June 4, 2026 07:48
- Map job env attrset to process-compose environment list format
- Use process_completed condition for optional needs and runAlways jobs
- Add before_script option for per-job setup commands
- Inline pipelineCall child pipeline jobs as namespaced processes with
  a sentinel in the process-compose backend
- Extract process-compose job rendering into module/jobs/process-compose.nix
- Trim module/jobs/default.nix to an imports-only file
- Change per-job process-compose freeformType from deferredModule to
  lib.types.anything so freeform keys evaluate to plain values
- Guard command and depends_on emission with lib.mkIf to avoid empty
  fields in process definitions
- Fix eval-process-compose in tests to evaluate the deferredModule
  settings value through lib.evalModules
- Fix child pipeline settings leaking processes into parent output
- Simplify extra/process-compose.nix to a direct pipeline passthrough
- Add tests for env, needs condition, pipelineCall inlining, and
  before_script behavior
- Add module/lib/process-compose.nix with mkDependsOn helper
@terlar terlar force-pushed the feat/process-compose-parity branch from b2e9a23 to 8eb67da Compare June 4, 2026 07:53
@terlar terlar merged commit 313956c into main Jun 4, 2026
1 check passed
@terlar terlar deleted the feat/process-compose-parity branch June 4, 2026 07:56
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.

1 participant