Allow defining an executor that references another executor with parameter overrides
P
Peter Darton
Today a job can invoke an executor with arguments, for example executor: { name: win/default, shell: bash.exe }. Under top-level or orb executors:, you can only define a concrete environment (machine / docker / macos, optional shell, and so on) or a string rename of another executor. You cannot define a reusable executor that wraps an existing named executor and fixes some of its parameters.
That means patterns like "Windows orb default image and size, but Bash as the default shell" cannot be packaged once for jobs and orb consumers. The supported workaround is to re-declare the underlying machine image, resource_class, and shell yourself in the project or orb, which duplicates the upstream executor and drifts when the upstream orb changes.
Please support defining an executor as a reference to another executor plus parameter overrides, so the override is set once at definition time and inherited by every job that uses the new name.