Discussion About New Feature

Discuss the new feature that you want to add with us on our meeting in the following dimensions:

  1. User Cases, Values

  2. API

  3. Architecture, A Main Process

Submitting Your Proposal

you can refer to existing proposals for proposal template.

Developing

Developing on control plane

Suppose you are going to add a synergy feature named foobar with versioned v1alpha1.

  1. Add foobar APIs

    cd pkg/apis/sedna/v1alpha1/
    # code the api
    touch foobar.go
    
  2. Code controller logic based on the k8s operator pattern

    mkdir -p pkg/globalmanager/controllers/foobar/
    cd pkg/globalmanager/controllers/foobar/
    touch foobar.go
    
  3. Code upstream logic if any

    # GM part
    cd pkg/globalmanager/controllers/foobar/
    touch upstream.go
    
    # LC part
    mkdir pkg/localcontroller/managers/foobar/
    cd pkg/localcontroller/managers/foobar/
    touch foobar.go
    
  4. Code downstream logic if any

    # GM part
    cd pkg/globalmanager/controllers/foobar/
    touch downstream.go
    
    # LC part
    cd pkg/localcontroller/managers/foobar/
    touch foobar.go
    

About debugging GM/LC:

Also see coding conventions for clean code.

Developing Workers TBD

Submitting Your Code

When development has been done and ready to submit your work, see pull request guide for more details if you don’t know.