harness / harness/cli

--input-set flag not applying runtime inputs when executing pipeline

Open
#222 1 comment 0 reactions 0 assignees View on GitHub

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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.