2
0
mirror of https://github.com/xcat2/confluent.git synced 2025-07-24 21:31:13 +00:00
Commit Graph

47 Commits

Author SHA1 Message Date
jbjohnso
1fc7a0716a Address a number of style and other issues 2014-04-18 17:13:50 -04:00
Jarrod Johnson
b9f4e14170 Fix list_* functions to correctly handle non-existent collections 2014-04-18 14:42:35 -04:00
Jarrod Johnson
e9422e3c4d Implement the ability to delete users 2014-04-11 10:07:35 -04:00
Jarrod Johnson
1b7a18c108 Implement a first attempt at '/users/' to manage authorization and authentication 2014-04-10 17:05:57 -04:00
Jarrod Johnson
0ab31694d5 Implement create and delete from CLI 2014-04-10 13:48:29 -04:00
Jarrod Johnson
92512da79f Apply IBM 2014 copyright and Apache 2 license to project 2014-04-07 16:43:39 -04:00
Jarrod Johnson
092983caf5 Fix mistake in configmanager around deleting a group 2014-04-07 16:28:45 -04:00
Jarrod Johnson
530cb64402 Fix the 'everything' group behavior 2014-04-04 09:28:09 -04:00
Jarrod Johnson
3ec6db4fe9 Configmanager fix up
Implement 'everything' group behavior
precheck group and node settings
do not create groups or nodes by default
Have httpapi preserve original query in case the plugin modifies it for accurate API
explorer output
2014-04-04 08:52:40 -04:00
Jarrod Johnson
17bf92ce16 Aggregate changes into sets and notify only after changeset full
This change causes cfg change notifications to more accurately reflect atomic
expectactions.  If multiple fields are changed on multiple nodes that a watcher may
have registered, they will now get that data in one chunk instead of many.
2014-04-01 14:48:31 -04:00
Jarrod Johnson
43c6ed5c93 Amend the notification structure to better bind attributes to nodes 2014-04-01 14:10:30 -04:00
Jarrod Johnson
fda2dd08d1 First pass at configuration change notification
Add ability for code to add watchers on nodes and their attributes.  This is likely to
be reworked internally to better aggregate requests, but the code interface
is potentially complete.
2014-04-01 11:01:26 -04:00
Jarrod Johnson
9d8ff78716 Fix persistence of group data on node deletion. 2014-03-28 16:42:36 -04:00
Jarrod Johnson
04faa9fdfd Correct typo of 'nodes' as 'node' 2014-03-03 20:16:14 -05:00
Jarrod Johnson
9617d1f4a4 Implement dbm style backing for the configuration persistence
The pickling would get horrendously slow as total node count increased.  This meant very long time to sync
to disk for just one change out of 65,000.  This strategy changes things to more selective and only
do things for the dirty keys rather than everything.  Large changes to small amounts of nodes will take
more time (because more calls to dump pickle), but small changes to a small subset of nodes will take much
less time.
2014-03-03 20:01:13 -05:00
Jarrod Johnson
79fc5faaf6 Fix problem where reordering groups did not affect inheritence
There was an optimization to skip examination of groups if it was determined
that the group membership had not changed.  However, this erroneously
masked the examination in the case of reordered groups.  Skip the
optimization to cover that case at the expense of at least some needless churn.
This only happens when something goes to change group membership in some way, so
this shouldn't be too expensive.
2014-03-03 15:35:08 -05:00
Jarrod Johnson
811ca61747 Fix problem where broken expressions were not gracefully handled
Now when expressions can not be completed, the reason is presented as 'broken'.
Additionally, when unsetting a value that would affect expressions,
perform appropriate changes.
2014-03-03 14:48:46 -05:00
Jarrod Johnson
387523f46b Implement 'set' in CLI
While testing set, it was noted that JSON loads does unicode.  Modified configmanager
to treat unicode like str type.
2014-02-22 20:10:13 -05:00
Jarrod Johnson
896159da4c Recognize expressions at node/nodegroup creation time 2014-02-22 18:12:21 -05:00
Jarrod Johnson
bffa5feef8 Add modulo support to expressions
Modulo support had been overlooked, it has been added back in.
2014-02-20 09:51:15 -05:00
Jarrod Johnson
a68deebec8 Improve the get_nodegroup_attribute to be more full featured
Also, move masking of the _expressionkeys attribute into the core
of the class rather than working around it.
2014-02-19 20:36:39 -05:00
Jarrod Johnson
f2c09795ff Fix expression based callout of other keys
The '_' prefixed attributes suggest more care should be taken.
2014-02-19 20:24:51 -05:00
Jarrod Johnson
e021a22ccb Fix setting of nodes on a group
In configmanager, 'nodes' had been special cased.  The invalid rejection scheme
failed to accomodate the special case, restore the functionality.
2014-02-19 19:44:23 -05:00
Jarrod Johnson
88a55b8942 Add configmanager function to clear attribute.
When a caller requests to clear an attribute, if attribute is there
and not inherited, it is deleted and then groups are searched for
backfill.
2014-02-19 19:36:25 -05:00
Jarrod Johnson
b823bc37d2 Fixup unknown attribute handling.
For one, prevent unknown attributes from getting into configmanager from now on.
Additionally, have the attributes plugin manage to convey bad attributes when
encountered.
2014-02-19 19:10:58 -05:00
Jarrod Johnson
2b6188e0b6 Add nodegroup management to API
Have nodegroup attributes exposed via API so that they are at
least nominally useful
2014-02-18 13:22:07 -05:00
Jarrod Johnson
cb8f37f1b0 Implement group creation
Nodegroups can now be created through the interface
2014-02-14 16:43:00 -05:00
Jarrod Johnson
e01c96e534 Implement nodegroup deletion
Nodegroup deletion is now enabled.
2014-02-13 16:57:03 -05:00
Jarrod Johnson
4ed91e06dc Correct typo in previous commit 2014-02-13 15:57:59 -05:00
Jarrod Johnson
722d0fe128 Fix API explorer to do list type attributes 2014-02-13 15:55:26 -05:00
Jarrod Johnson
41c4183045 Correct type protection code
For an attribute with restricted types, correctly check the type of
inbound data.
2014-02-13 15:16:21 -05:00
Jarrod Johnson
c77eb5be3b Have configmanager protect against unrecognized data.
When doing a set, check the keynames and value types as
appropriate.  raise ValueError in the configmanager case
since it could be code or human mistake.  attributes plugin
then catches this error and propogates it up as an InvalidArgumentException
if it is just trying to pass in data from user.
2014-02-13 12:58:03 -05:00
Jarrod Johnson
51f6a6995b Wire up delete buttons to actually work 2013-11-22 19:36:32 -05:00
Jarrod Johnson
7752bbbc27 Enumerate nodegroups 2013-11-13 15:12:57 -05:00
Jarrod Johnson
ecc7c21fc4 Support list style attributes (notably groups) in the api explorer 2013-11-13 10:36:43 -05:00
Jarrod Johnson
57fe5cfcce Switch 'groups' to list from set. Ordering matters from an inheritance perspective. 2013-11-11 13:00:51 -05:00
Jarrod Johnson
e7f2557c18 Add nodegroup inheritence handling 2013-11-10 11:03:23 -05:00
Jarrod Johnson
a95476563f Another note on where to do some inheritence things 2013-11-09 12:02:26 -05:00
Jarrod Johnson
90f7de25b2 Document places to flesh out for inheritence 2013-11-09 11:58:16 -05:00
Jarrod Johnson
24996d3159 -Document design thoughts on clustered mode 2013-11-09 11:36:30 -05:00
Jarrod Johnson
09bd9b3131 Better not found warnings 2013-11-03 14:57:58 -05:00
Jarrod Johnson
78bc2e8338 Start rendering parts of the links required for api exploring 2013-11-03 13:16:28 -05:00
Jarrod Johnson
265dc4215e Correct issues with the attempted merge of crypto and configmanager 2013-11-02 17:35:58 -04:00
Jarrod Johnson
4eaaa0c1a9 Create particular exceptions and start using them 2013-11-02 17:32:48 -04:00
Jarrod Johnson
cf7ffe9de2 Merge crypto into configmanager 2013-11-02 17:26:52 -04:00
Jarrod Johnson
fc7d426d06 Address some problems caused by refactor 2013-11-02 17:21:34 -04:00
Jarrod Johnson
c242f32e73 Refactor configuration code into a distinct location 2013-11-02 16:58:38 -04:00