@nitric/pulumi-supabase
v0.0.4
Published
A pulumi provider that manages supabase platform resources
Downloads
10
Readme
Pulumi Supabase
A native pulumi provider for the Supabase Management API.
Installing
To install this plugin run:
pulumi plugin install resource supabase ${VERSION} --server https://github.com/nitrictech/pulumi-supabase/releases/download/${VERSION}
Where
${VERSION}
is a tagged released of this resource see: Releases
Using NPM
npm install @nitric/pulumi-supabase
Using Golang
go get github.com/nitrictech/pulumi-supabase/sdk
Configuring
This provider mostly uses the supabase experimental management API so an experimental access token will be required to deploy resources
When generating the token make sure to select an experimental token:
The provider can be configured by providing the following environment variable:
SUPABASE_ACCESS_TOKEN=<YOUR_ACCESS_TOKEN>
Supported Resources
- [x] Organizations
- [x] Projects
- [x] Buckets
- [x] Secrets
- [x] Database Functions
Additional resource support is planned but if there is anything you'd like to see sooner, let us know in the issues
Supported Languages
- [x] Typescript
- [x] Golang
- [ ] C# (Generated but not published)
- [ ] Python (Generated but not published)
If you would like support for a missing language please raise an issue
Examples
For example implementations see here
Development
Prerequisites
Ensure the following tools are installed and present in your $PATH
:
pulumictl
- Go 1.17 or 1.latest
- NodeJS 14.x. We recommend using nvm to manage NodeJS installations.
- Yarn
- TypeScript
- Python (called as
python3
). For recent versions of MacOS, the system-installed version is fine. - .NET
Build the provider and install the plugin
$ make build install
This will:
- Create the SDK codegen binary and place it in a
./bin
folder (gitignored) - Create the provider binary and place it in the
./bin
folder (gitignored) - Generate the dotnet, Go, Node, and Python SDKs and place them in the
./sdk
folder - Install the provider on your machine.
Test against the example
$ cd examples/simple
$ yarn link @pulumi/supabase
$ yarn install
$ pulumi stack init test
$ pulumi up