Skip to content

bellycard/apigee_cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ApigeeCli

An API Wrapper and CLI for Apigee

Installation

Add this line to your application's Gemfile:

gem 'apigee_cli'

And then execute:

$ bundle
$ npm install -g apigeetool # this makes use of the apigeetool JS library

Or install it yourself as:

$ gem install apigee_cli

Setting up your User Credentials

Assuming you have an Apigee account, set your user credentials in ~/.apigeerc:

org: APIGEE_ORG
username: APIGEE_USERNAME
password: APIGEE_PASSWORD
environment: ENVIRONMENT

Commands

Top level commands

Commands:
  apigee apigeetool [COMMAND]  # Run a command using the apigeetool Node.js module
  apigee config [COMMAND]      # Run a command within the context of an app configuration
  apigee help [COMMAND]        # Describe available commands or one specific command
  apigee resource [COMMAND]    # Run a command within the context of a resource
  apigee settings              # Show the current apigeerc settings
  apigee version               # Shows the Apigee CLI version number

To see sublevel commands, you can run:

apigee help apigeetool
apigee help config
apigee help resource

Usage

A. Deployment (leverages apigeetool Node.js module)

apigee apigeetool listdeployments [DEFAULT]

# by environment
$ apigee apigeetool listdeployments -e=ENVIRONMENT

# by proxy name
$ apigee apigeetool listdeployments -n PROXY_NAME

apigee apigeetool deploy

$ apigee apigeetool deploy -e=ENVIRONMENT -n PROXY_NAME -d ROOT_DIR_OF_PROXY -V

apigee apigeetool nodedeploy

$ apigee apigeetool nodedeploy -e=ENVIRONMENT -n NODE_PROXY_NAME -d ROOT_DIR_OF_NODE_PROXY -m MAIN_JS_FILE -b BASE_PATH -v secure

apigee apigeetool undeploy

$ apigee apigeetool undeploy -e=ENVIRONMENT -n PROXY_NAME -D

apigee apigeetool fetchproxy

$ apigee apigeetool fetchproxy -n PROXY_NAME -r REVISION_NUMBER

apigee apigeetool delete

NOTE: This deletes all revisions of PROXY_NAME. It is an error to delete a proxy that still has deployed revisions. Revisions must be undeployed using "undeploy" before this command may be used.

$ apigee apigeetool delete -n PROXY_NAME

apigee apigeetool getlogs [from a Node app]

$ apigee apigeetool getlogs -e=ENVIRONMENT -n NODE_PROXY_NAME

B. Configuration Settings on Apigee Server

apigee config list [DEFAULT]

# defaults
-e=test|--environment=test

# List configs for default environment of test
$ apigee config list

# List config for a particular config_name
$ apigee config list --config_name=configuration_one

apigee config push

# defaults
-e=test|--environment=test
--config_name=configuration

# Create config key-value map
$ apigee config push --config_name=new_config

# Update config key-value pair
$ apigee config push key_one=value_one

# Overwrite existing config key-value pair
$ apigee config push key_one=changed_value_one --overwrite=true

apigee config delete

# defaults
-e=test|--environment=test
--config_name=configuration

# Delete config key-value pair (default config_name is configuration)
$ apigee config delete --entry_name=key_one

# Delete config for that config_name
$ apigee config delete --config_name=configuration_one

C. Resource Files on Apigee Server

apigee resource list [DEFAULT]

# List resource files for organization
$ apigee resource list

# Get resource file with resource_name
$ apigee resource list --name=testing.js

apigee resource upload

# Upload resource files from resource_folder
$ apigee resource upload --folder=jsc

# Upload specific resource file from resource folder
$ apigee resource upload --folder=jsc --name=testing.js

apigee resource delete

# Delete resource file of resource_name
$ apigee resource delete --name=testing.js

Contributing

  1. Fork it ( http://github.com//apigee_cli/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request