operator-sdk init

operator-sdk init

Initialize a new project

Synopsis

Initialize a new project including vendor/ directory and Go package directories.

Writes the following files:

  • a boilerplate license file
  • a PROJECT file with the domain and repo
  • a Makefile to build the project
  • a go.mod with project dependencies
  • a Kustomization.yaml for customizating manifests
  • a Patch file for customizing image for manager manifests
  • a Patch file for enabling prometheus metrics
  • a main.go to run
  1. operator-sdk init [flags]

Examples

  1. # Scaffold a project using the apache2 license with "The Kubernetes authors" as owners
  2. operator-sdk init --project-version=2 --domain example.org --license apache2 --owner "The Kubernetes authors"

Options

  1. --component-config create a versioned ComponentConfig file, may be 'true' or 'false'
  2. --domain string domain for groups (default "my.domain")
  3. --fetch-deps ensure dependencies are downloaded (default true)
  4. -h, --help help for init
  5. --license string license to use to boilerplate, may be one of 'apache2', 'none' (default "apache2")
  6. --owner string owner to add to the copyright
  7. --project-name string name of this project
  8. --repo string name to use for go module (e.g., github.com/user/repo), defaults to the go package of the current working directory.
  9. --skip-go-version-check if specified, skip checking the Go version

Options inherited from parent commands

  1. --plugins strings plugin keys of the plugin to initialize the project with
  2. --project-version string project version
  3. --verbose Enable verbose logging

SEE ALSO

Last modified February 11, 2021: align the sdk with kb (#4402) (4fc8a17c)