feat(process-compose): add parity with gitlab and github backends#100
Merged
Conversation
terlar
commented
Jun 3, 2026
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
86c711f to
b0d9740
Compare
- 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
0b64b28 to
b2e9a23
Compare
- 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
b2e9a23 to
8eb67da
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.