Feature/refactor pipeline and commands#42
Draft
marghidanu wants to merge 7 commits intomasterfrom
Draft
Conversation
Replace raw Hash(String, String) with a named type alias Werk::Variables throughout the codebase. Adds a Variables.parse class method for parsing CLI key=value pairs. Updates all consumers including Pipeline, Context, Config, MCP tools, and specs.
- Simplify Pipeline constructor (remove YAGNI scheduler parameter) - Inline signal trap/reset directly in Pipeline#run - Use type-based pattern matching for executor dispatch instead of strings - Replace lazy Docker client init with eager getter - Use each_slice.with_index for batch tracking - Use Time.utc instead of Time.local, has_job? via any? - Return String from PipelineResult#to_table
Move entrypoint field from DockerJob to base Job as Array(String) with default ["/bin/sh", "-c"]. Deprecate the old interpreter field. This removes the hardcoded "-c" assumption and allows non-shell interpreters like ruby -e or python -c to work correctly.
Replace two-level module nesting (e.g. module Werk::Commands + module Run) with collapsed declarations (module Werk::Commands::Run) across all command files and application module. Reduces indentation and removes redundant end keywords.
Rename `working_dir`, `directory`, and `--context` flag to consistently use `cwd` across Context, ExecutionResult, Pipeline, and commands.
Vault encrypt, decrypt, and rekey were missing OptionParser missing_option handlers, unlike the run and plan commands.
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.
No description provided.