Pulumi welcomes contributions from the community and is excited to continue building out its collection of examples and tutorials that showcase the power of modern infrastructure as code. This guide is intended to help your contribution get published quickly.
For a list of Pulumi terms used throughout our documentation site, see the Glossary page.
The folder structure for each example includes a two-part prefix, <cloud>-<language> (to indicate which <cloud> and <language> it pertains to), and a brief descriptive name with hyphens in between the words.
The cloud prefix can be one of:
awsfor Amazon Web Servicesazurefor Microsoft Azuregcpfor Google Cloud Platformkubernetesfor Kubernetes,digitaloceanfor DigitalOceanf5bigipfor F5's BIG-IPcloudfor Pulumi's cross-cloud programming framework, which is currently in preview- Any cloud provider with a dedicated Pulumi package
The language prefix can be one of:
tsfor TypeScriptjsfor JavaScriptpyfor Pythongofor Golangcsfor csharp
If you would like to add an example in a different language, see the FAQ section for adding support for your favorite language.
Each folder contains files related to your Pulumi project, a README, an optional directory for your sample application (www for example), and an optional images directory if you're including images in your example.
|____README.md
|____www
|____images
| |____deploy.gif
| |____deploy.cast
|____Pulumi.yaml
|____package.json
|____tsconfig.json
|____index.ts
We are big fans of DigitalOcean's technical writing guidelines and highly encourage you to follow their style recommendations.
Each example should include a README to give the readers a good walkthrough. It should comprise of the following sections:
- Title
- "Deploy with Pulumi" button (Optional)
- Overview paragraph
- Prerequisites
- Deploy the App
- Step 1: Doing the First Thing
- Step 2: Doing the Next Thing …
- Step n: Doing the Last Thing
- Clean Up
- Summary
- Next Steps (Optional)
See our example README template for detailed explanations on each section.
The contribution guidelines have been authored in September 2019 and are subject to further refinements and tweaks. Examples prior to September 2019 do not necessarily conform to these guidelines.