Answer a question

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://docs.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?

Answers

No, generally you do not need quotes. The workflow file is YAML and this is all about quotes in YAML:

YAML: Do I need quotes for strings in YAML?

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐