Skip to content
Command line tool for releasing Adobe Experience Platform Launch extensions.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
.editorconfig
.eslintignore
.eslintrc
.gitignore
.npmignore
.prettierrc
.travis.yml
CODE_OF_CONDUCT.md
CONTRIBUTING.md
COPYRIGHT
LICENSE
PULL_REQUEST_TEMPLATE.md
README.md
jasmine.json
package-lock.json
package.json

README.md

Launch Extension Releaser Tool

Build Status npm (scoped)

Launch, by Adobe, is a next-generation tag management solution enabling simplified deployment of marketing technologies. For more information regarding Launch, please visit our product website.

The releaser tool allows extension developers to easily change the availability of their Launch extension. It can be used to change the availability from development to private.

For more information about developing an extension for Launch, please visit our extension development guide.

Usage

Before running the releaser tool, you must first have Node.js installed on your computer. Your npm version (npm comes bundled with Node.js) will need to be at least 5.2.0. You can check the installed version by running the following command from a command line:

npm -v

You will need to be authorized to release extensions in Launch. This is done by first creating an integration through Adobe I/O. Please see the Access Tokens documentation for detailed steps on creating an integration and procuring extension management rights.

Once you've been granted extension management rights, you can use the releaser tool in either a question-answer format or by passing information through command line arguments.

Question-Answer Format

To use the releaser in a question-answer format, run the releaser tool by executing the following command from the command line within the directory containing your extension source files:

npx @adobe/reactor-releaser

The releaser tool will ask for any information necessary to release the extension.

Command Line Arguments

To skip any of the questions the releaser would typically ask, you can pass the respective information as command line arguments. An example is as follows:

npx @adobe/reactor-releaser --private-key=/Users/jane/launchkeys/reactor_integration_private.key --org-id=01C20D883A7D42080A494212@AdobeOrg --tech-account-id=14A533A72B181CF90A44410D@techacct.adobe.com --api-key=192ce541b1144160941a83vb74e0e74d --client-secret=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

The named parameters are as follows:

--private-key (for authentication using an Adobe I/O integration)

The local path (relative or absolute) to the RSA private key. Instructions on how to generate this key can be found in the Access Tokens documentation and should have been used when creating your integration through the Adobe I/O console.

Optionally, rather than passing the private key path as a command line argument, it can instead be provided by setting an environment variable. The environment variable should be named REACTOR_IO_INTEGRATION_PRIVATE_KEY.

--org-id (for authentication using an Adobe I/O integration)

Your organization ID. You can find this on the overview screen for the integration you have created within the Adobe I/O console.

--tech-account-id (for authentication using an Adobe I/O integration)

Your technical account ID. You can find this on the overview screen for the integration you have created within the Adobe I/O console.

--api-key (for authentication using an Adobe I/O integration)

Your API key. You can find this on the overview screen for the integration you have created within the Adobe I/O console.

--client-secret (for authentication using an Adobe I/O integration)

Your client secret. You can find this on the overview screen for the integration you have created within the Adobe I/O console.

Optionally, rather than passing the client secret as a command line argument, it can instead be provided by setting an environment variable. The environment variable should be named REACTOR_IO_INTEGRATION_CLIENT_SECRET.

--verbose

Logs additional information useful for debugging.

--environment (for Adobe internal use only)

The environment to which the extension package should be released. Valid options are development, qe, integration. Users outside of Adobe don't need to use this flag.

Private key path can also be provided by setting an environment variable. The environment variable should be named one of the following, depending on which Launch environment will be receiving the extension package:

  • REACTOR_IO_INTEGRATION_PRIVATE_KEY_DEVELOPMENT
  • REACTOR_IO_INTEGRATION_PRIVATE_KEY_QE
  • REACTOR_IO_INTEGRATION_PRIVATE_KEY_INTEGRATION

Client secret can also be provided by setting an environment variable. The environment variable should be named one of the following, depending on which Launch environment will be receiving the extension package:

  • REACTOR_IO_INTEGRATION_CLIENT_SECRET_DEVELOPMENT
  • REACTOR_IO_INTEGRATION_CLIENT_SECRET_QE
  • REACTOR_IO_INTEGRATION_CLIENT_SECRET_INTEGRATION

Contributing

Contributions are welcomed! Read the Contributing Guide for more information.

To get started:

  1. Install node.js.
  2. Clone the repository.
  3. After navigating into the project directory, install project dependencies by running npm install.

To manually test your changes, first run the following command from the releaser tool directory:

npm link

Then, in a directory where you would like to use the releaser tool, run the following command:

npx @adobe/reactor-releaser

Npx will execute the releaser tool using your locally linked code rather than the code published on the public npm repository.

Licensing

This project is licensed under the Apache V2 License. See LICENSE for more information.

You can’t perform that action at this time.