Publishing Updates

When you modify something about any exporter you own, you commit that change to the backing repository. However, this change is not automatically propagated to Supernova. This is so you can be developing alongside using the already released version, and not to worry about breaking your production all the time.

Preparing an update

To prepare an update, simply commit any change to the exporter repository. If you don't know how to work with exporter packages just yet, you can try to do the simplest change - changing the name of the exporter. Go to exporter.json in the root directory and change name to something else.

Commit the change, and exporter is ready to be updated

Propagating the update to Supernova

In order to be able to use the exporter in production, you must propagate the change to Supernova servers. Supernova keeps a copy of the exporter package, so even if you remove the repository from GitHub, it will not break and continue to work.

Navigate to Supernova Cloud, find the installed exporter and open its details, and navigate to Settings tab. From there, you can Pull latest changes. This will immediately pull all the latest package code from the backing repository and will be available right away for export. All hooks that you have created will use the new code immediately as well.

The exporter package will be validated when propagating the change. Only exporters that are fully valid - have proper and valid configuration and there are no compilations errors will be propagated, otherwise, the update will be rejected and you will have to fix the bug before you can publish it again.

Better safe than sorry, especially when it comes to production!

GitHub Branches

You are free to use any branch you want for development. However, please keep in mind that Supernova is looking for main or master branch name in order to pull the updates from it - other branches will be ignored and if you don't have one of those two, the update will not go through.

Reverting Changes

It is possible to revert the change to the exporter package as well. To do that, simply revert the main or master branch, and then publish the update as you would normally.