1. 15 Jan, 2020 1 commit
  2. 12 Jan, 2020 1 commit
  3. 06 Jan, 2020 1 commit
  4. 01 Nov, 2019 1 commit
  5. 07 May, 2019 1 commit
    • Michael Fraenkel's avatar
      Cache the endpoints on the controller loop · fab942f4
      Michael Fraenkel authored
      The controller will retrieve all the endpoints at the beginning of its
      loop. When changes need to be applied, the provider may need to query
      the endpoints again. Allow the provider to skip the queries if its data was
      cached.
      fab942f4
  6. 01 Jun, 2018 1 commit
  7. 21 Feb, 2018 1 commit
    • Till Klocke's avatar
      Implementation of multiple targets based on PR #404 and #396 (#418) · 5d548496
      Till Klocke authored
      * Endpoint.Target is now Endpoint.Targets. This is its own type representing mutliple targets for a single DNS name while adding some convenience for sorting and comparing
      
      * Made everything compile and tests run through with the new Endpoint.Targets
      
      * The ingress source can now properly handle multiple target ips per host
      
      * Added custom conflict resolver, to better understand how conflict resolution has to work for me
      
      * My custom conflict resolver behaves a bit different than the PerResource resolver, therefore I needed to modify the expected test result
      
      Removed unnecessary FIXME
      
      * The ingress source now creates CNAME endpoints with multiple targets to let the DNS provider decide how to handle multiple CNAME targets. This could be interesting for weighted targets etc.
      
      * Adopted the expected results to the new way we create endpoints for CNAMEs
      
      * Removed Add method from Targets since manipulating the slice through here is unnecessary complicated and doesn't deliver enough convenience
      
      * Reverted ConflictResolver to the original one. There is some discussing to do what the best way is to handle conflicts
      
      * Added missing documenting comment to IsLess of Targets
      
      * Added documenting comments to Targets,Targets.Same and NewTargets to clarify their intention and usage
      
      * Service source now also generates endpoints with multiple targets
      
      * Service and Ingress source now sort all Targets for every Endpoint to make order of Targets predictable
      
      * Endpoints generated by the Google Cloud DNS provider now also have sorted Targets to make order of Targets predictable
      
      * Modified provider dyn to be able to compile with multi target changes
      
      * Fixed small nitpicks, so my code is acceptable
      
      * Fixed merge method after updating to new Targets. Replacing '!=' with .Same of course needs a boolean negation
      
      * Tests for dyn provider now also use the new Targets instead of Target
      
      * Simplified extractServiceIps as implied by linki to make it more readable
      
      * ref: change service ClusterIP retrieval again
      
      * Added entry to CHANGELOG.md describing the new features contained in this PR
      5d548496
  8. 31 May, 2017 1 commit
    • Martin Linkhorst's avatar
      experiment: use testify in test code (#186) · 406afacb
      Martin Linkhorst authored
      * ref(source): use testify with mocks in test code
      
      * fix: re-introduce NewMockSource for convenience
      
      * fix: avoid circular dependency
      
      * ref: increase usage of testify
      
      * chore: vendor testify as a dependency
      
      * fix(*): cleanup testify expectations
      406afacb
  9. 22 May, 2017 1 commit
  10. 12 Apr, 2017 1 commit
    • Martin Linkhorst's avatar
      allow plans to be parameterized via policies (#127) · 644206c9
      Martin Linkhorst authored
      * feat(plan): allow plans to be parameterized via policies
      
      * fix(controller): set a policy in the controller tests
      
      * chore: allow go tip to fail
      
      * chore: update changelog to include policies
      
      * fix(plan): store a pointer to changes
      
      * fix(controller): don't get address of a pointer
      644206c9
  11. 07 Apr, 2017 1 commit
    • Yerken's avatar
      define registry interface (#120) · 9a44453d
      Yerken authored
      * define registry interface
      
      * init in-memory registry
      
      * remove ununsed variable, added comments
      
      * add inmemory registry tests
      
      * introduce DNSRecord struct
      
      * use noop registry
      
      * remove zone from registry fields
      
      * replace provider with registry in controller
      
      * move noop registry interface check to test
      
      * remove ownerid from noop registry
      
      * fix: remove dangling empty line
      
      * return provider records directly with noop
      
      * adjust according to pr review
      
      * fix noop tests
      9a44453d
  12. 04 Apr, 2017 1 commit
  13. 17 Mar, 2017 1 commit
  14. 13 Mar, 2017 1 commit
  15. 02 Mar, 2017 1 commit
  16. 01 Mar, 2017 1 commit
    • Martin Linkhorst's avatar
      implementation of basic control loop (#40) · 99371a1e
      Martin Linkhorst authored
      * feat(google): add ability to apply changes generated from a plan
      
      * feat(controller): first implementation of controller
      
      * feat: allow to configure in-cluster and kubeconfig
      
      * fix(controller): call RunOnce at the right time and in a loop
      
      * feat(google): add dryRun attribute to Google DNS provider
      
      * fix: use hosted zone id instead of DNS name
      
      * fix(google): stupidly filter by A records for now
      
      * feat: allow specifying the google project and zone
      
      * feat: provide a dry-run flag which defaults to false
      
      * chore: vendor new dependencies
      
      * fix(config): fix failing tests for config object
      
      * ref(controller): return plain value of ApplyChanges
      
      * ref: simplify how to get a valid kubernetes client
      99371a1e