Cloud Build: Node.js Client
Cloud Build API client for Node.js
A comprehensive list of changes in each version may be found in the CHANGELOG .
- Cloud Build Node.js Client API Reference
- Cloud Build Documentation
- github.com/googleapis/google-cloud-node/packages/google-devtools-cloudbuild
Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in Client Libraries Explained .
Table of contents:
Quickstart
Before you begin
- Select or create a Cloud Platform project .
- Enable billing for your project .
- Enable the Cloud Build API .
- Set up authentication with a service account so you can access the API from your local workstation.
Installing the client library
npm install @google-cloud/cloudbuild
Using the client library
async function quickstart(
projectId = 'YOUR_PROJECT_ID', // Your Google Cloud Platform project ID
triggerId = 'YOUR_TRIGGER_ID', // UUID for build trigger.
branchName = 'BRANCH_TO_BUILD' // Branch to run build against.
) {
// Imports the Google Cloud client library
const {CloudBuildClient} = require(' @google-cloud/cloudbuild
');
// Creates a client
const cb = new CloudBuildClient
();
// Note: for Private Pools, you'll have to specify an API endpoint value
// For example:
// const cb = new CloudBuildClient({ apiEndpoint: '<YOUR_POOL_REGION>-cloudbuild.googleapis.com' });
// Starts a build against the branch provided.
const [resp] = await cb.runBuildTrigger({
projectId,
triggerId,
source: {
projectId,
dir: './',
branchName,
},
});
console.info(`triggered build for ${triggerId}`);
const [build] = await resp.promise();
const STATUS_LOOKUP = [
' UNKNOWN
',
'Queued',
'Working',
'Success',
'Failure',
'Error',
'Timeout',
'Cancelled',
];
for (const step of build.steps) {
console.info(
`step:\n\tname: ${step.name}\n\tstatus: ${STATUS_LOOKUP[build.status]}`
);
}
}
Samples
Samples are in the samples/
directory. Each sample's README.md
has instructions for running its sample.
Sample | Source Code | Try it |
---|---|---|
Cloud_build.approve_build
|
source code | ![]() |
Cloud_build.cancel_build
|
source code | ![]() |
Cloud_build.create_build
|
source code | ![]() |
Cloud_build.create_build_trigger
|
source code | ![]() |
Cloud_build.create_worker_pool
|
source code | ![]() |
Cloud_build.delete_build_trigger
|
source code | ![]() |
Cloud_build.delete_worker_pool
|
source code | ![]() |
Cloud_build.get_build
|
source code | ![]() |
Cloud_build.get_build_trigger
|
source code | ![]() |
Cloud_build.get_worker_pool
|
source code | ![]() |
Cloud_build.list_build_triggers
|
source code | ![]() |
Cloud_build.list_builds
|
source code | ![]() |
Cloud_build.list_worker_pools
|
source code | ![]() |
Cloud_build.receive_trigger_webhook
|
source code | ![]() |
Cloud_build.retry_build
|
source code | ![]() |
Cloud_build.run_build_trigger
|
source code | ![]() |
Cloud_build.update_build_trigger
|
source code | ![]() |
Cloud_build.update_worker_pool
|
source code | ![]() |
Quickstart
|
source code | ![]() |
Quickstart.test
|
source code | ![]() |
The Cloud Build Node.js Client API Reference documentation also contains samples.
Supported Node.js Versions
Our client libraries follow the Node.js release schedule . Libraries are compatible with all current active and maintenance versions of Node.js. If you are using an end-of-life version of Node.js, we recommend that you update as soon as possible to an actively supported LTS version.
Google's client libraries support legacy versions of Node.js runtimes on a best-efforts basis with the following warnings:
- Legacy versions are not tested in continuous integration.
- Some security patches and features cannot be backported.
- Dependencies cannot be kept up-to-date.
Client libraries targeting some end-of-life versions of Node.js are available, and
can be installed through npm dist-tags
.
The dist-tags follow the naming convention legacy-(version)
.
For example, npm install @google-cloud/cloudbuild@legacy-8
installs client libraries
for versions compatible with Node.js 8.
Versioning
This library follows Semantic Versioning .
This library is considered to be stable. The code surface will not change in backwards-incompatible ways unless absolutely necessary (e.g. because of critical security issues) or with an extensive deprecation period. Issues and requests against stablelibraries are addressed with the highest priority.
More Information: Google Cloud Platform Launch Stages
Contributing
Contributions welcome! See the Contributing Guide .
Please note that this README.md
, the samples/README.md
,
and a variety of configuration files in this repository (including .nycrc
and tsconfig.json
)
are generated from a central template. To edit one of these files, make an edit
to its templates in directory
.
License
Apache Version 2.0
See LICENSE