Project Scaffolding Layout
operator-sdk CLI generates a number of packages for each project. The following table describes a basic rundown of each generated file/directory.
|pkg/apis||Contains the directory tree that defines the APIs of the Custom Resource Definitions(CRD). Users are expected to edit the
|pkg/controller||This pkg contains the controller implementations. Users are expected to edit the
|deploy||Contains various YAML manifests for registering CRDs, setting up RBAC, and deploying the operator as a Deployment.|
|(Gopkg.toml Gopkg.lock) or (go.mod go.sum)||The Go mod or Go Dep manifests that describe the external dependencies of this operator, depending on the dependency manager chosen when initializing or migrating a project.|
|vendor||The golang vendor directory that contains local copies of external dependencies that satisfy Go imports in this project. Go Dep/Go modules manages the vendor directly. If using modules, this directory will not exist unless the project is initialized with the