Skip to content

apiheat/akamai-cli-a2

Repository files navigation

Akamai CLI for Adaptive Acceleration

The Adaptive Acceleration product uses Automatic Server Push, with the HTTP/2 protocol, and Automatic Preconnect to increase the speed of page loading. The Adaptive Acceleration API provides the ability to see which rules Adaptive Acceleration applies to a property. It also allows you to start the generation of new rules.

Should you miss something we gladly accept patches :)

CLI uses custom Akamai API client

Configuration & Installation

Credentials

Set up your credential files as described in the authorization and credentials sections of the getting started guide on developer.akamai.com.

Tools expect proper format of sections in edgerc file which example is shown below

NOTE: Default file location is ~/.edgerc

[default]
client_secret = XXXXXXXXXXXX
host = XXXXXXXXXXXX
access_token = XXXXXXXXXXXX
client_token = XXXXXXXXXXXX

In order to change section which is being actively used you can

  • change it via --config parameter of the tool itself
  • change it via env variable export AKAMAI_EDGERC_CONFIG=/Users/jsmitsh/.edgerc

In order to change section which is being actively used you can

  • change it via --section parameter of the tool itself
  • change it via env variable export AKAMAI_EDGERC_SECTION=mycustomsection

NOTE: Make sure your API client do have appropriate scopes enabled

Installation

The tool can be used as a stand-alone binary or in conjuction with Akamai CLI.

Akamai-cli ( recommended )

Execute the following from console

> akamai install https://github.com/apiheat/akamai-cli-a2

Stand-alone

As part of automated releases/builds you can download latest version from the project release page

Usage

NAME:
   akamai-cli-a2 - A CLI to interact with Akamai Adaptive Acceleration

USAGE:
   akamai-cli-a2 [global options] command [command options] [arguments...]

VERSION:
   X.X.X

AUTHORS:
   Petr Artamonov
   Rafal Pieniazek

COMMANDS:
     report, r  Get a report for property [ID]
     reset, re  Reset all existing info for property [ID]
     help, h    Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --config FILE, -c FILE   Location of the credentials FILE (default: "/Users/USER_NAME/.edgerc") [$AKAMAI_EDGERC_CONFIG]
   --debug value            Debug Level [$AKAMAI_EDGERC_DEBUGLEVEL]
   --section NAME, -s NAME  NAME of section to use from credentials file (default: "default") [$AKAMAI_EDGERC_SECTION]
   --help, -h               show help
   --version, -v            print the version

Development

In order to develop the tool with us do the following:

  1. Fork repository

  2. Clone it to your folder ( within GO path )

  3. Ensure you can restore dependencies by running

    dep ensure
  4. Make necessary changes

  5. Make sure solution builds properly ( feel free to add tests )

    go build -ldflags="-s -w -X main.appVer=1.2.3 -X main.appName=$(basename `pwd`)"