Package VoltScript Libraries
Note
VoltScript Extensions can be scaffolded in VoltScript Interface Designer. You can also generate code skeletons and API documentation from VSID.
VoltScript Libraries are published as individual files. You will need to share:
- the main
.vss
file. - the
atlas.json
file. - any custom
.vss
files not specified as dependencies in theatlas.json
.
Note
If you are creating a release on GitHub, you should add these files manually into the release. If in doubt, look at one of the HCL-developed repositories for an example.
Downstream dependencies
You don't need to publish downstream dependencies. VoltScript Libraries or VoltScript Extensions included in your atlas.json
as dependencies from other external repositories will automatically be downloaded, providing they're accessible.
Documentation for VoltScript Build Manager consumers
Dependencies
Include in your documentation a JSON object for each .vss
file, comprising the library, version, and .vss
filename. For example:
"dependencies": [
{
"library": "voltscript-testing",
"version": "1.0.1",
"module": "VoltScriptTesting.vss"
}
]
If publishing to GitHub, the library will be the GitHub repository name. If publishing to a generic web server, the library will be a directory with a subdirectory for each version.
Note
You don't need to include any documentation referring to the atlas.json
, that will be picked up automatically.
Publishing
Include in your documentation a JSON object for the repository consumers will need to add into their atlas.json.
Note
Always use an ID that will be unique for this URL, because consumers will need to add a corresponding entry with the same ID in their environment-wide atlas-settings.json.
GitHub
If you are publishing to GitHub or GitHub Enterprise, the type should be "github". The URL format varies depending on the environment:
- For github.com, the URL will be "https://api.github.com/repos/" + OWNER_NAME.
- For GitHub Enterprise Server, the URL will be "http(s)://HOSTNAME/api/v3/repos/" + OWNER_NAME.
Example:
Generic Web Server
For a generic web server or Domino database, the type should be "webserver". The URL will be appended with "/LIBRARY/VERSION/MODULE".
Tip
If you want to use Domino as a repository, you have two options:
- Create folders on the Domino server in
/data/domino folder. - Use an NSF and either:
- Open the Package Explorer view and add folders under the WebContent directory and drag your files in.
- Add as File Resources. This is the less recommended approach, because the File Resource name needs to include forward slashes to simulate a folder structure.