GoogleCloudPlatform / cloud-builders-community

Community-contributed images for Google Cloud Build
https://cloud.google.com/cloud-build/
Apache License 2.0
1.26k stars 856 forks source link
build docker google-cloud-build google-cloud-platform google-containers

Google Cloud Build community images

This repository contains source code for community-contributed Docker images. You can use these images as build steps for Google Cloud Build.

These are not official Google products.

How to use a community-contributed build step

Google Cloud Build executes a build as a series of build steps. Each build step is run in a Docker container. See the Cloud Build documentation for more details about builds and build steps.

Before you begin

  1. Select or create a Google Cloud project.
  2. Enable billing for your project.
  3. Enable the Cloud Build API.
  4. Install and initialize the Cloud SDK.

Build the build step from source

To use a community-contributed Docker image as a build step, you need to download the source code from this repo and build the image.

The example below shows how to download and build the image for the packer build step on a Linux or Mac OS X workstation:

  1. Clone the cloud-builders-community repo:

    $ git clone https://github.com/GoogleCloudPlatform/cloud-builders-community
  2. Go to the directory that has the source code for the packer Docker image:

    $ cd cloud-builders-community/packer
  3. Build the Docker image:

    $ gcloud builds submit --config cloudbuild.yaml .
  4. View the image in Google Container Registry:

    $ gcloud container images list --filter packer

Use the build step with Cloud Build build

Once you've built the Docker image, you can use it as a build step in a Cloud Build build.

For example, below is the packer build step in a YAML config file, ready to be used in a Cloud Build build:

   - name: 'gcr.io/$PROJECT_ID/packer'
     args:
     - build
     - -var
     - project_id=$PROJECT_ID
     - packer.json

Each build step's examples directory has an example of how you can use the build step. See the example for the packer builder.

Contributing

We welcome contributions! See CONTRIBUTING for more information on how to get started. Please include a cloudbuild.yaml and at least one working example in your pull request.

Contribution Requirements

In order to accept your contribution, it must:

License

This source code is licensed under Apache 2.0. Full license text is available in LICENSE.

Support

To file issues and feature requests against these builder images, the usage of these build steps or the Cloud Build API in general, create an issue in this repo.

If you are experiencing an issue with the Cloud Build service or have a feature request, e-mail google-cloud-dev@googlegroups.com or see our Getting support documentation.