semantic-release plugin to publish a WHMCS product/module version to WHMCS Marketplace.
Step | Description |
---|---|
verifyConditions |
Verify the presence and the validity of the authentication credentials (set via environment variables) and the product id option configuration. |
publish |
Publish product/module version to WHMCS Marketplace including changelog notes. |
- Installed nodejs/npm. We suggest using nvm.
- Using semantic-release in your CI/CD process
> npm i semantic-release-whmcs -D
The plugin can be loaded in the semantic-release configuration file. Currently no configuration options are available.
{
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
"semantic-release-whmcs"
]
}
With this example product/module versions will be published to the WHMCS Marketplace including changelog notes.
The WHMCS Marketplace authentication configuration is required and can be set via environment variables.
If you don't have an WHMCS Marketplace account yet, please create one. The credentials have to be made available in your CI environment via the WHMCSMP_LOGIN
and WHMCSMP_PASSWORD
environment variables. The account must have access to the product(s) you want to publish new versions for.
The WHMCS Marketplace Product ID configuration is required and can be set via environment variables.
The Product ID has to be made available in your CI environment via the WHMCSMP_PRODUCTID
environment variable.
That said, before you can use this module for publishing new product/module version to the WHMCS Marketplace, this Product has already to exist and as mentioned above, the account you provide here for authentication has to have access to manage that product. You can find the Product ID in the url when being in edit mode e.g. https://marketplace.whmcs.com/product/1234/edit.
Variable | Description |
---|---|
WHMCSMP_LOGIN |
Required. The email address of the WHMCS Marketplace account to use for authentication. |
WHMCSMP_PASSWORD |
Required. The password of the WHMCS Marketplace account to use for authentication. |
WHMCSMP_PRODUCTID |
Required. The product id of the product/module you want to publish versions for. |
WHMCSMP_MINVERSION |
Optional. The minimum supported WHMCS version. Defaults to 7.10. |
PUPPETEER_HEADLESS |
Optional. Toggle headless mode on/off. by default true. Values: 1,0. |
GH_TOKEN |
Optional. GitHub API authentication token to use for syncing versions. |
GH_REPO |
Optional. GitHub repository name (format: organization/repository) to use for syncing versions. |
None available yet.
Type ./whmcs.js --help
for command reference
Please read Contribution Guide Lines for details on our code of conduct, then address a PR to us. Contributors are highly welcome.
This project is licensed under the MIT License - see the LICENSE file for details.