Skip to content

A BOSH Release of a RabbitMQ multi-tenant broker for Cloud Foundry

License

Notifications You must be signed in to change notification settings

pivotal-cf/cf-rabbitmq-multitenant-broker-release

Cloud Foundry RabbitMQ Multi-tenant Broker

This repository contains the release for a multi-tenant RabbitMQ service broker for Cloud Foundry. It's deployable by BOSH in the usual way.

Contributing

Even though the default branch is release, you should push changes to master. The release branch is the default so that bosh.io can find our releases.

Dependencies

In order to test this release locally you will need:

Install

Clone the repository and run ./scripts/update-release to update submodules and install dependencies.

Deploying

To deploy the release into BOSH you will need a deployment manifest. You can generate a deployment manifest using the following command:

alias boshgo=bosh # This is just to make pcf-rabbitmq tile team's life simpler
boshgo interpolate \
  --vars-file=manifests/lite-vars-file.yml \
  --var=director-uuid=$(bosh status --uuid) \
  manifests/cf-rabbitmq-broker-template.yml > manifests/cf-rabbitmq-broker.yml

Once you have a BOSH Lite up and running locally, run ./scripts/deploy-to-bosh-lite.

Testing

To run all the tests do bundle exec rake spec.

Use rspec to run a specific test: bundle exec rspec spec/integration/broker_registrar_spec.rb

Unit Tests

To run only unit tests locally, run: ./scripts/run-unit-tests. Unit tests do not require the release to be deployed.

Troubleshooting

An error occurred while installing capybara-webkit (macOS)

An error occurred while installing capybara-webkit (1.11.1), and Bundler cannot continue.
Make sure that `gem install capybara-webkit -v '1.11.1'` succeeds before bundling.

Some of the tests in this repository use prof, which depends on capybara. The error occurs when Xcode is not installed, and capybara needs Xcode to get installed. More details here

To solve the problem:

  • Go to the App Store and install Xcode
  • run sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
  • run sudo xcodebuild -license