summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugins/Metadata.py
Commit message (Collapse)AuthorAgeFilesLines
* Pylint/PEP8 fixesSol Jerome2013-09-061-7/+7
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Merge branch 'maint'Sol Jerome2013-09-011-99/+149
|\ | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com> Conflicts: src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/NagiosGen.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/Server/SSLServer.py tools/README
| * Metadata: get_client_names_by_* fixesChris St. Pierre2013-08-291-5/+13
| | | | | | | | | | | | Fixed long lines. Improved efficiency by avoiding multiple loops over the same data.
| * Metadata: Fix client list calls use list_clients() which is DB-aware instead ↵Jason Kincl2013-08-271-5/+5
| | | | | | | | of just self.clients
| * Metadata: removed stray blank lineChris St. Pierre2013-08-151-1/+0
| |
| * Metadata: search groups breadth-first when building metadataChris St. Pierre2013-08-151-25/+37
| | | | | | | | | | This makes category negation consistent, and also makes it work like it did in Bcfg2 1.2
| * Metadata: metadata generation improvementsChris St. Pierre2013-08-141-70/+97
| | | | | | | | | | | | | | | | | | Primarily, this fixes a few potential bugs in initial metadata, which may result in inconsistent ordering of groups, which can be a problem when relying on category suppression. This also deduplicates some category suppression code, and moves some nested functions to top-level methods, which are surprisingly faster.
| * Metadata: log now client creation with profileChris St. Pierre2013-08-121-0/+4
| |
* | Metadata: Clean up FAM monitoring cruftChris St. Pierre2013-08-301-21/+13
| | | | | | | | | | | | | | Removed code that supported an unused watch_clients option that permitted locally disabling FAM monitoring for Metadata; and ensured that XIncludes from clients.xml/groups.xml were always monitored (fixed in 5b66845).
* | Revert "Metadata: group_in_category fixes"Chris St. Pierre2013-08-161-18/+5
| | | | | | | | | | | | | | | | This reverts commit 35498c8b849c15632d720656d5736c4c85f76b53. group_in_category() access data that's held on the ClientMetadata object, and getting that data via the MetadataQuery object would be more expensive.
* | Rewrote arbitrary data cache systemChris St. Pierre2013-08-161-11/+7
| | | | | | | | | | | | | | | | | | | | | | | | The caching facilities in Bcfg2.Server.Cache provided basically no features. This rewrites that to allow for much more powerful cache expiration, with a particular focus on interoperation between different components and plugins to let caches be expired as necessary. (E.g., the Probes plugin can expire the Metadata cache.) This does not affect any of the file data cached by Bcfg2, only the caches that are populated with arbitrary data (Metadata, Packages, Probes, etc.).
* | Metadata: group_in_category fixesChris St. Pierre2013-08-151-5/+18
| | | | | | | | | | | | | | Moved ClientMetadata.group_in_category to MetadataQuery.group_in_category, with a deprecation warning for the old place. Also changed the null answer (i.e., this client isn't in a group in that category) to None from ''.
* | testsuite: fixed unit testsChris St. Pierre2013-08-121-1/+1
| |
* | Merge branch 'maint'Chris St. Pierre2013-08-121-6/+7
|\| | | | | | | | | | | Conflicts: src/lib/Bcfg2/Server/Admin/Viz.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
| * Viz: include clients that should be included, not vice-versaChris St. Pierre2013-08-091-1/+1
| |
| * Viz: exclude duplicate bundles for a given hostChris St. Pierre2013-08-091-3/+4
| |
| * Viz: distinguish categories from hostsChris St. Pierre2013-08-091-1/+1
| |
| * Metadata: Fix bundle visualizationSol Jerome2013-08-091-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Metadata: catch dns lookup errors betterChris St. Pierre2013-08-081-1/+1
| |
* | testsuite: fixed more unit testsChris St. Pierre2013-08-121-3/+4
| |
* | testsuite: fixed most pylint complaintsChris St. Pierre2013-08-091-0/+8
| |
* | Plugins: Fixed/made consistent Django model loadChris St. Pierre2013-08-091-4/+1
| |
* | Merge branch 'options-rewrite'Chris St. Pierre2013-08-081-161/+39
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/lib/Bcfg2/Client/Frame.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Server/Admin/Init.py src/lib/Bcfg2/Server/Admin/Xcmd.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugin/base.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py src/lib/Bcfg2/Server/SSLServer.py src/lib/Bcfg2/Utils.py src/lib/Bcfg2/settings.py src/sbin/bcfg2-crypt src/sbin/bcfg2-info src/sbin/bcfg2-lint src/sbin/bcfg2-test src/sbin/bcfg2-yum-helper tools/bcfg2-profile-templates.py
| * | Options: migrated plugins to new options parserChris St. Pierre2013-06-271-164/+42
| | |
* | | Merge branch 'maint'Chris St. Pierre2013-08-081-13/+22
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/appendix/files/mysql.txt doc/getting_started/index.txt doc/server/plugins/structures/bundler/kernel.txt src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugin/interfaces.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/Server/Plugins/SSHbase.py
| * | Plugin: added new Caching interfaceChris St. Pierre2013-08-071-1/+6
| | | | | | | | | | | | | | | | | | | | | This gives a single unified interface for expiring caches, no matter the plugin. This will be particularly useful with the MultiprocessingCore, as certain calls must be dispatched to child processes to expire their caches.
| * | Get profile by building metadata instead of guessingMichael Fenn2013-08-061-6/+9
| | | | | | | | | | | | | | | | | | Rather than doing some ad-hoc lookups of internal data structures stpierre suggested that it'd be better to use the normal metadata build procedures. This implements that and adjusts the tests.
| * | Make updating the structures conditional on profile changingMichael Fenn2013-08-051-6/+6
| | | | | | | | | | | | | | | | | | Based on the expectations of the tests, I am reasonably confident that updating the in memory structures is logically part of changing the client's profile so I put it in the if block
| * | Found a stray write that should be part of the new client caseMichael Fenn2013-08-051-2/+2
| | |
| * | Make pylint happyMichael Fenn2013-08-051-1/+1
| | |
| * | Metadata: Don't update XML on gratuitous profile updateMichael Fenn2013-08-051-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Check to see if the profile that is being set by set_profile exactly matches the existing profile list. If it does, then avoid writing out a new clients.xml. This simple optimization reduces the amount of clients.xml rewriting that occurs if you have a bunch of clients running bcfg2 -p at the same time (for example, during a cluster rebuild).
* | | Merge branch 'maint'Sol Jerome2013-07-181-3/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com> Conflicts: src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Properties.py
| * | Metadata: fixed long lineChris St. Pierre2013-07-091-2/+2
| | |
| * | Core: Gracefully handle failure to add client without default groupChris St. Pierre2013-07-091-5/+4
| | |
* | | Merge branch 'maint'Sol Jerome2013-07-081-2/+3
|\| | | |/ |/| | | | | | | Conflicts: src/lib/Bcfg2/settings.py src/sbin/bcfg2-crypt
| * Metadata: fixed docstring typoChris St. Pierre2013-07-031-1/+1
| |
| * Metadata: Make pylint happySol Jerome2013-06-271-1/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Plugins/Metadata: fix resolution for ipv4-in-ipv6 addresses like ↵Alexander Sulfrian2013-06-271-1/+1
| | | | | | | | ::ffff:127.0.0.1
* | Merge branch 'maint'Chris St. Pierre2013-06-271-0/+2
|\| | | | | | | | | | | | | | | | | Conflicts: doc/server/plugins/generators/cfg.txt doc/server/plugins/generators/tcheetah.txt src/lib/Bcfg2/Server/Admin/Xcmd.py src/lib/Bcfg2/Server/Plugins/Cfg/__init__.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py
| * do not create data directories for plugins that don't need themChris St. Pierre2013-06-131-0/+2
| |
* | Merge branch 'maint'Chris St. Pierre2013-05-211-0/+6
|\|
| * added multiprocessing server coreChris St. Pierre2013-05-201-0/+6
| |
* | Merge branch 'maint'Chris St. Pierre2013-05-171-34/+50
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/appendix/guides/centos.txt doc/server/plugins/grouping/metadata.txt setup.py src/lib/Bcfg2/Client/Frame.py src/lib/Bcfg2/Client/Proxy.py src/lib/Bcfg2/Server/Lint/Genshi.py src/lib/Bcfg2/Server/Lint/Validate.py src/lib/Bcfg2/Server/Plugins/Bundler.py src/lib/Bcfg2/Server/Plugins/SSHbase.py src/sbin/bcfg2-lint
| * doc: added devel docs for bcfg2-lint pluginsChris St. Pierre2013-05-141-31/+45
| |
| * fixed pylint testChris St. Pierre2013-05-011-1/+2
| |
| * Metadata: don't require all profile groups to be public when using metadata dbChris St. Pierre2013-05-011-3/+4
| |
* | Merge branch 'maint'Chris St. Pierre2013-04-241-56/+89
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/lib/Bcfg2/Client/Client.py src/lib/Bcfg2/Client/Frame.py src/lib/Bcfg2/Client/Tools/YUM.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Server/Admin/Perf.py src/lib/Bcfg2/Server/Admin/Xcmd.py src/lib/Bcfg2/Server/Admin/__init__.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/FileMonitor/Fam.py src/lib/Bcfg2/Server/Lint/RequiredAttrs.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Base.py src/lib/Bcfg2/Server/Plugins/Bundler.py src/lib/Bcfg2/Server/Plugins/Cfg/CfgPrivateKeyCreator.py src/lib/Bcfg2/Server/Plugins/Cvs.py src/lib/Bcfg2/Server/Plugins/Darcs.py src/lib/Bcfg2/Server/Plugins/Decisions.py src/lib/Bcfg2/Server/Plugins/FileProbes.py src/lib/Bcfg2/Server/Plugins/Fossil.py src/lib/Bcfg2/Server/Plugins/Git.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/NagiosGen.py src/lib/Bcfg2/Server/Plugins/Packages/PackagesSources.py src/lib/Bcfg2/Server/Plugins/Packages/Source.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/Properties.py src/lib/Bcfg2/Server/Plugins/__init__.py src/lib/Bcfg2/Server/__init__.py src/sbin/bcfg2-build-reports src/sbin/bcfg2-crypt testsuite/Testsrc/Testlib/TestServer/TestPlugin/Testhelpers.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestMetadata.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestProperties.py
| * Metadata: create clients when version is declared (if necessary)Chris St. Pierre2013-03-271-20/+14
| |
| * testsuite: more text fixesChris St. Pierre2013-03-261-0/+1
| |
| * testsuite: fixed more unit test stuffChris St. Pierre2013-03-261-1/+1
| |