Custom Pulumi Plugins with custom source
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()