It's envisaged that we'll have up to 4 different versions of the visual:
- The AppSource version, which will not allow loading of external data and images and will be certified
- The standalone version, which will allow as much as Power BI lets custom visuals do within the CORS restrictions it imposes
- Alpha channel build (upon pull request; may not represent intended release build)
- Beta channel build (upon tagging; intended to represent ideal release candidate builds)
Each one of these should have its own guid
and other metadata, and ideally a unique icon so if a creator has them side-loaded, then it's easy to see what's going on in a report.
As the SDK doesn't have a process to allow us to specify a pbiviz.json file, we'll need to temporarily patch the one in the root folder with appropriate properties, package the visual and then revert. If this works, we can consider making a pull request to the SDK for a property that can allow people to specify an external pbiviz.json file for the package process.
The AppSource build will keep the 4-dot versioning system, but this will now keep the fourth digit at zero rather than using 'build' number (e.g. 1.1.0.0
), as this is unsustainable if/when we get multiple collaborators. This will be manually managed when changes are ready to make available properly. The other three package methods will move to a major.minor.patch.yyyyMMdd#commit
version number, which will be generated by our script.
Ideally, we should extend the CI processes upon the following events as follows: