--input-set flag not applying runtime inputs when executing pipeline
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 22
- Forks
- 10
- Avg merge
- 14h 28m
- Merged PRs (30d)
- 54
Description
The harness execute pipeline command with --input-set flag fails with "serviceRef is required" error, even though the input set contains valid serviceRef value. Debug logs show "execute pipeline: no runtime inputs provided", indicating the CLI is not fetching/merging the input set before calling the execute API.
CLI Version: 3.7.1
Environment:
OS: Linux (GitHub Actions runner)
Installation method: curl -fsSL https://raw.githubusercontent.com/harness/cli/main/install.sh | sh
Command:
harness execute pipeline "testusinginputset"
--follow
--debug
--input-set inputsettest
Expected Behavior:
The CLI should fetch the input set, merge the runtime inputs with the pipeline, and execute successfully.
Actual Behavior:
The CLI logs "execute pipeline: no runtime inputs provided" and the API returns 400 error because serviceRef is not provided.
Workaround:
Executing the same pipeline with the same input set via the Harness API directly works correctly. Using --yaml or --yaml-file to pass runtime inputs inline also works.
Additional Context:
The input set is marked as valid: true in Harness and outdated: false. The issue appears to be that the CLI passes inputSetIdentifiers as a query parameter but does not send the merged runtime inputs in the request body
Feel free to copy this and adjust any details as needed.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the harness execute pipeline command and reproduce the issue using --input-set inputsettest with --debug. Trace where inputSetIdentifiers and runtime inputs are assembled before the execute API request, comparing that path with --yaml or --yaml-file. Done means the input set's serviceRef reaches the request and the pipeline executes successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100