The repository that holds cluster state needs to be structured in a particular way.

Weave Cloud supports synchronizing an instance with a single repository. Instances can use different subdirectories or branches within a repository. Applications on the same cluster but using different configuration repositories may be supported by creating and configuring multiple instances of Weave Cloud Deploy.

Each Kubernetes resource (e.g., a Deployment or Service) should have its own file. Each manifest should specify its namespace; otherwise the Weave Cloud agent will follow Kubernetes convention and assume the namespace "default".

Files may be separated into subfolders, e.g., by namespace.

A simple example can be found here. A more complex example can be found in the Microservices Demo reference application.

Further Reading