Giter VIP home page Giter VIP logo

provider-credential-controller's Introduction

Provider-credential-controller

License

What is provider-credential-controller

With provider-credential-controller, your cluster secrets will be automatically updated when making changes to the Provider Crednetial secrets.

Go to the Contributing guide to learn how to get involved.

Getting started

  • Steps for development:

    • Compile the code by running

      make compile
      
      ./build/_output/manager  # Execute the binary
    • Run the go file manually

      go run ./cmd/manager/main.go
    • Push an image to your repository

      export VERSION=0.1 # Specify a version, must be edited in ./deploy/controller/deployment.yaml
      export REPO_URL=quay.io/MY_ORGANIZATION_OR_USERNAME
      
      make push
  • Steps for deployment:

    • Connect to the OpenShift cluster acting as the hub for Open Cluster Management
      oc apply -k deploy/controller
      • Even though this controller deploys as a single pod, it uses leader election to make sure only one instance is ever running.
      • Even if the controller is interupted while updating secrets, when it restarts, it will continue the process until all copied secrets are updated with the new values from the Provider Credential secret.
  • Steps for testing:

    • Running unit tests:

      make unit-tests
    • Running scale testing (3000 copied secrets)

      • Connect to an OpenShift cluster
      • Make sure either the controller is deployed, see Steps for deployment or launched from the command line, see Steps for development
        # Create namespace
        oc new-project providers
        
        make scale-up   # This creates a fake Ansible Provider Secret, and makes 3000 copies
                        # To changes the number of copies edit ./controller/provider-credential-controller_scale_test.go
                        #     const SecretCount = 3000
        
        make scale-test # This makes FOUR token changes to the Provider secret without waiting
        
        make scale-down # Removes a fake Ansible Provider Secret and deletes 3000 copies
      • This test executes a sequence of four token updates, not waiting for the 3000 copies to be reconciled. This validates that we do not lose track of the Provider secret updates, even when there is a processing delay in reconciling each copied secret.
  • Check the Security guide if you need to report a security issue.

References

  • The provider-credential-controller is part of the open-cluster-management community. For more information, visit: open-cluster-management.io.

provider-credential-controller's People

Contributors

jnpacker avatar leena-jawale avatar elgnay avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.