summaryrefslogtreecommitdiffstats
path: root/doc/composable-metadata
diff options
context:
space:
mode:
authorNarayan Desai <desai@mcs.anl.gov>2008-12-24 04:31:55 +0000
committerNarayan Desai <desai@mcs.anl.gov>2008-12-24 04:31:55 +0000
commitb41f50e249ae6acff75a1c7838229a922fc58b21 (patch)
treedecf4055de4389bf25ccd7c61a85d459fee0425b /doc/composable-metadata
parente3fb140c8d44d751766535eedefcc4ada6544bd1 (diff)
downloadbcfg2-b41f50e249ae6acff75a1c7838229a922fc58b21.tar.gz
bcfg2-b41f50e249ae6acff75a1c7838229a922fc58b21.tar.bz2
bcfg2-b41f50e249ae6acff75a1c7838229a922fc58b21.zip
Implement metadata connector functionality
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5000 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'doc/composable-metadata')
-rw-r--r--doc/composable-metadata39
1 files changed, 26 insertions, 13 deletions
diff --git a/doc/composable-metadata b/doc/composable-metadata
index 29673b315..10d55f7c1 100644
--- a/doc/composable-metadata
+++ b/doc/composable-metadata
@@ -27,20 +27,33 @@ Use Cases
API
* Bcfg2.Server.Core.Core
-** get_metadata()
+** build_metadata(client_name)
* Bcfg2.Server.Plugin.MetadataPlugin
-** add_client()
-** remove_client()
-** set_profile()
-** resolve_client()
-** get_initial_metadata()
-** merge_additional_metadata()
+** get_initial_metadata(client_name)
+** merge_additional_metadata(metadata,
+ source,
+ group,
+ data_dict)
* Bcfg2.Server.Plugin.MetadataConnectorPlugin
-** get_additional_metadata()
+** get_additional_metadata(client_metadata)
Metadata Resolution Control Flow
-1. B.S.P.MP.resolve_client() -> canonical client name
-2. B.S.P.MP.get_initial_metadata() -> partial ClientMetadata inst
-3. [B.S.P.MCP.get_additional_metadata()] ->
- [([group list], {data dictionary})]
-4. [B.S.P.MP.merge_additional_metadata()]
+* B.S.P.MP.resolve_client() -> canonical client name
+* B.S.C.C.build_metadata()
+** B.S.P.MP.get_initial_metadata() -> partial ClientMetadata inst
+** [B.S.P.MCP.get_additional_metadata()] ->
+ [([group list], {data dictionary})]
+** [B.S.P.MP.merge_additional_metadata()]
+
+Implementation Plan (done)
+* Define new plugin classes
+* Split Probe code out to discrete plugin
+* Implement connector support in Core
+* switch callers to Core.build_metadata
+* Implement group inheritance/category safety for Connector groups
+
+Next Steps
+* Figure out new version of properties
+* ICE integration?
+* zultron's host properties
+* other external data sources