Community

This example is a community-driven project. If you’re interested in contributing, you can get involved in the following ways:

  • Report Issues: If you encounter any problems or have suggestions for improvement, please report them on the GitHub issue tracker.

  • Contribute Code: Feel free to submit pull requests with bug fixes, enhancements, or new features. Ensure your code follows the project’s style guide and includes comprehensive tests.

  • Discuss Ideas: You can join the Flux community forum to discuss ideas, ask questions, and share your experiences with this example.

Adding a new cluster to the fleet

This example assumes two clusters: staging and production. You can add a new cluster to the fleet by following these steps:

  1. Clone the repository:

    git clone https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git
    cd ${GITHUB_REPO}
    
  2. Create a directory for your cluster:

    mkdir -p clusters/dev
    
  3. Copy the synchronization manifests:

    cp clusters/staging/infrastructure.yaml clusters/dev
    cp clusters/staging/apps.yaml clusters/dev
    
  4. Configure the spec.path inside clusters/dev/apps.yaml to point to your new cluster’s overlay.

  5. Push the changes to the main branch:

    git add -A && git commit -m "add dev cluster" && git push
    
  6. Bootstrap Flux on the new cluster:

    flux bootstrap github \
    --context=dev \
    --owner=${GITHUB_USER} \
    --repository=${GITHUB_REPO} \
    --branch=main \
    --personal \
    --path=clusters/dev
    
  7. Reconcile the Kustomization:

    flux reconcile kustomization flux-system \
    --context=dev \
    --with-source
    

This will ensure that the flux-system namespace is synchronized with the dev cluster.