AMPLIFY Central CLI extension for downloading and creating AMPLIFY Central resources from Layer7.
For more documentation and examples please visit Unified Catalog integrations.
This extension is example code and comes with no guarantee of support or maintenance.
This assumes you already have Node.js installed and Layer7 acces with either a client_id and client_secret. Look at the
config set -h command below for required configs
Assuming you are familiar with Node.js and npm, you should first install the Axway Amplify CLI, which will give you connectivity to the Axway AMPLIFY Platform. Note that you must first have an account on https://platform.axway.com, and be provisioned in AMPLIFY Central:
$ [sudo] npm install -g axway
Use the Amplify package manager command to install the AMPLIFY Central CLI:
$ axway pm install @axway/axway-central-cli
You can then install the @axway/amplify-central-layer7-extension:
$ npm install @axway/amplify-central-layer7-extension $ axway central config set extensions.layer7-extension <path to where you installed module>
You must be logged into the Axway Amplify Platform before uploading any generated resource files. Refer to the Axway Central CLI documentation for more information.
There are two main extension commands;
resources. You can run each command with a
-h to get help on that specific command.
$ axway central layer7-extension -h USAGE: axway central layer7-extension <command> [options] Create Amplify Central resources from layer7 resources AMPLIFY CENTRAL EXTENSION FOR Layer7 COMMANDS: config Manage Layer7 Extension Configuration resources Generate resources from Layer7
config command is utilized to configure the extension prior to generating resources. There are two config sub-commands;
$ axway central layer7-extension config -h USAGE: axway central layer7-extension config <command> [options] Manage Layer7 Extension Configuration CONFIG COMMANDS: list View Amplify Central Layer7-extension configuration set Set Amplify Central Layer7-extension configuration
# set output dir for the generated resources: $ axway central layer7-extension config set --output-dir=<directory> # view config: $ axway central layer7-extension config list # view list of available options $ axway central layer7-extension config set -h SET OPTIONS: --base-url=<value> Required: Portal baseurl. Example: https://host:port/ssg --client-id=<value> Required: Client id for fetching APIs --client-secret=<value> Required: Client secret for fetching APIs --environment-name=<value> Required: Set environment name to create --icon=<value> Set absolute path for custom icon --output-dir=<value> Set absolute path for output directory --webhook-url=<value> Required: Set webhook url to use
resources command is utilized to generate github resources for Central. There is one resources sub-command:
$ axway central layer7-extension resources -h USAGE: axway central layer7-extension resources <command> [options] Generate resources from Layer7 RESOURCES COMMANDS: generate
$ axway central layer7-extension resources generate
The generate command will create Amplify Central resource files. These files will generated into either
./resources or the directory you configured with the
--output-dir configuration setting.
After generating these files you can modify and upload them to Amplify Central with the
axway central create -f=<file> command. You'll want be sure to upload any Environment files before other generate resources.
$ axway central create -h USAGE: axway central create <command> [options] Create a resource from a file. JSON and YAML formats are accepted. CREATE COMMANDS: environment Create an environment with the specified name. CREATE OPTIONS: --client-id=<value> Override your DevOps account's client ID -f,--file=<path> Filename to use to create the resource -o,--output=<value> Additional output formats. One of: yaml | json
# Upload the Environment, Webhook, and ConsumerSubscriptionDefinition axway central create -f=~/Desktop/Environment.yaml # Upload the APIService, APIServiceRevision, APIServiceInstance, and ConsumerInstance axway central create -f=~/Desktop/APIService-swagger-petstore.yaml
Copyright 2021 Axway
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.