Installing Armory Spinnaker from the Debian Package

We provide a Debian package that will install all the dependencies needed. To install the debian package, currently the only supported OS is Ubuntu Trusty, 14.04

apt-get update && apt-get install -y \  
      apt-transport-https \
      ca-certificates \
      curl

curl -fsSL https://yum.dockerproject.org/gpg | sudo apt-key add -

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61 


echo "deb https://apt.dockerproject.org/repo/ ubuntu-$(lsb_release -cs) main" \  
        | sudo tee -a /etc/apt/sources.list

echo "deb https://dl.bintray.com/armory/debians trusty main" \  
  | sudo tee -a /etc/apt/sources.list

apt-get update

apt-get install armoryspinnaker  

Modify Global User-Data For All Deployments

When new server-groups are deployed Spinnaker attaches a global user-data script/file that is pre-pended to any application specific user-data configured in a server Spinnaker pipeline. By default Armory Spinnaker comes with a user-data file which is placed in /opt/spinnaker/config/udf/udf0. This can be modified and overwritten to your specific needs.

Enabling Jenkins & Igor to talk to Spinnaker

To enable Igor, Gate to integrate with your Jenkins build you'll need to edit your spinnaker-local.yml file. First configure Jenkins by finding your password or API Token. You can find your token here: http://${YOUR_JENKINS_URL}.armory.io/me/configure.

Then configure spinnaker local and add the following:

services:  
  igor:
    enabled: true
  jenkins:
    enabled: true
    defaultMaster:
      name: Name-of-Jenkins-Service
      baseUrl: http://${YOUR_JENKINS_URL}
      username: ${YOUR_USERNAME}
      password: ${API_TOKEN}

Manual Rollback of Armory Spinnaker

If you deploy a configuration or a change that takes down Spinnaker it'll be impossible to rollback since Spinnaker would not be available. In order to manually to deploy back you'll have to do the following:

  1. Look for the existing deployment for with the armoryspinnaker prefix.

  2. Find the ASGs of Armory Spinnaker that was deployed. Typically it should be armoryspinnaker-ha-polling-v${VER} where ${VER} is something like 023. You should see 2 ASGS, one that has active instead and the older version should be disabled. armory spinnaker ASGs

  3. Edit the older ASG and remove any suspended processes that are listed remove suspended process

  4. Increase the number of instance armoryspinnaker-ha-polling ASG to just 1 and the other ASG armoryspinnaker-ha, the non-polling ASG back to atleast 2.
    ASG upping desired capacity count

  5. Reduce the latest ASGs down to 0 so that they're no longer behind the ELB

  6. Check the Armory Spinnaker ELB, make sure all instances back behind both the user-facing and internal-services ELB.

  7. Go back to your Armory Spinnaker URL and make sure all is back to a working state.