Boolean inputs are not actually booleans in composite actions
@thboop is already working on this.
Since Nov 23, 2022.
- Dominant language
- C#
- Stars
- 6.3k
- Forks
- 1.4k
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 24
Description
Describe the bug
I'm not sure if closed issues are monitored, as there was no reaction from official side at all. This is a new issue related to https://github.com/actions/runner/issues/1483.
For composite actions boolean inputs are not actually booleans.
To Reproduce
inputs:
...
generate-release-notes:
description: ...
required: false
type: boolean
default: false
runs:
using: composite
steps:
- name: Create Release
uses: actions/github-script@v6
with:
script: |
github.rest.repos.createRelease({
owner: context.repo.owner,
repo: context.repo.repo,
...
generate_release_notes: ${{ inputs.generate-release-notes && 'true' || 'false' }}
});
Caller:
- uses: flobernd/actions/github/create-release@master
with:
tag-name: v1.2.4
generate-release-notes: true
This line always evaluates to false:
generate_release_notes: ${{ inputs.generate-release-notes && 'true' || 'false' }}
The explicit syntax does incorrectly evaluate to false as well:
generate_release_notes: ${{ inputs.generate-release-notes == true && 'true' || 'false' }}
Correct behavior is only observed when using string semantics:
generate_release_notes: ${{ inputs.generate-release-notes == 'true' && 'true' || 'false' }}
Expected behavior
generate_release_notes: ${{ inputs.generate-release-notes && 'true' || 'false' }}
generate_release_notes: ${{ inputs.generate-release-notes == true && 'true' || 'false' }}
Evaluates to true.
Runner Version and Platform
GitHub managed runners (latest version). All platforms.
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.
Assessment
This issue has not been assessed yet.