All Projects → pivotal-cf → cf-rabbitmq-release

pivotal-cf / cf-rabbitmq-release

Licence: Apache-2.0 license
A BOSH Release of RabbitMQ

Programming Languages

shell
77523 projects
ruby
36898 projects - #4 most used programming language
go
31211 projects - #10 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to cf-rabbitmq-release

bosh-softlayer-cpi-release
An external BOSH CPI for the SoftLayer cloud written in Golang
Stars: ✭ 14 (-51.72%)
Mutual labels:  cloud-foundry, bosh-release, bosh
vault-boshrelease
No description or website provided.
Stars: ✭ 29 (+0%)
Mutual labels:  cloud-foundry, bosh-release, bosh
bosh-kubernetes-cpi-release
The goal for this project is to provide a fully functional BOSH CPI. It will eventually allow to deploy any BOSH release to any Kubernetes cluster.
Stars: ✭ 29 (+0%)
Mutual labels:  cloud-foundry, bosh-release, bosh
logsearch-boshrelease
A BOSH-scalable ELK release
Stars: ✭ 45 (+55.17%)
Mutual labels:  cloud-foundry, bosh-release, bosh
antifreeze
Cloud Foundry CLI plugin to detect if an app doesn't match the manifest
Stars: ✭ 21 (-27.59%)
Mutual labels:  cloud-foundry, pcf
bosh exporter
BOSH Prometheus Exporter
Stars: ✭ 22 (-24.14%)
Mutual labels:  cloud-foundry, bosh
minio-boshrelease
MinIO release for http://bosh.io/
Stars: ✭ 31 (+6.9%)
Mutual labels:  cloud-foundry, bosh-release
stackdriver-tools
Stackdriver Nozzle for Cloud Foundry Loggregator, Host Monitoring Agents BOSH Release
Stars: ✭ 22 (-24.14%)
Mutual labels:  cloud-foundry, bosh-release
Kubo Release
Kubernetes BOSH release
Stars: ✭ 153 (+427.59%)
Mutual labels:  cloud-foundry
firehose exporter
Cloud Foundry Firehose Prometheus exporter
Stars: ✭ 27 (-6.9%)
Mutual labels:  cloud-foundry
Cli
The official command line client for Cloud Foundry
Stars: ✭ 1,613 (+5462.07%)
Mutual labels:  cloud-foundry
Ng Demo
🦴 Bare Bones Angular 10 and Angular CLI Tutorial
Stars: ✭ 154 (+431.03%)
Mutual labels:  cloud-foundry
PCFControls
PCF Controls available for Model Driven Apps in order to enhance the out of the box capabilities !
Stars: ✭ 27 (-6.9%)
Mutual labels:  pcf
Gcp Service Broker
Open Service Broker for Google Cloud Platform
Stars: ✭ 133 (+358.62%)
Mutual labels:  cloud-foundry
app-autoscaler-release
Automated scaling for apps running on Cloud Foundry
Stars: ✭ 25 (-13.79%)
Mutual labels:  cloud-foundry
Eirini
Pluggable container orchestration for Cloud Foundry, and a Kubernetes backend
Stars: ✭ 116 (+300%)
Mutual labels:  cloud-foundry
Configuration
.NET Configuration providers for Spring Cloud Config Server & CloudFoundry
Stars: ✭ 100 (+244.83%)
Mutual labels:  cloud-foundry
btp-workflow-management-opensap
This repository contain the exercises for the openSAP course "Improve Business Processes with SAP Workflow Management."
Stars: ✭ 30 (+3.45%)
Mutual labels:  cloud-foundry
cf-ops-automation
a collaboration framework for operating cloudfoundry and services at scale
Stars: ✭ 21 (-27.59%)
Mutual labels:  bosh
Stratos
Stratos: Web-based Management UI for Cloud Foundry and Kubernetes
Stars: ✭ 209 (+620.69%)
Mutual labels:  cloud-foundry

Cloud Foundry RabbitMQ Service

This repository contains the release for RabbitMQ for Cloud Foundry. It is deployable by BOSH in the usual way.

This release is now using BOSH v2 job links and cloud config and requires at least BOSH Director v255.5

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.

Status

Job Status
unit tests hush-house.pivotal.io
integration tests hush-house.pivotal.io

Dependencies

Install (locally)

Clone the repository and install dependencies.

$ bundle install

Deploying

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

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

bosh interpolate \
  --vars-file=manifests/lite-vars-file.yml \
  manifests/cf-rabbitmq-template.yml

Alternatively, you can use the scripts/generate-manifest in order to generate a vanilla manifest for BOSH lite.

Currently, the release has only been tested to run on manual networks (https://bosh.io/docs/networks/).

Testing

Run bundle exec rake --tasks to list all the test subsets.

Unit Tests

To run only unit tests locally, run: scripts/unit-test.

Integration Tests

Integration tests require this release to be deployed into a BOSH director (see Deploying section above).

To run integration tests do scripts/integration-test.

Embedded Release Tests

Sometimes testing BOSH releases can lead to writing many tests at the top of the test pyramid, which can increase the feedback loop. Also when tests fail debugging can be hard given there are many components working together.

Embedded release tests are jobs that we deploy in a co-located way so that we can execute tests within a given deployment, inside a VM. The goal is to pull tests down the test pyramid trying to shorten the feedback loop and bring the tests closer to the code.

To execute embedded release tests you need to co-locate the tests within the release being tested and deploy. The deployment should fail if the tests fail. The tests we use can be found in the test release repo.

Bonus

Back in time Multitenant Broker Release used to live in the same Github repository as cf-rabbitmq-release, but not anymore. We have split both releases into two different repositories. They do different things and have different lifecyle, which explains our decision to do that.

A collection of ops-files and vars-files, features from Bosh 2 CLI, can be used to generate manifests. You’ll find a folder called manifests in both repositories with a manifest template, some ops-files and example of vars-files. It's not required to have two different deployments for cf-rabbitmq-release and cf-rabbitmq-multitenant-broker-release. In case you want to colocate both jobs you can leverage this ops-file to colocate them in the same deployment.

More information about bosh interpolate.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].