https://github.com/jaxxstorm/pulumi-component-workshop
https://github.com/jaxxstorm/pulumi-component-workshop
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jaxxstorm/pulumi-component-workshop
- Owner: jaxxstorm
- License: mit
- Created: 2021-06-15T15:44:14.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-12-15T14:59:33.000Z (over 1 year ago)
- Last Synced: 2025-01-03T00:12:17.261Z (6 months ago)
- Language: Python
- Size: 165 KB
- Stars: 3
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pulumi Reuseable Component Workshop
This workshop will guide you through the process of creating a reusable Pulumi component to deploy to Kubernetes.
You'll first provision an application to a Kubernetes cluster using Pulumi's [Component Resource](https://www.pulumi.com/docs/intro/concepts/resources/#components) mechanism.
The workshop is designed to be run from within GitPod. Hit the button below to open the repo in GitPod.
[](https://gitpod.io/#https://github.com/jaxxstorm/pulumi-component-workshop)
## Prerequisites
Before you start with this workshop, you'll need to have the Pulumi CLI installed and be logged into the Pulumi SaaS backend to store your state.
### Pulumi Login
Once the GitPod environment has initialized, you'll need to provide a Pulumi token. You can retrieve a token from [here](https://app.pulumi.com/settings/tokens)
### Kubernetes
You'll also need a Kubernetes cluster provisioned and running. The Kubernetes cluster must be capable of provisioning a service with `Type=LoadBalancer`.
You can check you have everything you need using `kubectl`:
```bash
kubectl cluster-info
Kubernetes control plane is running at https://f9a621c9-8f87-46ce-856d-662add25434a.k8s.ondigitalocean.com
CoreDNS is running at https://f9a621c9-8f87-46ce-856d-662add25434a.k8s.ondigitalocean.com/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
```If you're following this tutorial in a live Pulumi Workshop event, a cluster will be provided to you.
If you need to provision a cluster, Pulumi code to do so on digital ocean can be found in the [infra folder](./infra).# Acknowledgements
This workshop takes a lot of inspiration and has lifted code directly from [Komal Ali's](https://github.com/komalali/) [self service platyform](https://github.com/komalali/self-service-platyform).