I defined the input to a Github workflow action like so. To create the string values, I enclose the substitution in double-quotes, to follow how it would be in Bash:
uses: dmnemec/copy_file_to_another_repo_action@v1.0.4
env:
API_TOKEN_GITHUB: ${{ secrets.GH_API_TOKEN }}
with:
source_file: "${{ steps.create-copy-file.outputs.filename }}.yaml"
destination_repo: "${{ github.repository_owner }}/repo"
destination_folder: "releases/${{ steps.create-copy-file.outputs.target_folder }}"
user_email: "user@mail.com"
user_name: "User Name"
However, examples in Github shows that I can substitute for the value without needing to enclose it in quotes. I tried defining the values above without quotes and they seem to work i.e. the file is copied correctly to the target repo and folder.
uses: dmnemec/copy_file_to_another_repo_action@v1.0.4
env:
API_TOKEN_GITHUB: ${{ secrets.GH_API_TOKEN }}
with:
source_file: ${{ steps.create-copy-file.outputs.filename }}.yaml
destination_repo: ${{ github.repository_owner }}/repo
destination_folder: releases/${{ steps.create-copy-file.outputs.target_folder }}
user_email: user@mail.com
user_name: "User Name"
I tried looking for examples in Github to know whether this practice is allowed or suggested but couldn't find any. The one example I have found is from this Azure developer page (example no.6): https://learn.microsoft.com/en-us/azure/developer/github/github-variable-substitution.
Another example, wraps the string in double quotes.
My question is, is it necessary to enclose string substitution in Github workflow in single/double quotes? Is this an officially supported feature or an unintended feature?