summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Reporting
Commit message (Collapse)AuthorAgeFilesLines
* Reporting: Fix missing sys importSol Jerome2017-01-101-0/+1
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Merge pull request #345 from AlexanderS/fix/django-1.10Alexander Sulfrian2017-01-102-35/+35
|\ | | | | Fixes for django 1.10
| * Reporting/Compat: Add patterns compat methodAlexander Sulfrian2016-08-181-1/+13
| | | | | | | | | | django 1.10 removed the patterns method, so we define it manually a bit easier than the old upstream variant but sufficient for our needs.
| * Reporting: Ensure we have an empty prefix in the url patternsAlexander Sulfrian2016-08-181-21/+22
| |
| * Reporting: Remove outdated commentsAlexander Sulfrian2016-08-181-13/+0
| |
* | DBSettings: Call django.setup() right after configuring the settingsAlexander Sulfrian2016-11-281-2/+0
| | | | | | | | | | | | If required the DBSettings config hook will call django.setup right after configuring django with the required settings. So we can drop the calls to django.setup from all other places.
* | Reporting/Storage: Reordering of the importsAlexander Sulfrian2016-11-211-10/+9
| |
* | Reporting/Storage: Removed unused importAlexander Sulfrian2016-11-211-1/+0
| |
* | Reporting/Storage: Load django models after option parsingAlexander Sulfrian2016-11-211-4/+15
| | | | | | | | | | | | django get setup during option parsing and we cannot acces "django.db.models" before. So we need to delay the import of the models until the option parsing is ready.
* | Reporting/Storage: Remove wildcard importAlexander Sulfrian2016-11-211-1/+4
| |
* | Reporting: Remove invalid fields from select_relatedDmitri Iouchtchenko2016-09-151-1/+1
| |
* | Reporting: Add bcfg2_compat templatetag libraryAlexander Sulfrian2016-08-3112-43/+25
|/ | | | | | The url tag from the future tag lib, that was required with older django versions, was removed from django1.9. So we add a compat tag library to use the correct available variant.
* Reporting/templates: Remove deprecated syntaxAlexander Sulfrian2015-11-171-1/+1
| | | | | | > Deprecated since version 1.8: > You can also pass a dotted Python path to a view function, but this > syntax is deprecated and will be removed in Django 1.10.
* Reporting/templates: Fix django1.5 compatAlexander Sulfrian2015-11-171-1/+1
| | | | This was missing in 84a83cab07853b83e91c40c440f65b911e3296a5.
* Version bump to 1.4.0pre2Sol Jerome2015-11-131-1/+1
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Merge pull request #309 from AlexanderS/fix/report-filtersChris St. Pierre2015-10-131-12/+31
|\ | | | | Reporting: Do not fail, if no interactions found
| * Reporting: Do not fail, if no interactions foundAlexander Sulfrian2015-09-181-12/+31
| | | | | | | | | | | | With the filter feature of bcfg2-reports it is possible that all interactions of a client gets filtered. Now we simply skip those clients without interactions and do not fail with an exception.
* | Reporting: Add django.setup()Alexander Sulfrian2015-09-291-0/+3
| | | | | | | | | | bcfg2-reports does not call sync_databases or migrate_databases before making the database queries. So we need to initialize django here, too.
* | Reporting: Replace get_template_from_string() for django 1.8Alexander Sulfrian2015-09-231-2/+9
| | | | | | | | | | Django 1.8 introduced different template engines and droped the get_template_from_string function as it does not support the new feature.
* | Reporting: Replace _meta.get_all_field_names() for django 1.8Alexander Sulfrian2015-09-231-1/+11
| | | | | | | | | | | | | | The _meta API was changed with django 1.8 and get_fields() now returns all model fields even fields defined in related models. But while creating the Entries we use this field list for construction and the list should only contain local fields.
* | Reporting: Do not use django.db.backend in newer django versionsAlexander Sulfrian2015-09-231-6/+11
| | | | | | | | | | | | The private API django.db.backend is deprecated in django 1.7 and removed in django 1.8, so we use another way to get the DatabaseOperations from the connection.
* | Replace close_connection() for newer django versionsAlexander Sulfrian2015-09-231-2/+6
| | | | | | | | | | | | | | django.db.close_connection() is deprecated in django1.7 (and removed in 1.8). The new django.db.close_old_connections() does not seem to work like the old one (see http://stackoverflow.com/a/32614137), so we replace it with an own implementation.
* | Add matching django migrations for southAlexander Sulfrian2015-09-237-272/+411
| |
* | make Bcfg2-web compatible with django 1.7Jonas Jochmaring2015-09-239-464/+1009
|/ | | | | | - reports.wsgi uses get_wsgi_application() now - old south-based migrations have been moved - manage.py has been updated
* Reporting/templates: Use configurable date formats.Alexander Sulfrian2015-07-236-6/+12
|
* Merge branch 'maint'Alexander Sulfrian2015-06-123-4/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: debian/changelog doc/conf.py misc/bcfg2-selinux.spec misc/bcfg2.spec osx/Makefile osx/macports/Portfile solaris-ips/MANIFEST.bcfg2-server.header solaris-ips/MANIFEST.bcfg2.header solaris-ips/Makefile solaris-ips/pkginfo.bcfg2 solaris-ips/pkginfo.bcfg2-server solaris/Makefile solaris/pkginfo.bcfg2 solaris/pkginfo.bcfg2-server src/lib/Bcfg2/Client/Tools/APT.py src/lib/Bcfg2/Client/Tools/FreeBSDInit.py src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Reporting/Collector.py src/lib/Bcfg2/Reporting/templates/base.html src/lib/Bcfg2/Server/CherrypyCore.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/FileMonitor/__init__.py src/lib/Bcfg2/Server/Lint/Validate.py src/lib/Bcfg2/Server/Lint/__init__.py src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugin/__init__.py src/lib/Bcfg2/Server/Plugins/GroupPatterns.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/Packages/Source.py src/lib/Bcfg2/Server/Plugins/Packages/Yum.py src/lib/Bcfg2/Server/Plugins/SSHbase.py src/lib/Bcfg2/Server/Plugins/SSLCA.py src/lib/Bcfg2/version.py src/sbin/bcfg2-info src/sbin/bcfg2-test testsuite/requirements.txt
| * Version bump to 1.3.6Sol Jerome2015-06-111-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Reporting: Fix plus/minusSol Jerome2015-06-111-2/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Reporting: Fix typoSol Jerome2015-04-171-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Reporting/models.py: Fix typoSol Jerome2015-03-171-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: Add --no-dry-run and --no-only-important flagsAlexander Sulfrian2015-05-121-68/+102
| | | | | | | | | | All bcfg2-reports subcommands, that work with specific interactions, can now ignore interactions created by --dry-run or --only-important run.
* | Reporting: Add dry_run and only_important flagsAlexander Sulfrian2015-05-123-1/+310
| | | | | | | | | | Save the status of --dry-run and --only-important in the statistics, so that the reports could be filtered to only respect "normal" runs.
* | Reporting/Storage: Fix handling of extra packages.Alexander Sulfrian2015-02-191-6/+5
| | | | | | | | | | | | | | The code before for extra packages only worked for rpms because it only evaluated the version information of the contained <Instance> tag and droped the package if no one was avilable. Now the handling of <Instance> is optional and the package is imported everytime.
* | Merge branch 'maint'Alexander Sulfrian2014-11-126-64/+79
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: debian/changelog doc/conf.py doc/releases/index.txt doc/server/database.txt doc/server/plugins/generators/cfg.txt doc/server/plugins/generators/sslca.txt man/bcfg2.conf.5 misc/bcfg2-selinux.spec misc/bcfg2.spec osx/Makefile osx/macports/Portfile schemas/packages.xsd solaris-ips/MANIFEST.bcfg2-server.header solaris-ips/MANIFEST.bcfg2.header solaris-ips/Makefile solaris-ips/pkginfo.bcfg2 solaris-ips/pkginfo.bcfg2-server solaris/Makefile solaris/pkginfo.bcfg2 solaris/pkginfo.bcfg2-server src/lib/Bcfg2/Client/Client.py src/lib/Bcfg2/Client/Proxy.py src/lib/Bcfg2/Client/Tools/APT.py src/lib/Bcfg2/Client/Tools/Action.py src/lib/Bcfg2/Client/Tools/SYSV.py src/lib/Bcfg2/Client/Tools/YUM.py src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Reporting/Collector.py src/lib/Bcfg2/Reporting/templates/base.html src/lib/Bcfg2/Server/Admin/__init__.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Plugins/Packages/Apt.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/settings.py src/lib/Bcfg2/version.py testsuite/Testsrc/Testlib/TestClient/TestTools/Test_init.py testsuite/Testsrc/test_code_checks.py
| * Merge branch 'cleanup_pidfile' of https://github.com/mattikus/bcfg2 into maintSol Jerome2014-10-231-16/+22
| |\
| | * Remove PIDFileError as it does not always exist in the package and is rarely ↵Matt Kemp2014-10-021-5/+0
| | | | | | | | | | | | used.
| | * Catch possible typeerror resulting from None being returned when reading the ↵Matt Kemp2014-10-021-1/+1
| | | | | | | | | | | | pid.
| | * Fixes to ensure pidfile can be opened or broken if stale.Matt Kemp2014-10-011-18/+11
| | |
| | * Attempt to break the pid lock during startup.Matt Kemp2014-10-011-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | This commit attempts to break the pidfilelock during startup in cases where the process may have exited without successfully cleaning up the lockfile. It also attempts to grab the lock before opening the context. Also applied to the Collector module, which may have been looking for the wrong exception since it does not rely on a timeout.
| * | Reporting: better exception handlingAlexander Sulfrian2014-10-201-33/+44
| | | | | | | | | | | | Try to keep the try-except-blocks as small as possible.
| * | Reporting: fix filter urlsAlexander Sulfrian2014-10-121-6/+6
| | | | | | | | | | | | | | | | | | The regex match for the filter urls were to strict. They disallowed some charaters, that are valid in group names and so the django reverse mechanism for building urls failed.
| * | Use older nested try syntax for finally for python 2.4 compatMichael Fenn2014-09-101-4/+5
| | |
| * | Version bump to 1.3.5v1.3.5Sol Jerome2014-09-051-1/+1
| | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | Reporting: Remove duplicate methodSol Jerome2014-08-141-3/+0
| | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | Reporting: Fix prune items import and displaySol Jerome2014-07-152-2/+2
| |/ | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting/Collector: fix semaphore initializationAlexander Sulfrian2014-11-111-1/+2
| |
* | testsuite: Added unit tests for new option parsingChris St. Pierre2014-11-101-1/+2
| |
* | Reporting/Collector: fix python2.4 compatibilityAlexander Sulfrian2014-10-271-9/+11
| |
* | Reporting/Collector: add max-children argumentAlexander Sulfrian2014-10-271-3/+19
| | | | | | | | | | | | Add option to limit the count of child threads to import the transactions. If the number is exceeded the next import will block until one thread is ready.
* | Reporting: do not duplicate isstale functionalityAlexander Sulfrian2014-08-012-15/+2
| | | | | | | | | | | | | | | | | | | | | | The interaction entries have a isstale() method, we do not need a template tag, that tries to figure out this on its own. The isstale() method works even better: It knows, if the interaction is the current interaction and compares the timestamp to the current time or (if it is not the current one) it compares the timestamp to the timestamp of the next interaction. So using the method of the model, you can browse the interaction history and see, if the host was stale some time in the past. Previously all interactions more than 24h ago were marked stale.