ernes772tojaden/Deploy to Cloud Run

Use this action to deploy a container or source code to Google Cloud Run.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
serviceID of the service or fully-qualified identifier of the service. This is required unless providing `metadata` or `job`.no
jobID of the job or fully-qualified identifier of the job. This is required unless providing `metadata` or `service`.no
metadataYAML service description for the Cloud Run service. This is required unless providing `service` or `job`.no
image(Required, unless providing `metadata` or `source`) Fully-qualified name of the container image to deploy. For example: gcr.io/cloudrun/hello:latest or us-docker.pkg.dev/my-project/my-container/image:1.2.3no
source(Required, unless providing `metadata`, `image`, or `job`) Path to source to deploy. If specified, this will deploy the Cloud Run service from the code specified at the given source directory. Learn more about the required permissions in [Deploying from source code](https://cloud.google.com/run/docs/deploying-source-code).no
suffixString suffix to append to the revision name. Revision names always start with the service name automatically. For example, specifying `v1` for a service named `helloworld`, would lead to a revision named `helloworld-v1`. This option only applies to services.no
env_varsList of environment variables that should be set in the environment. These are comma-separated or newline-separated `KEY=VALUE`. Keys or values that contain separators must be escaped with a backslash (e.g. `\,` or `\\n`) unless quoted. Any leading or trailing whitespace is trimmed unless values are quoted. env_vars: |- FRUIT=apple SENTENCE=" this will retain leading and trailing spaces " This value will only be set if the input is a non-empty value. If a non-empty value is given, the field values will be overwritten (not merged). To remove all values, set the value to the literal string `{}`. If both `env_vars` and `env_vars_file` are specified, the keys in `env_vars` will take precedence over the keys in `env_vars_file`.no
env_vars_filePath to a file on disk, relative to the workspace, that defines environment variables. The file can be newline-separated KEY=VALUE pairs, JSON, or YAML format. If both `env_vars` and `env_vars_file` are specified, the keys in env_vars will take precedence over the keys in env_vars_file. NAME=person EMAILS=foo@bar.com\,zip@zap.com When specified as KEY=VALUE pairs, the same escaping rules apply as described in `env_vars`. You do not have to escape YAML or JSON. If both `env_vars` and `env_vars_file` are specified, the keys in `env_vars` will take precedence over the keys in `env_vars_file`. **⚠️ DEPRECATION NOTICE:** This input is deprecated and will be removed in the next major version release.no
env_vars_update_strategyControls how the environment variables are set on the Cloud Run service. If set to "merge", then the environment variables are _merged_ with any upstream values. If set to "overwrite", then all environment variables on the Cloud Run service will be replaced with exactly the values given by the GitHub Action (making it authoritative).yesmerge
secretsList of KEY=VALUE pairs to use as secrets. These are comma-separated or newline-separated `KEY=VALUE`. Keys or values that contain separators must be escaped with a backslash (e.g. `\,` or `\\n`) unless quoted. Any leading or trailing whitespace is trimmed unless values are quoted. These can either be injected as environment variables or mounted as volumes. Keys starting with a forward slash '/' are mount paths. All other keys correspond to environment variables: with: secrets: |- # As an environment variable: KEY1=secret-key-1:latest # As a volume mount: /secrets/api/key=secret-key-2:latest This value will only be set if the input is a non-empty value. If a non-empty value is given, the field values will be overwritten (not merged). To remove all values, set the value to the literal string `{}`.no
secrets_update_strategyControls how the secrets are set on the Cloud Run service. If set to `merge`, then the secrets are merged with any upstream values. If set to `overwrite`, then all secrets on the Cloud Run service will be replaced with exactly the values given by the GitHub Action (making it authoritative).yesmerge
labelsList of labels that should be set on the function. These are comma-separated or newline-separated `KEY=VALUE`. Keys or values that contain separators must be escaped with a backslash (e.g. `\,` or `\\n`) unless quoted. Any leading or trailing whitespace is trimmed unless values are quoted. labels: |- labela=my-label labelb=my-other-label This value will only be set if the input is a non-empty value. If a non-empty value is given, the field values will be overwritten (not merged). To remove all values, set the value to the literal string `{}`. Google Cloud restricts the allowed values and length for labels. Please see the Google Cloud documentation for labels for more information.no
skip_default_labelsSkip applying the special annotation labels that indicate the deployment came from GitHub Actions. The GitHub Action will automatically apply the following labels which Cloud Run uses to enhance the user experience: managed-by: github-actions commit-sha: <sha> Setting this to `true` will skip adding these special labels.nofalse
tagTraffic tag to assign to the newly-created revision. This option only applies to services.no
timeoutMaximum request execution time, specified as a duration like "10m5s" for ten minutes and 5 seconds.no
flagsSpace separate list of additional Cloud Run flags to pass to the deploy command. This can be used to apply advanced features that are not exposed via this GitHub Action. For Cloud Run services, this command will be `gcloud run deploy`. For Cloud Run jobs, this command will be `gcloud jobs deploy`. with: flags: '--add-cloudsql-instances=...' Flags that include other flags must quote the _entire_ outer flag value. For example, to pass `--args=-X=123`: with: flags: '--add-cloudsql-instances=... "--args=-X=123"' See the [complete list of flags](https://cloud.google.com/sdk/gcloud/reference/run/deploy#FLAGS) for more information. Please note, this GitHub Action does not parse or validate the flags. You are responsible for making sure the flags are available on the gcloud version and subcommand.no
no_trafficIf true, the newly deployed revision will not receive traffic. This option only applies to services.nofalse
revision_trafficComma-separated list of revision traffic assignments. with: revision_traffic: 'my-revision=10' # percentage To update traffic to the latest revision, use the special tag "LATEST": with: revision_traffic: 'LATEST=100' This is mutually-exclusive with `tag_traffic`. This option only applies to services.no
tag_trafficComma-separated list of tag traffic assignments. with: tag_traffic: 'my-tag=10' # percentage This is mutually-exclusive with `revision_traffic`. This option only applies to services.no
update_traffic_flagsSpace separate list of additional Cloud Run flags to pass to the `gcloud run services update-traffic` command. This can be used to apply advanced features that are not exposed via this GitHub Action. This flag only applies when `revision_traffic` or `tag_traffic` is set. with: traffic_flags: '--set-tags=...' Flags that include other flags must quote the _entire_ outer flag value. For example, to pass `--args=-X=123`: with: flags: '--set-tags=... "--args=-X=123"' See the [complete list of flags](https://cloud.google.com/sdk/gcloud/reference/run/services/update#FLAGS) for more information. Please note, this GitHub Action does not parse or validate the flags. You are responsible for making sure the flags are available on the gcloud version and subcommand.no
project_idID of the Google Cloud project in which to deploy the service.no
regionRegion in which the Cloud Run services are deployed.nous-central1
gcloud_versionVersion of the Cloud SDK to install. If unspecified or set to "latest", the latest available gcloud SDK version for the target platform will be installed. Example: "290.0.1".no
gcloud_componentVersion of the Cloud SDK components to install and use.no
namedescription
urlThe URL of the Cloud Run service.