{"_id":"cf-blue-green","_rev":"56-37177091926ce9baae42727e5794c633","name":"cf-blue-green","dist-tags":{"latest":"0.2.2"},"versions":{"0.1.0":{"name":"cf-blue-green","version":"0.1.0","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","_id":"cf-blue-green@0.1.0","maintainers":[{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"}],"homepage":"https://github.com/18F/cf-blue-green#readme","bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"bin":{"cf-blue-green":"./bin/cf-blue-green"},"dist":{"shasum":"6e669be509972049fcc05786d539997ba43d008d","tarball":"https://registry.npmjs.org/cf-blue-green/-/cf-blue-green-0.1.0.tgz","integrity":"sha512-TE7Oyt4Ojc0Qt6LQkRqa7/zIP+vbFd0qS4VXSxXFZQlaowAD8Ub+4pRjjof5tTvviQaOhlDNgKlII41Zj7A5nw==","signatures":[{"sig":"MEYCIQC5jIM/AAI7O0rVOrC/WJQcWL9BI8L91Vu2y8z5CbDfWQIhANS7h1NZnZoitp/73Kb6rHC4EHp5A1cpTHJeUn8mAusI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"6e669be509972049fcc05786d539997ba43d008d","gitHead":"07e11e61cf5d987af1b7ffb3165e9f4e40e32b80","scripts":{},"_npmUser":{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},"deprecated":"This package is no longer maintained - use the built-in feature instead: https://docs.cloudfoundry.org/devguide/deploy-apps/rolling-deploy.html","repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"_npmVersion":"2.13.3","description":"zero-downtime deployment for Cloud Foundry applications","directories":{},"_nodeVersion":"0.12.2"},"0.1.1":{"name":"cf-blue-green","version":"0.1.1","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","_id":"cf-blue-green@0.1.1","maintainers":[{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"}],"homepage":"https://github.com/18F/cf-blue-green#readme","bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"bin":{"cf-blue-green":"./bin/cf-blue-green"},"dist":{"shasum":"8328515342ecc183189f55f3365d0094d5284aa3","tarball":"https://registry.npmjs.org/cf-blue-green/-/cf-blue-green-0.1.1.tgz","integrity":"sha512-0f0K2hjGYodegSljFzKvDb3JRVtckfy4b7zD73f+4sNEFECSba+GnuhLZ57mhyhNzaJIJ+/jSag66zOoQNEEfw==","signatures":[{"sig":"MEUCIGLofCUZ7jwMOVnPpJa/XKapJ6wxzUK6qYH5U37WGBskAiEA70b+zmFeUFhUJhWF0Sj4Nae/rSNl6EwyxhDms0L234Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"8328515342ecc183189f55f3365d0094d5284aa3","gitHead":"a7929202e13bb306ab0ce9f4ad40bb4d4c26c434","scripts":{},"_npmUser":{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},"deprecated":"This package is no longer maintained - use the built-in feature instead: https://docs.cloudfoundry.org/devguide/deploy-apps/rolling-deploy.html","repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"_npmVersion":"2.13.3","description":"zero-downtime deployment for Cloud Foundry applications","directories":{},"_nodeVersion":"0.12.2"},"0.2.0":{"name":"cf-blue-green","version":"0.2.0","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","_id":"cf-blue-green@0.2.0","maintainers":[{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"}],"homepage":"https://github.com/18F/cf-blue-green#readme","bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"bin":{"cf-blue-green":"./bin/cf-blue-green","cf-blue-green-travis":"./bin/cf-blue-green-travis"},"dist":{"shasum":"eb8f201d1db1d37c828178157bf8a683ee35a6aa","tarball":"https://registry.npmjs.org/cf-blue-green/-/cf-blue-green-0.2.0.tgz","integrity":"sha512-NA9r6S3K1NNkOPQDN6LFJ3gCGEWaxy6UN/Oxc2+gssLeq5ST6QRqBjsp3OUclhTrIxFd29e9qRsheZNlAyKUhQ==","signatures":[{"sig":"MEUCIQDgKABS9pk6mANGSWW66aiLW/o3Nfp/sSP/YY7MyF93kQIgFgIfviZKn8pEJOs/Xo79SxDkseTfup4zYGcqU4yDowY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"eb8f201d1db1d37c828178157bf8a683ee35a6aa","gitHead":"2a1d2f960ea31dee6ec05880e4627de4a44892d8","scripts":{},"_npmUser":{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},"deprecated":"This package is no longer maintained - use the built-in feature instead: https://docs.cloudfoundry.org/devguide/deploy-apps/rolling-deploy.html","repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"_npmVersion":"2.13.4","description":"zero-downtime deployment for Cloud Foundry applications","directories":{},"_nodeVersion":"0.12.2"},"0.2.1":{"name":"cf-blue-green","version":"0.2.1","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","_id":"cf-blue-green@0.2.1","maintainers":[{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"}],"homepage":"https://github.com/18F/cf-blue-green#readme","bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"bin":{"cf-blue-green":"./bin/cf-blue-green","cf-blue-green-travis":"./bin/cf-blue-green-travis"},"dist":{"shasum":"a627c987c83e7a8d47e749bf1db27f2e0d9ede26","tarball":"https://registry.npmjs.org/cf-blue-green/-/cf-blue-green-0.2.1.tgz","integrity":"sha512-rd48+MmngKotMxsKFHq0Udm/UUnR+ick8b+gQIsNOqU+tk9dV6ybb8KuUNsCXCfP0q6ZfLnin6BgV7R7KMlSJQ==","signatures":[{"sig":"MEYCIQCNiSEvlpnkpw+c65y8qQ8saA2jj4mI5JXI3TFkHIWQngIhALx/cwkoPRuBBYvoBtJQCa2xb+ZxZ7G1pRZN5K71xUyx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"a627c987c83e7a8d47e749bf1db27f2e0d9ede26","gitHead":"36fa9f7e592778b00e9f68c4d0871a29da6cfb21","scripts":{},"_npmUser":{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},"deprecated":"This package is no longer maintained - use the built-in feature instead: https://docs.cloudfoundry.org/devguide/deploy-apps/rolling-deploy.html","repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"_npmVersion":"2.13.5","description":"zero-downtime deployment for Cloud Foundry applications","directories":{},"_nodeVersion":"0.12.2"},"0.2.2":{"name":"cf-blue-green","version":"0.2.2","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","_id":"cf-blue-green@0.2.2","maintainers":[{"name":"18f-devops","email":"devops@gsa.gov"},{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},{"name":"jeremiak","email":"jbkimelman@gmail.com"},{"name":"mbland","email":"mbland@acm.org"},{"name":"msecret","email":"msegreto@miceover.com"},{"name":"shawnbot","email":"shawnbot-npm@nym.hush.com"}],"homepage":"https://github.com/18F/cf-blue-green#readme","bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"bin":{"cf-blue-green":"./bin/cf-blue-green","cf-blue-green-travis":"./bin/cf-blue-green-travis"},"dist":{"shasum":"b77eaa3e305047b9b8ceb679d80be5ad504c7f8a","tarball":"https://registry.npmjs.org/cf-blue-green/-/cf-blue-green-0.2.2.tgz","integrity":"sha512-pMtRmdXMJVT+d9VjwEWsjsc6+B0WfKDDyp5GB+ZVq3iP5AS5imLgXycvG75GYxN6XglWcEu8itbY+Y/CDNJG4w==","signatures":[{"sig":"MEYCIQDcJXhNSr32SWBVNBKhbWFq/qZoo82fQmVCkoNVOLESowIhAOjMpi/AyFL13aG5Bk6z6f+dzzRtp82TzFLL2e7LJn7H","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"b77eaa3e305047b9b8ceb679d80be5ad504c7f8a","gitHead":"27d0333a915db770079021383d948d38a80e6ccb","scripts":{},"_npmUser":{"name":"aidanfeldman","email":"aidan.feldman@gmail.com"},"deprecated":"This package is no longer maintained - use the built-in feature instead: https://docs.cloudfoundry.org/devguide/deploy-apps/rolling-deploy.html","repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"_npmVersion":"3.5.0","description":"zero-downtime deployment for Cloud Foundry applications","directories":{},"_nodeVersion":"5.0.0"}},"time":{"created":"2015-08-04T06:53:03.450Z","modified":"2026-07-30T16:06:40.610Z","0.1.0":"2015-08-04T06:53:03.450Z","0.1.1":"2015-08-10T04:43:25.529Z","0.2.0":"2015-08-17T17:33:02.566Z","0.2.1":"2015-09-21T08:01:07.880Z","0.2.2":"2015-12-21T15:25:36.962Z"},"bugs":{"url":"https://github.com/18F/cf-blue-green/issues"},"author":{"name":"Aidan Feldman","email":"aidan.feldman@gsa.gov"},"license":"CC0-1.0","homepage":"https://github.com/18F/cf-blue-green#readme","keywords":["cloud foundry","blue-green","zero-downtime","deploy"],"repository":{"url":"git+https://github.com/18F/cf-blue-green.git","type":"git"},"description":"zero-downtime deployment for Cloud Foundry applications","maintainers":[{"email":"devops@gsa.gov","name":"18f-devops"},{"email":"rochelle.ribeiro@gsa.gov","name":"rori123"},{"email":"sheldon@navapbc.com","name":"sb-nava"},{"email":"gina.yamada@gsa.gov","name":"ginayam"},{"email":"micah.neveu@gsa.gov","name":"mneveunava"},{"email":"tts-tech-portfolio@gsa.gov","name":"tts-tech-portfolio"},{"email":"michael.r.king@gsa.gov","name":"mkgsa"},{"email":"charles.ferguson@gsa.gov","name":"cvfergus"},{"email":"matt.gardner@gsa.gov","name":"nava-matt"},{"email":"keithwilliams@navapbc.com","name":"keithnava"},{"email":"tai@taigrr.com","name":"taigrr"},{"email":"luigi.ray-montanez@gsa.gov","name":"luigiraymontanez"},{"email":"john.jediny@gsa.gov","name":"jjediny"},{"email":"lakeisha.russell@gsa.gov","name":"lrussell01"},{"email":"gerardo.cruz-ortiz@gsa.gov","name":"gerardo.cruz-ortiz"},{"email":"aj.farkas@gsa.gov","name":"ajfarkas_gsa"},{"email":"aidan.feldman@gmail.com","name":"aidanfeldman"}],"readme":"***Note: if your application's manifest is \"complete\", use [Autopilot](https://github.com/concourse/autopilot) instead. More info [below](#manifests), in [the Autopilot README](https://github.com/concourse/autopilot#warning), and in [this Issue](https://github.com/concourse/autopilot/issues/11).***\n\n# Cloud Foundry blue-green deployment\n\nAllows zero-downtime deployments of applications within Cloud Foundry, with no additional setup needed.\n\n## Usage\n\n1. [Install the `cf` CLI](https://github.com/cloudfoundry/cli/releases) **v6.12.4+**.\n1. Run `npm install -g cf-blue-green`.\n    * See [Notes](#manual-installation) below for non-Node installation.\n1. Run `cf-blue-green <appname>` (instead of `cf-push`) from your application directory to deploy.\n\nThis creates a copy of your already-running application, and safely switches traffic over to it. It's recommended that you try this script on a non-production application environment first, just to ensure that everything is switched over properly.\n\n## Notes\n\n### Manual installation\n\nThe script is distributed via NPM, but doesn't actually require Node.js beyond that. If you don't want to install Node, simply:\n\n1. Download [the script](bin/cf-blue-green).\n1. Run `chmod a+x cf-blue-green`.\n1. Move the file somewhere in your PATH.\n\n### Using with Travis\n\nTravis supports [continuous deployment](http://docs.travis-ci.com/user/deployment/), which will automatically deploy your application after its tests pass on a specified branch. To use `cf-blue-green` with Travis, you need to use a [script provider](http://docs.travis-ci.com/user/deployment/script/) instead of the default Cloud Foundry provider. Your Cloud Foundry settings are read from environment variables.\n\nSet up continuous deployment with the following settings in your `.travis.yml` file:\n\n```yml\nsudo: true\nenv:\n  global:\n  - CF_APP=[app name]\n  - CF_API=[API endpoint]\n  - CF_USERNAME=[user]\n  - CF_ORGANIZATION=[organization]\n  - CF_SPACE=[space]\n  - secure: [CF_PASSWORD=[encrypted with Travis](http://docs.travis-ci.com/user/environment-variables/#Encrypted-Variables)]\nbefore_deploy: npm install -g cf-blue-green\ndeploy:\n  provider: script\n  script: cf-blue-green-travis\n  on:\n    branch: [git branch you want to deploy]\n```\n\n### Manifests\n\n`cf-blue-green` creates a temporary manifest from your live application, meaning that it ignores the `manifest.yml` in your directory, if you have one. To deploy any changes to your manifest, use `cf push` directly.\n\n## Multiple domains\n\nThe script fails on apps with multiple domains, because the domains in the manifest are in the form of a list:\n\n```yml\ndomain:\n  - 18f.gov\n  - digitalgov.gov\n```\n\nTo work around this, use the env var `B_DOMAIN` for the domain you'd like the B instance to use.\n\n\n## Resources\n\nMore information about blue-green deployment, all of which this script drew from.\n\n* http://www.cloudfoundry.rocks/blue-green-deployment-with-cloudfoundry/\n* http://martinfowler.com/bliki/BlueGreenDeployment.html\n* http://docs.pivotal.io/pivotalcf/devguide/deploy-apps/blue-green.html\n* https://github.com/dlapiduz/step-cloud-foundry-deploy/blob/master/run.sh\n","readmeFilename":"README.md"}