This repository has been archived by the owner. It is now read-only.
BOSH release to run BOSH errands on Concourse
Shell Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.final_builds
config
examples
jobs
packages
releases/bosh-errand-resource
src
templates
.gitignore
LICENSE.md
README.md
Rakefile
pipeline.yml

README.md

BOSH Release for bosh-errand-resource

Run BOSH errands on Concourse!

Final releases are automatically created based on any changes to the upstream bosh-errand-resource

See the build pipeline https://ci.starkandwayne.com/pipelines/bosh-errand-resource-boshrelease for status.

Final releases are available on https://bosh.io/releases as well as this project's own GitHub releases.

Installation

To use this bosh release, first upload it to the BOSH/bosh-lite that is running Concourse:

bosh upload release https://bosh.io/d/github.com/starkandwayne/bosh-errand-resource-boshrelease

Next, update your Concourse deployment manifest to add the resource.

Add the bosh-errand-resource release to the list:

releases:
  - name: concourse
    version: latest
  - name: garden-linux
    version: latest
  - name: bosh-errand-resource
    version: latest

Into the worker job, add the {release: bosh-errand-resource, name: just_install_packages} job template that will install the package:

jobs:
- name: worker
  templates:
    ...
    - {release: bosh-errand-resource, name: just_install_packages}

The final change is to explicitly add the bosh-errand-resource package to the list:

jobs:
- name: worker
  ...
  properties:
      additional_resource_types:
      - type: bosh-errand
        image: /var/vcap/packages/bosh-errand-resource

Note that it is the latter two lines that are specific to this BOSH release:

- type: bosh-errand
  image: /var/vcap/packages/bosh-errand-resource

The former lines should be obtained from the Concourse BOSH release, not the documentation above which might be out of date. Use https://github.com/concourse/concourse/blob/master/jobs/groundcrew/spec#L69-L96

And bosh deploy your Concourse manifest.

Usage

An example mini-pipeline that would run an errand:

---
jobs:
- name: alert
  public: true
  plan:
  - put: errand-prod
    params:
      manifest: prod.yml
      errand: smoke_tests

resources:
- name: errand-prod
  type: bosh-errand
  source:
    target: {{bosh-target}}
    username: admin
    password: admin
    deployment: cf-prod

Setup pipeline in Concourse

fly -t snw set-pipeline -c pipeline.yml -l credentials.yml -p bosh-errand-resource-boshrelease