provider-template is a minimal Crossplane Provider
that is meant to be used as a template for implementing new Providers. It comes
with the following features that are meant to be refactored:

  • A ProviderConfig type that only points to a credentials Secret.
  • A MyType resource type that serves as an example managed resource.
  • A managed resource controller that reconciles MyType objects and simply
    prints their configuration in its Observe method.


  1. Use this repository as a template to create a new one.
  2. Find-and-replace provider-template with your provider’s name.
  3. Run make to initialize the “build” Make submodule we use for CI/CD.
  4. Run make reviewable to run code generation, linters, and tests.
  5. Replace MyType with your own managed resource implementation(s).

Refer to Crossplane’s file for more information on how the
Crossplane community prefers to work. The Provider Development
guide may also be of use.


View Github