Skip to content

Latest commit

 

History

History
41 lines (28 loc) · 2.11 KB

CONTRIBUTING.md

File metadata and controls

41 lines (28 loc) · 2.11 KB

Contributing to Kubo

Contributor License Agreement

If you have not previously done so, please fill out and submit an Individual Contributor License Agreement or a Corporate Contributor License Agreement.

Prerequisites

Review the following to understand Kubernetes

  1. https://docs.cloudfoundry.org/concepts/architecture/
  2. https://thenewstack.io/kubernetes-an-overview/
  3. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/architecture.md

Developer Workflow

  1. Fork the project on GitHub
  2. Create a feature branch.
  3. Make your feature addition or bug fix. Please make sure there is appropriate test coverage.
  4. Run tests.
  5. Rebase on top of master.
  6. Send a pull request.

Before making significant changes it's best to communicate with the maintainers of the project through GitHub Issues.

Running Integration Tests

Please make sure to run all tests before submitting a pull request.

Shell script tests

This repo provides a test runner for running integration tests against the shell scripts. It requires ginkgo binary to be installed locally. To run the tests, execute bin/run_tests from the repository directory.

Deployment tests

The sequence to run deployment tests includes the following steps:

  1. (re-)deploy KuBOSH
  2. deploy a kubernetes cluster on the new KuBOSH
  3. deploy a workload on the cluster and make sure it is working

Optionally, it is possible to tear down the service by running bosh-cli -e <KUBO_ENV> -d <CLUSTER_DEPLOYMENT_NAME> delete-deployment followed by the bin/destroy_bosh command.

Additional BOSH configuration

We support only basic BOSH configuration. If you have some additional ops-file that will be useful for community, add them to https://github.com/cloudfoundry/bosh-deployment We have included this repo as a subtree and update it periodically.