So I have an Orb which is parameterised like below
parameters:
para1:
default: "exec"
type: string
para2:
default: 3456
type: integer
executor: abc-<<parameters.para1>>-<<parameters.para2>>
When I try to publish this Orb it throws an error Cannot find a definition for executor named abc-TEST_STRING-1
.
My question is why are the parameters being replaced by “TEST_STRING” and “1” instead of “exec” and “3456”.
The workaround I have found is to just create an executor named abc-TEST_STRING-1 and publishing orb works fine, also when a workflow calls this job it parameters get replaced correctly.
Is this is a bug or am I doing something wrong?
Without your full config.yml file it is hard to tell what is going wrong on your end.
The following works for me.
version: 2.1 # Use 2.1 to enable using orbs and other features.
executors:
abc-exec-3456:
machine:
image: ubuntu-2004:current
resource_class: medium
jobs:
build:
parameters:
para1:
default: "exec"
type: string
para2:
default: 3456
type: integer
executor: abc-<<parameters.para1>>-<<parameters.para2>>
steps:
- run:
name: echo the parameters
command: |
echo << parameters.para1 >>
echo << parameters.para2 >>
workflows:
build_and_test:
jobs:
- build
Hi,
Thanks for your reply. But this I am talking about an Orb and not config.yml.
I know it works perfectly fine in config.yml but when you have your job and executor in an Orb this does not work.
The orb will fail while pack step.
Consider below as an job.yml in an orb and try to pack it
parameters:
para1:
default: "exec"
type: string
para2:
default: 3456
type: integer
executor: abc-<<parameters.para1>>-<<parameters.para2>>
step:
- any steps
Sorry, I missed the context of your original post.
It is going to be best to raise a support ticket so the issue can be passed on to the internal team that manages the ORB sub-system, as many of the people helping out in the forums are just volunteers and we do not have direct access to the teams.