Deploying from Source Control

Cloud Repositories

If you prefer to deploy your function source code from a source repository like GitHub or Bitbucket, you can use Google Cloud Source Repositories to deploy functions directly from branches or tags in your repository.

Set up Cloud Source Repositories

  1. Follow the Cloud Source Repositories getting started steps to set up your repository.
  2. Connect your GitHub or Bitbucket repository by following the hosted repository guide.

Once the connection between Cloud Source Repositories and your external repository is established, these repositories are kept synchronized so that you can commit to your chosen repository as you would normally.

Deploy using the gcloud tool

To deploy a function from your source repo, use the --source command line argument:

gcloud functions deploy NAME \
  --source https://source.developers.google.com/projects/PROJECT_ID/repos/REPOSITORY_ID/moveable-aliases/master/paths/SOURCE \
  --runtime RUNTIME \
  TRIGGER \
  [FLAGS...]

The command uses the following arguments to gcloud functions deploy:

Argument Description
NAME The name of the Cloud Function you are deploying. This name can only contain letters, numbers, underscores, and hyphens. Unless you specify the --entry-point flag, your code must contain a function with the same name.
--source PATH The location of the source code to deploy. The location can be a reference to a source repository, a path in Google Cloud Storage, or a local filesystem path. For details, see the gcloud Command Reference.
--runtime RUNTIME The name of the runtime you are using, such as nodejs6, nodejs8, or python37.
TRIGGER The trigger type for this function (see Events and Triggers).
FLAGS... (Optional) Additional flags you can specify during deployment, such as --stage-bucket or --entry-point. For a full reference, see the gcloud functions deploy documentation.

Next steps

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Functions Documentation