pivotal-cf/concourse-deploy-rabbitmq

Name: concourse-deploy-rabbitmq

Owner: Pivotal Cloud Foundry

Description: null

Forked from: enaml-ops/concourse-deploy-rabbitmq

Created: 2016-10-12 21:55:23.0

Updated: 2017-03-03 16:15:35.0

Pushed: 2016-09-23 21:12:02.0

Homepage: null

Size: 16

Language: Shell

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

concourse-deploy-rabbitmq

Deploy RabbitMQ with omg in a Concourse pipeline.

Prerequisites
  1. Git
  2. Vault
  3. Concourse
Steps to use this pipeline
  1. Clone this repository.

    clone https://github.com/enaml-ops/concourse-deploy-rabbitmq.git
    
  2. Copy the sample config file deployment-props-sample.json.

    oncourse-deploy-rabbitmq
    eployment-props-sample.json deployment-props.json
    
  3. Edit deployment-props.json, adding the appropriate values.

    This file is used to populate a vault hash. It holds the BOSH credentials for both omg (username/password) and the Concourse bosh-deployment (UAA client) resource.

    TOR deployment-props.json
    

    omg will also read other key/value pairs added here, matching them to command-line arguments. For example, to add the omg plugin parameter --syslog-address, you could add "syslog-address": "10.150.12.10" here rather than modifying the manifest generation script in ci/tasks.

    All available parameters/keys can be listed by querying the plugin. If not specified in deployment-props.json, default values will be used where possible.

    linux deploy-product p-rabbitmq-plugin-linux --help
    
  4. Load your deployment properties into vault. VAULT_HASH you define here and vault_hash_misc in pipeline-vars.yml below must match. You may consider using the vault hash here to hold common settings, referenced by multiple omg-based deployments. In such a case, you might name the hash something like secret/nonprod-common-props.

    rt VAULT_ADDR=http://YOUR_VAULT_ADDR:8200
    rt VAULT_HASH=secret/rabbitmq-nonprod-props
    t write $VAULT_HASH @deployment-props.json
    
  5. Delete or move deployment-props.json to a secure location.

  6. Copy the pipeline variables template.

    ipeline-vars-template.yml pipeline-vars.yml
    
  7. Edit pipeline-vars.yml, adding appropriate values.

    TOR pipeline-vars.yml
    

    Note: When you are deploying Pivotal RabbitMQ, you must add your API Token found at the bottom of your Pivotal Profile page.

  8. Create or update the pipeline.

    -t TARGET set-pipeline -p deploy-rabbitmq -c ci/pivotal-rabbitmq-service-pipeline.yml -l pipeline-vars.yml
    

    or

    -t TARGET set-pipeline -p deploy-rabbitmq -c ci/pivotal-rabbitmq-service-pipeline.yml -l pipeline-vars.yml
    
  9. Delete or move pipeline-vars.yml to a secure location.

  10. Unpause the pipeline

    -t TARGET unpause-pipeline -p deploy-rabbitmq
    
  11. Trigger the deployment job and observe the output.

    -t TARGET trigger-job -j deploy-rabbitmq/get-product-version -w
    -t TARGET trigger-job -j deploy-rabbitmq/deploy -w
    

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.