@hexonet/semantic-release-whmcs

`semantic-release` plugin for auto-publishing on WHMCS marketplace

Usage no npm install needed!

<script type="module">
  import hexonetSemanticReleaseWhmcs from 'https://cdn.skypack.dev/@hexonet/semantic-release-whmcs';
</script>

README

semantic-release-whmcs

npm version node semantic-release Build Status License: MIT PRs welcome

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.

Resources

Usage Guide

Requirements

Install

> npm i semantic-release-whmcs -D

Configuration

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.

WHMCS Marketplace authentication

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.

WHMCS Marketplace Product ID

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.

Environment variables

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.
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.

Options

None available yet.

Routines

Type ./whmcs.js --help for command reference

Contributing

Please read Contribution Guide Lines for details on our code of conduct, then address a PR to us. Contributors are highly welcome.

Authors

  • Kai Schwarz - lead development - PapaKai
  • Sebastian Vassiliou - development - h9k

License

This project is licensed under the MIT License - see the LICENSE file for details.

HEXONET GmbH