Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(*): build the control loop & state machine for fulfilling claims #72

Merged
merged 58 commits into from
Aug 17, 2016

Conversation

arschles
Copy link
Member

@arschles arschles commented Aug 15, 2016

Fixes #18
Fixes #7
Fixes #74
Closes #22

Ref #68

TODO:

  • rebase with deis/master
  • use the (k8s.io/kubernetes/pkg/client/unversioned).ConfigMapsInterface in code, instead of the hand-rolled ConfigMapCreatorDeleter, etc... interfaces in ./k8s
  • implement the state machine in ./k8s/claim/loop.go's processEvent func
  • finish implementation of ServicePlanClaimFromMap
  • list all claims on loop startup
  • test in real life
  • unit tests (some are done, others will be left to [Meta] Write unit tests #68)

for watching config maps that have claims in them. also document state transitions
Aaron Schlesinger added 17 commits August 16, 2016 10:09
an interface designed to do provision/deprovision/bind/unbind, so you
don’t have to pass all 4 separate interfaces
given the new lifecycler interface
and ConfigMapsNamespacer throughout the codebase
…and namespace to the claim

so that steward knows where to write the credentials config map
in preparation for implementing the config loop
in favor of a ./k8s/claim package global logger
… IDs

also:

- make it store the instance and bind IDs that were used
- add keys for various statuses and implement much of the creation
logic in the control loop
- modify the documentation to include the instance/bind IDs (marked as
internal use only)
this makes the high level process logic more readable
this reduces cyclomatic complexity and makes the logic around the
processEvent call clearer
@arschles arschles mentioned this pull request Aug 16, 2016
Aaron Schlesinger added 3 commits August 16, 2016 15:35
to account for the fact that a steward may crash, or be launched during
a create or delete operation
and fixing a bug that the tests found
@arschles arschles mentioned this pull request Aug 16, 2016
5 tasks
@arschles arschles merged commit fcd6f41 into deis:master Aug 17, 2016
@arschles arschles deleted the cm-control-loop branch August 17, 2016 21:02
@arschles arschles mentioned this pull request Aug 17, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant