Skip to content

Latest commit

 

History

History
50 lines (43 loc) · 1.67 KB

CONTRIBUTING.md

File metadata and controls

50 lines (43 loc) · 1.67 KB

Contributing to Admiral

We welcome contributions :)

Submitting PRs

  • Make sure to check existing issues and file an issue before starting to work on a feature/bug. This will help prevent duplication of work. Also refer to Collaboration for communication channels.

Setting up for local Development

  • Clone the repo and set ADMIRAL_HOME env variable
git clone https://github.com/istio-ecosystem/admiral.git
cd admiral
export ADMIRAL_HOME=$(pwd)
  • Run a k8s cluster using minikube (you can use any k8s cluster if one exists already)
minikube start --memory=8192 --cpus=4 --kubernetes-version=v1.14.2
export KUBECONFIG=~/.kube/config
  • Install Prerequisites
  • Set up necessary permissions and configurations for Admiral
$ADMIRAL_HOME/install/scripts/dev_setup.sh
  • Run admiral from your IDE (assumes that the kubeconfig is for the cluster is at ~/.kube/config)
$ADMIRAL_HOME/admiral/cmd/admiral/main.go --kube_config "<Path_to_Kubeconfig>"
  • Optional: Adding a second cluster for admiral to monitor (for multi-cluster)
$ADMIRAL_HOME/install/scripts/cluster-secret.sh <Path_to_Kubeconfig_Admiral_Cluster> <Path_to_Kubeconfig_Remote_Cluster> admiral

Protobuf code generation

  • If you've made changes to protobuf model objects and need to re-generate their clientsets, use sh hack/update-codegen.sh and checkin the generated files

Integration tests

Single cluster

Single cluster integration tests can be run locally using minikube.

cd $ADMIRAL_HOME/tests
./master_run.sh
  • Multi-cluster
TODO