diff --git a/aws-go-s3-folder/README.md b/aws-go-s3-folder/README.md index 307b31a6a..6d0b98ae9 100644 --- a/aws-go-s3-folder/README.md +++ b/aws-go-s3-folder/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Static Website Hosted on AWS S3 in Go +# Host a Static Website on Amazon S3 A static website that uses [S3's website support](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). For a detailed walkthrough of this example, see the tutorial [Static Website on AWS S3](https://www.pulumi.com/docs/tutorials/aws/s3-website/). diff --git a/aws-js-containers/README.md b/aws-js-containers/README.md index 82f4badda..44743ac1e 100644 --- a/aws-js-containers/README.md +++ b/aws-js-containers/README.md @@ -1,39 +1,48 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Easy container example +# ECS Fargate Containers Companion to the tutorial [Provision containers on AWS](https://www.pulumi.com/docs/tutorials/aws/ecs-fargate/). ## Prerequisites -To run this example, make sure [Docker](https://docs.docker.com/engine/installation/) is installed and running. +To run this example, make sure [Docker Engine - Community](https://docs.docker.com/engine/installation/) is installed and running. -## Running the App +## Deploy the App Note: some values in this example will be different from run to run. These values are indicated with `***`. -1. Create a new stack: +### Step 1: Create a new stack ``` $ pulumi stack init containers-dev ``` -1. Configure Pulumi to use an AWS region that supports Fargate. This is currently only available in `us-east-1`, `us-east-2`, `us-west-2`, and `eu-west-1`: +### Step 2: Configure AWS region for Pulumi + +For this example, you need to set an AWS region that supports Fargate. Refer to the [AWS Region Table](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/) for product availability. ``` $ pulumi config set aws:region us-west-2 ``` -1. Restore NPM modules via `npm install` or `yarn install`. +### Step 3: Restore NPM modules + +You can do this via `npm install` or `yarn install`. + +### Step 4:. Preview and deploy the app -1. Preview and deploy the app via `pulumi up`. The preview will take a few minutes, as it builds a Docker container. A total of 19 resources are created. +Run the following command: ``` $ pulumi up ``` +The preview will take a few minutes, as it builds a Docker container. A total of 19 resources are created. -1. View the endpoint URL, and run curl: +### Step 5: View the endpoint URL + +Run [`pulumi stack output`](https://www.pulumi.com/docs/reference/cli/pulumi_stack_output/) to view your stack's output properties, and then `curl` the command to view the resulting page. `$(pulumi stack output url)` evaluates to the load balancer’s URL. ```bash $ pulumi stack output @@ -51,7 +60,9 @@ with `***`. ``` -1. To view the runtime logs from the container, use the `pulumi logs` command. To get a log stream, use `pulumi logs --follow`. +### Step 6: View runtime logs from the container + +Use the [`pulumi logs`](https://www.pulumi.com/docs/reference/cli/pulumi_logs/) command. To get a log stream, use `pulumi logs --follow`. ``` $ pulumi logs --follow @@ -59,7 +70,7 @@ with `***`. 2018-05-22T15:33:22.057-07:00[ pulumi-nginx] 172.31.13.248 - - [22/May/2018:22:33:22 +0000] "GET / HTTP/1.1" 200 189 "-" "curl/7.54.0" "-" ``` -## Clean up +## Clean Up -To clean up resources, run `pulumi destroy` and answer the confirmation question at the prompt. +To clean up resources, run [`pulumi destroy`](https://www.pulumi.com/docs/reference/cli/pulumi_destroy/) to avoid incurring any costs. Select `yes` on the confirmation prompt so Pulumi will remove all of the resources that you've created. To delete the stack itself, run [`pulumi stack rm`](https://www.pulumi.com/docs/reference/cli/pulumi_stack_rm/). Note that this command deletes all deployment history from the Pulumi Console, unless you've explicitly [chosen a different backend](https://www.pulumi.com/docs/intro/concepts/state/) for storing your infrastructure state. diff --git a/aws-js-s3-folder/README.md b/aws-js-s3-folder/README.md index 2ec219c5a..205682d54 100644 --- a/aws-js-s3-folder/README.md +++ b/aws-js-s3-folder/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Static Website Hosted on AWS S3 +# Host a Static Website on Amazon S3 A static website that uses [S3's website support](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). For a detailed walkthrough of this example, see the tutorial [Static Website on AWS S3](https://www.pulumi.com/docs/tutorials/aws/s3-website/). diff --git a/aws-js-webserver-component/README.md b/aws-js-webserver-component/README.md index cb3c0063d..53028d8cf 100644 --- a/aws-js-webserver-component/README.md +++ b/aws-js-webserver-component/README.md @@ -1,7 +1,7 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS Web Server component example +# AWS Web Server Component -Deploy an EC2 instance using `@pulumi/aws`, using a common module for creating an instance. A function `createInstance` is defined in [webserver.js](webserver.js) which is then used in main program. +Deploy an EC2 instance with the `@pulumi/aws` package, using a common module for creating an instance. We define a function, `createInstance`, in [webserver.js](webserver.js) and use it in the main program, [index.js](index.js). -For a walkthrough of the main example, [Infrastructure on AWS](https://www.pulumi.com/docs/tutorials/aws/ec2-webserver/). +For a walkthrough of the main example, see [Simple Web Server Using Amazon EC2](https://www.pulumi.com/docs/tutorials/aws/ec2-webserver/). diff --git a/aws-js-webserver/README.md b/aws-js-webserver/README.md index dc98de9be..efb1fd3e2 100755 --- a/aws-js-webserver/README.md +++ b/aws-js-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS EC2 Web Server +# Web Server Using Amazon EC2 This example deploys a simple AWS EC2 virtual machine running a Python web server. diff --git a/aws-py-s3-folder/README.md b/aws-py-s3-folder/README.md index f9cac224c..d0d14e882 100644 --- a/aws-py-s3-folder/README.md +++ b/aws-py-s3-folder/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Static Website Hosted on AWS S3 +# Host a Static Website on Amazon S3 A static website that uses [S3's website support](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html). For a detailed walkthrough of this example, see the tutorial [Static Website on AWS S3](https://www.pulumi.com/docs/tutorials/aws/s3-website/). diff --git a/aws-py-stepfunctions/README.md b/aws-py-stepfunctions/README.md index c3f83a2fb..facad8114 100644 --- a/aws-py-stepfunctions/README.md +++ b/aws-py-stepfunctions/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS Step Functions (Python) +# AWS Step Functions A basic example that demonstrates using AWS Step Functions with a Lambda function, written in Python. diff --git a/aws-py-webserver/README.md b/aws-py-webserver/README.md index b17759bcc..216b6f51b 100644 --- a/aws-py-webserver/README.md +++ b/aws-py-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS Web Server example in Python +# Web Server Using Amazon EC2 An example based on the Amazon sample at: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/deploying.applications.html. The example deploys an EC2 instance and opens port 80. diff --git a/aws-ts-airflow/README.md b/aws-ts-airflow/README.md index 66ee1cd5c..2312b65b0 100644 --- a/aws-ts-airflow/README.md +++ b/aws-ts-airflow/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS RDS and Airflow example +# RDS Postgres and Containerized Airflow A Pulumi program to deploy an RDS Postgres instance and containerized Airflow. diff --git a/aws-ts-apigateway-auth0/README.md b/aws-ts-apigateway-auth0/README.md index e245e3b50..da99a0ac2 100644 --- a/aws-ts-apigateway-auth0/README.md +++ b/aws-ts-apigateway-auth0/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Auth0 Protected Serverless REST API on AWS +# Secure Serverless REST API Using Auth0 A simple REST API that is protected by a custom AWS Lambda Authorizer. The Authorizer uses [Auth0](https://auth0.com/) to authorize requests. diff --git a/aws-ts-apigateway/README.md b/aws-ts-apigateway/README.md index fdba279bf..ea7639165 100644 --- a/aws-ts-apigateway/README.md +++ b/aws-ts-apigateway/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Serverless REST API on AWS +# Serverless REST API A simple REST API that counts the number of times a route has been hit. For a detailed walkthrough of this example, see the article [Create a Serverless REST API](https://www.pulumi.com/docs/tutorials/aws/rest-api/). diff --git a/aws-ts-appsync/README.md b/aws-ts-appsync/README.md index 2a8c930ed..4415e31a0 100644 --- a/aws-ts-appsync/README.md +++ b/aws-ts-appsync/README.md @@ -1,8 +1,8 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Defining an AWS AppSync Endpoint +# GraphQL Endpoint in AWS AppSync -This example shows how to setup a basic GraphQL endpoint in AWS AppSync. The endpoint contains one query and one mutation that get and put items to a Dynamo DB table. +This example shows how to set up a basic GraphQL endpoint in AWS AppSync. The endpoint contains one query and one mutation that get and put items to a Dynamo DB table. ## Deploying and running the Pulumi App diff --git a/aws-ts-assume-role/README.md b/aws-ts-assume-role/README.md index 22bb6d3b1..1b9755bf9 100644 --- a/aws-ts-assume-role/README.md +++ b/aws-ts-assume-role/README.md @@ -1,9 +1,9 @@ -# AWS AssumeRole Example +# AWS Resources Using AssumeRole This example demonstrates how to use the AssumeRole functionality of the AWS provider in order to create resources in the security context of an IAM Role assumed by the IAM User running the Pulumi program. -## Deploying the Example +## Deploying the Example These instructions assume you are familiar with running Pulumi programs written in TypeScript. Some other examples which describe each step in more detail are: diff --git a/aws-ts-eks-hello-world/README.md b/aws-ts-eks-hello-world/README.md index 6146761d6..d2a8b7689 100755 --- a/aws-ts-eks-hello-world/README.md +++ b/aws-ts-eks-hello-world/README.md @@ -1,9 +1,8 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS EKS Cluster +# Amazon EKS Cluster: Hello World! -This example deploys an EKS Kubernetes cluster with an EBS-backed StorageClass, and deploys a Kubernetes Namespace and Deployment of NGINX -into the cluster. +This example deploys an EKS Kubernetes cluster with an EBS-backed StorageClass, and deploys a Kubernetes Namespace and Deployment of NGINX into the cluster. ## Deploying the App @@ -215,7 +214,7 @@ After cloning this repo, from this working directory, run these commands: the NGINX app, and a LoadBalancer `Service` to publicly access NGINX. Pulumi understands which changes to a given cloud resource can be made - in-place, and which require replacement, and computes + in place, and which require replacement, and computes the minimally disruptive change to achieve the desired state. > **Note:** Pulumi auto-generates a suffix for all objects. @@ -230,12 +229,12 @@ After cloning this repo, from this working directory, run these commands: > ``` If you visit the FQDN listed in `serviceHostname` you should land on the - NGINX welcome page. Note, that it may take a minute or so for the + NGINX welcome page. Note that it may take a minute or so for the LoadBalancer to become active on AWS. 1. Access the Kubernetes Cluster using `kubectl` - To access your new Kubernetes cluster using `kubectl`, we need to setup the + To access your new Kubernetes cluster using `kubectl`, we need to set up the `kubeconfig` file and download `kubectl`. We can leverage the Pulumi stack output in the CLI, as Pulumi faciliates exporting these objects for us. @@ -265,12 +264,11 @@ After cloning this repo, from this working directory, run these commands: $ kubectl delete deployment my-nginx ``` - By deploying this nginx image in this way, it is outside of Pulumi's control. But this is simply to show that we can - control our cluster via the CLI as well. + By deploying the NGINX image in this way, it is outside of Pulumi's control. But this is simply to show that we can control our cluster via the CLI as well. 1. Experimentation - From here on, feel free to experiment. Simply making edits and running `pulumi up` afterwards, will incrementally update your stack. + From here on, feel free to experiment. Make edits and run `pulumi up` afterwards to incrementally update your stack. ### Running Off-the-Shelf Guestbook YAML diff --git a/aws-ts-eks-migrate-nodegroups/README.md b/aws-ts-eks-migrate-nodegroups/README.md index e060f5e97..e225b8137 100755 --- a/aws-ts-eks-migrate-nodegroups/README.md +++ b/aws-ts-eks-migrate-nodegroups/README.md @@ -1,8 +1,9 @@ -# examples/aws-ts-eks-migrate-nodegroups +# Zero Downtime Migration of EKS Node Groups -Creates an EKS cluster with node groups and a workload, and showcases how add an -additional node group to use for workload migration with zero downtime. +Creates an EKS cluster with node groups and a workload, and showcases adding a +node group to use for workload migration with zero downtime. For step-by-step instructions, check out the [tutorial][tutorial-migrate-nodegroups]. [tutorial-migrate-nodegroups]: https://www.pulumi.com/docs/tutorials/kubernetes/eks-migrate-nodegroups/ + diff --git a/aws-ts-eks/README.md b/aws-ts-eks/README.md index 20d18ef8c..30d4fd464 100755 --- a/aws-ts-eks/README.md +++ b/aws-ts-eks/README.md @@ -1,9 +1,8 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS EKS Cluster +# Kubernetes Dashboard on an Amazon EKS Cluster -This example deploys an EKS Kubernetes cluster with an EBS-backed StorageClass and deploys the Kubernetes Dashboard -into the cluster. +This example deploys an EKS Kubernetes cluster with an EBS-backed StorageClass and deploys the Kubernetes Dashboard into the cluster. ## Deploying the App @@ -113,10 +112,10 @@ After cloning this repo, from this working directory, run these commands: browser. - Choose `Token` authentication, paste the token retrieved earlier into the `Token` field, and sign in. -7. From there, feel free to experiment. Simply making edits and running `pulumi up` will incrementally update your stack. - For example, in order to deploy a Helm chart into your cluster, simply import the `@pulumi/kubernetes/helm` package, +7. From there, feel free to experiment. Make edits and run `pulumi up` to incrementally update your stack. + For example, in order to deploy a Helm chart into your cluster, import the `@pulumi/kubernetes/helm` package, add a `Chart` resource that targets the EKS cluster to `index.ts`, and run `pulumi up`. Note that the Helm client - must be set up in order for the chart to deploy; see the "Prerequisites" section for details. + must be set up in order for the chart to deploy. For more details, see the [Prerequisites](#prerequisites) list. ```typescript import * as helm from "@pulumi/kubernetes/helm"; diff --git a/aws-ts-hello-fargate/README.md b/aws-ts-hello-fargate/README.md index c73d50b85..b74e13481 100644 --- a/aws-ts-hello-fargate/README.md +++ b/aws-ts-hello-fargate/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Get Started with Docker on AWS Fargate +# Dockerized App Using ECS, ECR, and Fargate This example, inspired by the [Docker Getting Started Tutorial](https://docs.docker.com/get-started/), builds, deploys, and runs a simple containerized application to a private container registry, and scales out five load balanced replicas, diff --git a/aws-ts-ruby-on-rails/README.md b/aws-ts-ruby-on-rails/README.md index 7ca2ff454..ce70a7570 100644 --- a/aws-ts-ruby-on-rails/README.md +++ b/aws-ts-ruby-on-rails/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# AWS EC2 Ruby on Rails +# Ruby on Rails Server Using Amazon EC2 This is a conversion of the AWS CloudFormation Application Framework template for a basic Ruby on Rails server. It creates a single EC2 virtual machine instance and uses a local MySQL database for storage. Sourced from diff --git a/aws-ts-s3-lambda-copyzip/README.md b/aws-ts-s3-lambda-copyzip/README.md index 5c3420fd9..332b87be5 100644 --- a/aws-ts-s3-lambda-copyzip/README.md +++ b/aws-ts-s3-lambda-copyzip/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Serverless App to Copy and Zip S3 Objects Between Buckets +# Serverless App to Copy and Zip Objects Between Amazon S3 Buckets This example sets up two AWS S3 Buckets and a single Lambda that listens to one and, upon each new object arriving in it, zips it up and copies it to the second bucket. Its architecture looks like this: diff --git a/aws-ts-serverless-raw/README.md b/aws-ts-serverless-raw/README.md index f0ce74b50..e1ef58e60 100644 --- a/aws-ts-serverless-raw/README.md +++ b/aws-ts-serverless-raw/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# serverless-raw +# Serverless C# App This example deploys a complete serverless C# application using raw `aws.apigateway.RestAPI`, `aws.lambda.Function` and `aws.dynamodb.Table` resources from `@pulumi/aws`. Although this doesn't feature any of the higher-level abstractions diff --git a/aws-ts-slackbot/README.md b/aws-ts-slackbot/README.md index 0a5e063ea..0aea01215 100644 --- a/aws-ts-slackbot/README.md +++ b/aws-ts-slackbot/README.md @@ -1,8 +1,8 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# A simple Slackbot running in AWS using Pulumi. +# Slackbot for Posting Slack Mention Notifications -A simple Slackbot (called '@mentionbot') that sends a message to specific channel to notifiy you any time you're @mentioned anywhere. Very helpful if you want a time-ordered list of @mentions to go through at a later point. +A simple Slackbot (called '@mentionbot') that sends a message to specific channel to notify you any time you're @mentioned anywhere. This bot is useful for when you need a time-ordered list of @mentions to go through at a later point. Slack users can subscribe/unsubscribe from notifications easily. Simply add `@mentionbot` to a channel you want to be notified in. Then send any message to `@mentionbot` to subscribe. To stop getting messages send a message to `@mentionbot` containing the word `unsubscribe`. diff --git a/aws-ts-static-website/README.md b/aws-ts-static-website/README.md index 54a1c2262..e022d50a6 100644 --- a/aws-ts-static-website/README.md +++ b/aws-ts-static-website/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Static Website using AWS and TypeScript +# Secure Static Website Using Amazon S3, CloudFront, Route53, and Certificate Manager This example serves a static website using TypeScript and AWS. diff --git a/aws-ts-thumbnailer/README.md b/aws-ts-thumbnailer/README.md index 3e42ce53e..6efeb62ea 100755 --- a/aws-ts-thumbnailer/README.md +++ b/aws-ts-thumbnailer/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Video Thumbnailer +# Video Thumbnailer Using AWS Fargate A video thumbnail extractor using serverless functions and containers. diff --git a/aws-ts-voting-app/README.md b/aws-ts-voting-app/README.md index 05373dbc0..8c3e19f79 100644 --- a/aws-ts-voting-app/README.md +++ b/aws-ts-voting-app/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Voting app with two containers +# Voting app Using Redis and Flask A simple voting app that uses Redis for a data store and a Python Flask app for the frontend. The example has been ported from https://github.com/Azure-Samples/azure-voting-app-redis. diff --git a/azure-js-webserver/README.md b/azure-js-webserver/README.md index 862b9f0d8..eadd3f4da 100755 --- a/azure-js-webserver/README.md +++ b/azure-js-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Pulumi web server (Azure) +# Web Server Using Azure Virtual Machine Starting point for building the Pulumi web server sample in Azure. diff --git a/azure-py-webserver/README.md b/azure-py-webserver/README.md index 95e66bd0a..c8687b7ea 100644 --- a/azure-py-webserver/README.md +++ b/azure-py-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure Web Server example in Python +# Web Server Using Azure Virtual Machine This example deploys an Azure Virtual Machine and starts a HTTP server on it. diff --git a/azure-ts-aks-keda/README.md b/azure-ts-aks-keda/README.md index 4a00a507b..b57c6a563 100644 --- a/azure-ts-aks-keda/README.md +++ b/azure-ts-aks-keda/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure Kubernetes Service (AKS) cluster and Azure Functions with KEDA +# Azure Kubernetes Service (AKS) Cluster and Azure Functions with KEDA This example demonstrates creating an Azure Kubernetes Service (AKS) Cluster, and deploying an Azure Function App with Kubernetes-based Event Driven Autoscaling (KEDA) into it, all in one Pulumi program. Please see https://docs.microsoft.com/en-us/azure/aks/ for more information about AKS and https://docs.microsoft.com/en-us/azure/azure-functions/functions-kubernetes-keda for more information about KEDA. diff --git a/azure-ts-aks-mean/README.md b/azure-ts-aks-mean/README.md index 847a2a68b..8399cdf38 100644 --- a/azure-ts-aks-mean/README.md +++ b/azure-ts-aks-mean/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# A Node.js demo app deployed on AKS, using CosmosDB +# Azure Kubernetes Service (AKS) App Using CosmosDB Stands up an [Azure Kubernetes Service][aks] (AKS) cluster and a MongoDB-flavored instance of [CosmosDB][cosmos]. On top of the AKS cluster, we also deploy [Helm][helm] Chart with a simple diff --git a/azure-ts-appservice-devops/README.md b/azure-ts-appservice-devops/README.md index 36c1505d7..42dc02ad5 100644 --- a/azure-ts-appservice-devops/README.md +++ b/azure-ts-appservice-devops/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new?template=https://github.com/pulumi/examples/tree/master/azure-ts-appservice-devops/infra) -# A Todo App on Azure App Service with SQL Database and Application Insights and deploys it to Azure DevOps +# Todo App Using Azure App Service with SQL Database and Integrated with Azure DevOps A Todo List application from Azure Samples GitHub: [.NET Core MVC sample for Azure App Service](https://github.com/azure-samples/dotnetcore-sqldb-tutorial), a web app built with ASP.NET Core, Entity Framework Core and a SQL database. diff --git a/azure-ts-appservice-docker/README.md b/azure-ts-appservice-docker/README.md index 98270a1bb..ee56d19b7 100644 --- a/azure-ts-appservice-docker/README.md +++ b/azure-ts-appservice-docker/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure App Service running Docker containers on Linux +# Azure App Service Running Docker Containers on Linux Starting point for building web application hosted in Azure App Service from Docker images. diff --git a/azure-ts-appservice-springboot/README.md b/azure-ts-appservice-springboot/README.md index 0b8cbb0b5..cb7df8834 100644 --- a/azure-ts-appservice-springboot/README.md +++ b/azure-ts-appservice-springboot/README.md @@ -1,4 +1,4 @@ -# Deploy a Spring Boot App using Jenkins and Pulumi +# Spring Boot App on Azure App Service Using Jenkins This example shows how you can deploy a Spring Boot app to an Azure App Service instance using Pulumi in a Jenkins Pipeline. The Spring Boot app is packaged into a container image that is conveniently built as part of the Pulumi app. The container image is pushed up to a private Azure Container Registry and then used as the source for an App Service instance. diff --git a/azure-ts-arm-template/README.md b/azure-ts-arm-template/README.md index f8a1ca8c3..378f52f83 100644 --- a/azure-ts-arm-template/README.md +++ b/azure-ts-arm-template/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Deploy an Azure Resource Manager (ARM) Template in Pulumi +# Azure Resource Manager (ARM) Template This example simply deploys an existing Azure Resource Manager (ARM) template using Pulumi. This accepts any existing valid ARM template, enabling easy migration from existing JSON templates and towards infrastructure diff --git a/azure-ts-cosmosdb-logicapp/README.md b/azure-ts-cosmosdb-logicapp/README.md index fd3a2bd2a..923929a4c 100644 --- a/azure-ts-cosmosdb-logicapp/README.md +++ b/azure-ts-cosmosdb-logicapp/README.md @@ -1,8 +1,8 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Deploy an Azure Cosmos DB container, an API Connection, and a Logic App +# Azure Cosmos DB, an API Connection, and a Logic App -At the time of this writting, there is no native Pulumi resource to define API Connections and to link it to a Logic App. This example shows how to use an ARM templates to create an API Connection and a Logic App. +At the time of writing, there is no native Pulumi resource for defining an API Connection and linking it to a Logic App. This example shows how to use an ARM templates to create an API Connection and a Logic App. ## Prerequisites diff --git a/azure-ts-functions-raw/README.md b/azure-ts-functions-raw/README.md index b4855cd5a..05f0e82e4 100644 --- a/azure-ts-functions-raw/README.md +++ b/azure-ts-functions-raw/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure Functions +# Azure Functions in All Supported Languages Azure Functions created from raw deployment packages in all supported languages. diff --git a/azure-ts-hdinsight-spark/README.md b/azure-ts-hdinsight-spark/README.md index a4bc9a297..1a9e64edb 100644 --- a/azure-ts-hdinsight-spark/README.md +++ b/azure-ts-hdinsight-spark/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Spark on Azure HDInsight example +# Spark on Azure HDInsight An example Pulumi component that deploys a Spark cluster on Azure HDInsight. diff --git a/azure-ts-serverless-url-shortener-global/README.md b/azure-ts-serverless-url-shortener-global/README.md index 6f12148d9..8e98671b6 100644 --- a/azure-ts-serverless-url-shortener-global/README.md +++ b/azure-ts-serverless-url-shortener-global/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Globally distributed serverless URL-shortener +# Globally Distributed Serverless URL Shortener Using Azure Functions and Cosmos DB Multi-region deployment of Azure Functions and Cosmos DB with Traffic Manager diff --git a/azure-ts-static-website/README.md b/azure-ts-static-website/README.md index d47dcc39d..1c9f67a0c 100644 --- a/azure-ts-static-website/README.md +++ b/azure-ts-static-website/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# A Static Website Hosted on Azure Blob Storage + Azure CDN +# Static Website Using Azure Blob Storage and CDN This example configures [Static website hosting in Azure Storage](https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website). One complication is the fact that the Static Website feature of Storage Accounts is not part of Azure Resource Manager, and is not configurable directly via Pulumi Azure provider. diff --git a/azure-ts-webserver-component/README.md b/azure-ts-webserver-component/README.md index 27c75b874..fe2ce53b0 100755 --- a/azure-ts-webserver-component/README.md +++ b/azure-ts-webserver-component/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure Web Server Virtual Machine Component +# Web Server Component Using Azure Virtual Machine This example provisions a configurable number of Linux web servers in an Azure Virtual Machine, and returns the resulting public IP addresses. This example uses a reusable [Pulumi component]( diff --git a/azure-ts-webserver/README.md b/azure-ts-webserver/README.md index e93417128..777342e39 100755 --- a/azure-ts-webserver/README.md +++ b/azure-ts-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Azure Web Server Virtual Machine +# Web Server Using Azure Virtual Machine This example provisions a Linux web server in an Azure Virtual Machine and gives it a public IP address. diff --git a/cloud-js-containers/README.md b/cloud-js-containers/README.md index 60e1ef0d0..0db419df4 100644 --- a/cloud-js-containers/README.md +++ b/cloud-js-containers/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Easy container example +# Containerized App Companion to the tutorial [Provision containers on AWS](https://www.pulumi.com/docs/tutorials/aws/ecs-fargate/). diff --git a/cloud-ts-voting-app/README.md b/cloud-ts-voting-app/README.md index 6d1773443..1fca21b0a 100644 --- a/cloud-ts-voting-app/README.md +++ b/cloud-ts-voting-app/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Voting app with two containers +# Voting App Using Redis and Flask A simple voting app that uses Redis for a data store and a Python Flask app for the frontend. The example has been ported from https://github.com/Azure-Samples/azure-voting-app-redis. diff --git a/f5bigip-ts-ltm-pool/README.md b/f5bigip-ts-ltm-pool/README.md index 4fa295e4d..7abce66a3 100644 --- a/f5bigip-ts-ltm-pool/README.md +++ b/f5bigip-ts-ltm-pool/README.md @@ -1,4 +1,4 @@ -# F5 BigIP Local Traffic Manager Example +# F5 BigIP Local Traffic Manager This example demonstrates use of the [Pulumi F5 BigIP Provider](https://github.com/pulumi/pulumi-f5bigip) to provide load balancing via an F5 BigIP appliance to backend HTTP instances. The example provisions: diff --git a/gcp-js-webserver/README.md b/gcp-js-webserver/README.md index ebaec0855..966637bde 100644 --- a/gcp-js-webserver/README.md +++ b/gcp-js-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Pulumi web server (GCP) +# Web Server Using Compute Engine Starting point for building the Pulumi web server sample in Google Cloud. diff --git a/gcp-py-functions/README.md b/gcp-py-functions/README.md index 68a3469f8..3e6333a6a 100644 --- a/gcp-py-functions/README.md +++ b/gcp-py-functions/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# GCP Functions +# Google Cloud Functions This example shows how to deploy a Python-based Google Cloud Function. diff --git a/gcp-py-instance-nginx/README.md b/gcp-py-instance-nginx/README.md index b028dd275..a49c080e8 100644 --- a/gcp-py-instance-nginx/README.md +++ b/gcp-py-instance-nginx/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Pulumi Nginx Server in a instance (GCP) +# Nginx Server Using Compute Engine Starting point for building the Pulumi nginx server sample in Google Cloud Platform. diff --git a/gcp-ts-functions/README.md b/gcp-ts-functions/README.md index 3e3024ad5..d36deea1a 100644 --- a/gcp-ts-functions/README.md +++ b/gcp-ts-functions/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# GCP Functions +# Google Cloud Functions An example of deploying an HTTP Google Cloud Function endpoint using TypeScript. diff --git a/gcp-ts-serverless-raw/README.md b/gcp-ts-serverless-raw/README.md index bea2d47ed..d27c0e924 100644 --- a/gcp-ts-serverless-raw/README.md +++ b/gcp-ts-serverless-raw/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Google Cloud Functions in Python and Go deployed with TypeScript +# Google Cloud Functions in Python and Go Deployed with TypeScript This example deploys two Google Cloud Functions. "Hello World" functions are implemented in Python and Go. Pulumi program is implemented in TypeScript. diff --git a/gcp-ts-slackbot/README.md b/gcp-ts-slackbot/README.md index 9c05a13d5..b6fd13fbb 100644 --- a/gcp-ts-slackbot/README.md +++ b/gcp-ts-slackbot/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# A simple Slackbot running in GCP using Pulumi. +# Slackbot for Posting Slack Mention Notifications A simple Slackbot (called '@mentionbot') that sends a message to specific channel to notifiy you any time you're @mentioned anywhere. Very helpful if you want a time-ordered list of @mentions to go through at a later point. diff --git a/kubernetes-ts-configmap-rollout/README.md b/kubernetes-ts-configmap-rollout/README.md index 146ca05d5..ca96491e4 100644 --- a/kubernetes-ts-configmap-rollout/README.md +++ b/kubernetes-ts-configmap-rollout/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes: Triggering a rollout of an app by changing ConfigMap data +# App Rollout via ConfigMap Data Change Uses nginx to reverse-proxy traffic to `pulumi.github.io`. The nginx configuration is contained in the file `default.conf` in this directory; this program reads that file and puts it in a diff --git a/kubernetes-ts-exposed-deployment/README.md b/kubernetes-ts-exposed-deployment/README.md index fdc8e3d89..e527e6298 100644 --- a/kubernetes-ts-exposed-deployment/README.md +++ b/kubernetes-ts-exposed-deployment/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes: Exposing a Deployment with a public IP address +# Exposing a Deployment with a Public IP Address Deploys `nginx` to a Kubernetes cluster, and publicly exposes it to the Internet with an IP address, using a Kubernetes `Service`. diff --git a/kubernetes-ts-guestbook/README.md b/kubernetes-ts-guestbook/README.md index 4d43057bb..a48c921ee 100644 --- a/kubernetes-ts-guestbook/README.md +++ b/kubernetes-ts-guestbook/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new?template=https://github.com/pulumi/examples/tree/master/kubernetes-ts-guestbook/components) -# Kubernetes Guestbook (Two Ways) +# Simple and Component-based Kubernetes Guestbook Apps A port of the standard [Kubernetes Guestbook](https://kubernetes.io/docs/tutorials/stateless-application/guestbook/) to Pulumi. This example shows you how to build and deploy a simple, multi-tier web application using Kubernetes and diff --git a/kubernetes-ts-helm-wordpress/README.md b/kubernetes-ts-helm-wordpress/README.md index ce98c6fc3..608d49fb5 100644 --- a/kubernetes-ts-helm-wordpress/README.md +++ b/kubernetes-ts-helm-wordpress/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes: Deploying the Wordpress Helm chart +# Wordpress Helm Chart Uses the Helm API of `@pulumi/kubernetes` to deploy `v2.1.3` of the Wordpress Helm Chart to a Kubernetes cluster. **The Tiller server is not required to be installed.** Pulumi will expand the diff --git a/kubernetes-ts-jenkins/README.md b/kubernetes-ts-jenkins/README.md index a828c8fdf..3d39fafec 100644 --- a/kubernetes-ts-jenkins/README.md +++ b/kubernetes-ts-jenkins/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes Jenkins +# Continuous Integration with Jenkins This example deploys a container running the Jenkins continuous integration system onto a running Kubernetes cluster using Pulumi and `@pulumi/kubernetes`. diff --git a/kubernetes-ts-nginx/README.md b/kubernetes-ts-nginx/README.md index aa4bbd36a..fa7dafa19 100644 --- a/kubernetes-ts-nginx/README.md +++ b/kubernetes-ts-nginx/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Run a Stateless Application Using a Deployment +# Stateless Application Using a Deployment A version of the [Kubernetes Stateless Application Deployment]( https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/) example that uses Pulumi. diff --git a/kubernetes-ts-s3-rollout/README.md b/kubernetes-ts-s3-rollout/README.md index 575f03481..0ff39c6ff 100644 --- a/kubernetes-ts-s3-rollout/README.md +++ b/kubernetes-ts-s3-rollout/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes: Triggering a rollout of an app by changing data in S3 +# App Rollout via Data Change in Amazon S3 This example is similar in principle to the [`ConfigMap`-based rollout example][rollout], except a rollout is triggered any time the data in S3 changes. diff --git a/kubernetes-ts-sock-shop/README.md b/kubernetes-ts-sock-shop/README.md index a7030c9b1..e2cd17a19 100644 --- a/kubernetes-ts-sock-shop/README.md +++ b/kubernetes-ts-sock-shop/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes Sock Shop +# Sock Shop Pulumi Demo A version of the standard [Sock Shop microservices reference app](https://github.com/microservices-demo/microservices-demo) app using Pulumi and `@pulumi/kubernetes`. diff --git a/kubernetes-ts-staged-rollout-with-prometheus/README.md b/kubernetes-ts-staged-rollout-with-prometheus/README.md index 85e027f3e..6d49ce2cd 100644 --- a/kubernetes-ts-staged-rollout-with-prometheus/README.md +++ b/kubernetes-ts-staged-rollout-with-prometheus/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Kubernetes: Staged application rollout gated by Prometheus checks +# Staged App Rollout Gated by Prometheus Checks Demonstrates how to create a staged rollout (from 3-replica canary -> 10-replica staging), gated by checking that the P90 response time reported by Prometheus is less than some amount. We first deploy diff --git a/linode-js-webserver/README.md b/linode-js-webserver/README.md index b30053ef8..6120399ef 100644 --- a/linode-js-webserver/README.md +++ b/linode-js-webserver/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Pulumi web server (Linode) +# Web Server on Linode Starting point for building a Pulumi sample webserver on Linode. diff --git a/multicloud-ts-buckets/README.md b/multicloud-ts-buckets/README.md index 76e07de62..a26d4ca85 100644 --- a/multicloud-ts-buckets/README.md +++ b/multicloud-ts-buckets/README.md @@ -1,6 +1,6 @@ [![Deploy](https://get.pulumi.com/new/button.svg)](https://app.pulumi.com/new) -# Multi-Cloud in AWS and GCP using TypeScript +# AWS and GCP Resources This example uses a single Pulumi program to provision resources in both AWS and GCP. It was prepared by starting with the `aws-typescript` template, and then installing the `@pulumi/gcp`