ion icon indicating copy to clipboard operation
ion copied to clipboard

Custom Pulumi Plugins with custom source

Open TheKnightCoder opened this issue 1 year ago • 0 comments

One of the big appeals of ion is the ability to provision any infrastructure, the issue is there is no way to install custom pulumi plugins from a custom source. An example of this is @nitric/pulumi-supabase

When running sst deploy --verbose you will get the following error Could not automatically download and install resource plugin 'pulumi-resource-supabase' at version v0.0.4, install the plugin using 'pulumi plugin install resource supabase v0.0.4', however after installing the plugin it will still not work as ion seems to have its own installation of pulumi.

The command to install the plugin pulumi plugin install resource supabase v0.0.4 --server https://github.com/nitrictech/pulumi-supabase/releases/download/v0.0.4


Current workaround: sst uses a dedicated install of pulumi to avoid conflicts, this is located in ~/.config/sst on linux and ~/Library/Application\ Support/sst/ on mac.

within here the pulumi plugin files are located in sst/plugins, you can then install the plugin with pulumi and move the plugin files from ~/.pulumi/plugins to ~/Library/Application\ Support/sst/plugins and it should work


would be great to have the plugins defined in 'package.json' and have sst auto install those plugins into ~/.config/sst

e.g. package.json "pulumi-plugins": { "supabase": "https://github.com/nitrictech/pulumi-supabase/releases/download/v0.0.4" }

or a function within sst.config.ts like sst.pulumi.Plugin()

TheKnightCoder avatar Apr 25 '24 22:04 TheKnightCoder