GitHub Actions composite action "Input required and not supplied" in CI
A composite action input declared required: true must be passed by every caller step. If the calling with: omits it, the action fails with "Input required and not supplied".
What this error means
The step using the composite action fails with "Input required and not supplied: X", or an inner run step sees an empty value for that input.
Error: Input required and not supplied: token
# action.yml declares "token" as required: true but the caller passed no with.tokenCommon causes
A required input omitted by the caller
The action.yml marks the input required, but the calling step's with: block does not provide it.
A typo in the input name
The with: key does not match the declared input name, so the required input stays unset.
How to fix it
Pass the required input in with:
- Read which input the action marks required.
- Add it to the calling step with: block with the exact name.
- Re-run so the action receives the input.
- uses: ./.github/actions/setup
with:
token: ${{ secrets.GITHUB_TOKEN }}Give the input a default if optional
If most callers use the same value, declare a default in action.yml instead of requiring it.
inputs:
token:
required: false
default: ${{ github.token }}How to prevent it
- Document required inputs in the composite action README.
- Give defaults to inputs that are usually identical across callers.
- Keep with: keys aligned with declared input names.