pivotal-cf/cliaas

Name: cliaas

Owner: Pivotal Cloud Foundry

Description: a iaas agnostic cli to perform blue green ops manager rotations

Created: 2017-02-07 19:03:59.0

Updated: 2018-05-09 17:14:22.0

Pushed: 2018-05-09 17:14:20.0

Homepage:

Size: 6648

Language: Go

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

cliaas

cliaas wraps multiple IaaS-specific libraries to perform some IaaS-agnostic functions. Presently it only supports upgrading a Pivotal Cloud Foundry Operations Manager VM.

Using master from this repo directly may result in breaking the pipelines that consume it. Tracking master is considered unstable. Please use the official releases, or the pcf-pipelines release on Pivotal Network.

Installing

Download the latest release.

Install from source

Requirements:

r -p $GOPATH/src/github.com/pivotal-cf
clone --depth 1 https://github.com/pivotal-cf/cliaas $GOPATH/src/github.com/pivotal-cf/cliaas
GOPATH/src/github.com/pivotal-cf/cliaas
e install
nstall github.com/pivotal-cf/cliaas/cmd/cliaas
Usage

cliaas -c config.yml replace-vm --identifier vm-identifier

Config

The -c, --config= flag is for specifying a YAML file with IaaS-specific configuration options to use when running a command. The config should only contain the configuration for a single IaaS for now.

AWS-specific Config
> config.yml <<EOF
s:
access_key_id: example-access-key-id
secret_access_key: example-secret-access-key
region: us-east-1
vpc: vpc-12345678
ami: ami-019e4617

Notes:

GCP-specific Config
> config.yml <<EOF
p:
credfile: /tmp/gcp-creds.json
zone: us-east-1
project: my-gcp-projectname
disk_image_url: opsmanager-disk-image-url 

Azure-specific Config

!!! The replace-vm call on Azure will DELETE the current ops manager vm when standing up the new version. This behavior is different than other IaaS' so be warned !!!

> config.yml <<EOF
ure:
vhd_image_url: xxxx
subscription_id: xxxxxx 
client_id: xxxxx
client_secret: xxxxx
tenant_id: xxxxx
resource_group_name: xxxxx
resource_manager_endpoint: xxxxx
storage_account_name: xxxx
storage_account_key: xxxx
storage_container_name: xxxx
storage_url: xxxx
vm_admin_password: xxxxx

The VM identifier is used to find the VM by name in the IaaS.

Image values in config.yml
Developing
nstall github.com/onsi/ginkgo/ginkgo
go -r -p -race -skipPackage integration

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.