pulumi/sdk/nodejs
joeduffy 12a2626c59 Prepare package for public publishing
This adds a warning to the top of the README.md and adds a license
to the package.json (to eliminate the associated warning).
2018-05-18 11:21:32 -07:00
..
asset Use x is T return types for isX functions 2018-04-16 15:03:23 -07:00
cmd Filter the logs we emit to glog so that we don't leak out secrets. (#1371) 2018-05-15 15:28:00 -07:00
dist Invoke node directly from the language host 2018-05-02 11:16:58 -07:00
dynamic Make some resource model changes 2018-04-05 08:14:25 -07:00
log Switch to a resource-progress oriented view for pulumi preview/update/destroy (#1116) 2018-04-10 12:03:11 -07:00
proto Add an ID property to ReadResponse (#1145) 2018-04-10 12:58:50 -07:00
runtime Improve the promise leak experience (#1374) 2018-05-17 15:32:39 -07:00
tests Improve the promise leak experience (#1374) 2018-05-17 15:32:39 -07:00
.gitignore Continue to add native modules to NODE_PATH 2018-04-13 14:26:32 -07:00
config.ts Switch to a resource-progress oriented view for pulumi preview/update/destroy (#1116) 2018-04-10 12:03:11 -07:00
errors.ts Use x is T return types for isX functions 2018-04-16 15:03:23 -07:00
index.ts Update the copyright end date to 2018. (#1068) 2018-03-21 12:43:21 -07:00
Makefile Support async function serialization. (#1311) 2018-05-03 12:25:52 -07:00
metadata.ts Allow multiple Pulumi SDKs side-by-side (#1132) 2018-04-07 08:02:59 -07:00
package.json Prepare package for public publishing 2018-05-18 11:21:32 -07:00
README.md Prepare package for public publishing 2018-05-18 11:21:32 -07:00
resource.ts Require a resource's parent to actually be a resource. (#1266) 2018-04-24 17:23:18 -07:00
tsconfig.json Support async function serialization. (#1311) 2018-05-03 12:25:52 -07:00
tslint.json Update the copyright end date to 2018. (#1068) 2018-03-21 12:43:21 -07:00
version.ts Allow multiple Pulumi SDKs side-by-side (#1132) 2018-04-07 08:02:59 -07:00
yarn.lock Graceful shutdown (#1320) 2018-05-16 15:37:34 -07:00

Pulumi Node.js SDK

⚠️ Pulumi is in private beta. This package may not work unless you are already participating. Please visit https://pulumi.com/ to register for access.

The Pulumi Node.js SDK lets you write cloud programs in JavaScript.

Installation

Using npm:

$ npm install --save @pulumi/pulumi

Using yarn:

$ yarn add @pulumi/pulumi

This SDK is meant for use with the Pulumi CLI. Please visit docs.pulumi.com for installation instructions.

Building and Testing

For anybody who wants to build from source, here is how you do it.

Prerequisites

This SDK uses Node.js and we support the Active LTS and Current releases, as defined by this table. We support both NPM and Yarn for package management.

At the moment, we only support building on macOS and Linux, where standard GNU tools like make are available.

Make Targets

The first time you build, run make ensure to install and prepare native plugins for V8:

$ make ensure

This is only necessary if you intend to produce a build that is capable of running older versions of the SDK contained in this directory. If you do intend to do this, you must have node 6.10.2 installed.

To build the SDK, simply run make from the root directory (where this README lives, at sdk/nodejs/ from the repo's root). This will build the code, run tests, and install the package and its supporting artifacts.

At the moment, for local development, we install everything into /opt/pulumi. You will want this on your $PATH.

The tests will verify that everything works, but feel free to try running pulumi preview and/or pulumi update from the examples/minimal/ directory. Remember to run tsc first, since pulumi expects JavaScript, not TypeScript.