Skip to content

fuel-wlightning/cloud-builders-community

 
 

Repository files navigation

Google Cloud Container Builder community images

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

These are not official Google products.

How to use a community-contributed build step

Google Container Builder executes a build as a series of build steps. Each build step is run in a Docker container. See the Container Builder 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 Container Builder 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 container builds submit --config cloudbuild.yaml .
    
  4. View the image in Google Container Registry:

    $ gcloud container images list --filter packer

Use the build step with Container Builder build

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

For example, below is the packer build step in a YAML config file, ready to be used in a Container Builder 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:

  • make clear that the builder image is pushed to the builder's project's registry. E.g., it specifies images: ['gcr.io/$PROJECT_ID/the-tool']. The builder will not be pushed to the gcr.io/cloud-builders registry.
  • include a simple sanity test in the cloudbuild.yaml config that builds and pushes the image. This can be as simple as invoking the tool with --help, and it ensures the tool is installed correctly and in the expected location within the image.
  • include some basic example describing how to use it. This helps new users get acquainted with the builder, and helps us ensure the builder continues to work as intended.

License

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

Support

  • File issues here in GitHub about the community build steps.
  • Email gcr-contact@google.com if you have questions about build steps or Google Cloud Container Builder.

About

Community-contributed images for Google Cloud Container Builder

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 50.7%
  • Scala 25.6%
  • Python 11.7%
  • HTML 8.8%
  • JavaScript 2.0%
  • Clojure 1.0%
  • Makefile 0.2%