This document helps you get started developing code for Volcano. If you follow this guide and find some problem, please take a few minutes to update this file.
Volcano components only have few external dependencies you need to set up before being able to build and run the code.
- Setting up Go
- Setting up Docker
- Other dependencies
- Setting up Kubernetes
- Setting up personal access token
All Volcano components are written in the Go programming language. To build, you'll need a Go development environment. If you haven't set up a Go development environment, please follow these instructions to install the Go tools.
Volcano currently builds with Go 1.12
Istio has a Docker build system for creating and publishing Docker images. To leverage that you will need:
-
Docker platform: To download and install Docker follow these instructions.
-
Docker Hub ID: If you do not yet have a Docker ID account you can follow these steps to create one. This ID will be used in a later step when setting up the environment variables.
We require Kubernetes version 1.12 or higher with CRD support.
If you aren't sure which Kubernetes platform is right for you, see Picking the Right Solution.
This is only necessary for core contributors in order to push changes to the main repos. You can make pull requests without two-factor authentication but the additional security is recommended for everyone.
To be part of the Volcano organization, we require two-factor authentication, and you must setup a personal access token to enable push via HTTPS. Please follow these instructions for how to create a token. Alternatively you can add your SSH keys.
Once you've set up the prerequisites, continue with Using the Code Base for more details about how to build & test Volcano.