summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* tools/upgrade: Fix checking for related fieldsAlexander Sulfrian2015-09-291-7/+9
| | | | | If we check for the existance of a related object, newer django versions (>= 1.5) raise a ObjectDoesNotExist exception and we have to handle it.
* 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.
* DBSettings: XViewMiddleware was moved into another packageAlexander Sulfrian2015-09-231-2/+8
| | | | The old name was deprecated with django1.6 and removed with django1.8.
* 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.
* Reports: Add explicit default valueAlexander Sulfrian2015-09-231-1/+1
| | | | | Django changed the default value for BooleanFields some time ago, so we add an explicit default value to remove the warnings.
* Reports: Fix InternalDatabaseVersionAlexander Sulfrian2015-09-232-14/+23
| | | | | | You could not import a class, that is defined in a function. We need to return the class, but we do not want to define it multiple times. So we have to save the class in a global variable.
* DBSettings: allow_syncdb is replaced with allow_migrateAlexander Sulfrian2015-09-231-1/+8
|
* Reporting: Do not use django.db.backend in newer django versionsAlexander Sulfrian2015-09-232-12/+22
| | | | | | 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.
* tools/upgrade: Support multiple databasesAlexander Sulfrian2015-09-231-3/+5
| | | | | Do not use the global django connection object but the matching instance from the django connections list.
* tools/upgrade: Parse the Options before using djangoAlexander Sulfrian2015-09-231-2/+3
| | | | | | We need to go through the Options parsing before we could use django and import the models. The Options parsing will setup django and prepare the required settings.
* Replace close_connection() for newer django versionsAlexander Sulfrian2015-09-232-4/+13
| | | | | | | 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.
* Server: Use close_db_connection decorator everywhereAlexander Sulfrian2015-09-231-4/+1
|
* Server/Admin: Remove load_models() callAlexander Sulfrian2015-09-231-1/+0
| | | | | | The models should be loaded during the options parsing and so this call issues a warning message from django, that the models are already registered.
* Server/Admin: Remove call of django.setupAlexander Sulfrian2015-09-231-3/+0
| | | | django.setup() is already called from the option parsing before.
* DBSettings: syncdb is replaced by migrateAlexander Sulfrian2015-09-231-2/+4
|
* DBSettings: Automatically upgrade migrations from south to djangoAlexander Sulfrian2015-09-231-0/+43
| | | | | | | | | | | On the first use with django-1.7 we manually get the south migration status and fake apply the django migration to that point. With that users can switch to django migrations at any point of time. The code simply takes the name of the last south migration and forwards the django migrations to that point. Therefor it is required to keep the names of the migrations in sync. It is required to keep the migration names of the two systems in sync.
* Add matching django migrations for southAlexander Sulfrian2015-09-237-272/+411
|
* Reporting: Clear error message if django is missingAlexander Sulfrian2015-09-231-8/+7
|
* fix check for reporting in src/lib/Bcfg2/Server/Plugins/Reporting.pyJonas Jochmaring2015-09-231-7/+11
|
* added django.setup() calls to src/lib/Bcfg2/DBSettings.pyJonas Jochmaring2015-09-232-2/+6
|
* update testsuite for django 1.7Jonas Jochmaring2015-09-231-0/+4
|
* some more django 1.7 compatibility fixesJonas Jochmaring2015-09-233-14/+19
|
* make Bcfg2-web compatible with django 1.7Jonas Jochmaring2015-09-2313-492/+1061
| | | | | | - reports.wsgi uses get_wsgi_application() now - old south-based migrations have been moved - manage.py has been updated
* Merge pull request #310 from AlexanderS/fix/loggingChris St. Pierre2015-09-211-0/+2
|\ | | | | Logging: Fix message building
| * Logging: Fix message buildingAlexander Sulfrian2015-09-211-0/+2
|/ | | | | The logging.LogRecord instance could contain args to replace some placeholders in the format string in msg.
* Merge pull request #306 from gordonmessmer/masterChris St. Pierre2015-09-111-1/+9
|\ | | | | Keep trailing newlines in Jinja2 templates.
| * Compatibility with Jinja < 2.7.Gordon Messmer2015-09-091-3/+9
| |
| * Keep trailing newlines in Jinja2 templates.Gordon Messmer2015-09-091-1/+3
|/
* Merge branch 'no-django' of https://github.com/AlexanderS/bcfg2Sol Jerome2015-09-011-2/+4
|\
| * DBSettings: Don't use django, if it's not availableAlexander Sulfrian2015-07-201-2/+4
| |
* | Merge branch 'rules-replace_name' of https://github.com/AlexanderS/bcfg2Sol Jerome2015-09-019-11/+116
|\ \
| * | testsuite: Fix debug messages to handle xml with a '%' insideAlexander Sulfrian2015-08-261-9/+10
| | |
| * | Rules: New options replace_name to replace %{name} in attributesAlexander Sulfrian2015-08-268-2/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you use the regex feature of Rules/Defaults you may need the real name of the matched entry in an attribute (for example home of POSIXUser). You can now enable replace_name for rules or defaults and %{name} will be replaces in the attribues of the Element before adding them to the target entry. This allows you to write something like that in Defaults to assing a default home directory somewhere else to all users with unset home: <POSIXUser name='.*' home='/somewhere/%{name}'/>
* | | Merge pull request #304 from s19n/masterChris St. Pierre2015-09-011-3/+1
|\ \ \ | | | | | | | | doc: update Genshi 'name' attribute description
| * | | doc: update Genshi 'name' attribute descriptions19n2015-08-071-3/+1
|/ / /
* | | Merge branch 'no-jinja2' of https://github.com/AlexanderS/bcfg2Sol Jerome2015-07-281-14/+15
|\ \ \
| * | | Plugins/Cfg: Don't depend on jinja2Alexander Sulfrian2015-07-201-14/+15
| | |/ | |/| | | | | | | | | | If jinja2 is not available, we cannot use some classes. So the access to these classes have to be dependent on the available of jinja2.
* | | Merge pull request #292 from AlexanderS/fix-options-defaultChris St. Pierre2015-07-283-2/+14
|\ \ \ | | | | | | | | Options: Set default values from config, right after adding a new option
| * | | Options: Add test to use config value for options from loaded componentsAlexander Sulfrian2015-07-222-2/+11
| | | |
| * | | Options: Set default values from config, right after adding a new optionAlexander Sulfrian2015-07-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If adding an option during the "Main Parser Loop" (for example because of loading a component for bcfg-lint) a value for the option from the config file is simply ignored. After adding the option, the parser first tries to find the value in the command line, but cannot find it and set the default value from the source code as option value. After that the value from the config file is set as new default, but because the option already is in the Namespace, it does not use the new "default" value from the config file. This patch simply sets the default value from the config file for the new options, right after adding it to the parser and so the correct value is used afterwards, if the parser cannot find the flag on the command line.
* | | | Merge pull request #302 from AlexanderS/fix/logging-with-daemonChris St. Pierre2015-07-281-1/+20
|\ \ \ \ | | | | | | | | | | BuiltinCore: Fix logging with daemonization
| * | | | BuiltinCore: Fix logging with daemonizationAlexander Sulfrian2015-07-281-1/+20
|/ / / / | | | | | | | | | | | | | | | | python-daemon closes all open files, so we need to specify the filehandles of the log files to keep logging working.
* | | | Merge branch 'fix/systemd-ignore' of https://github.com/AlexanderS/bcfg2Sol Jerome2015-07-281-1/+1
|\ \ \ \
| * | | | Client/Tools/Systemd: Do not stop services if status is set to ignoreAlexander Sulfrian2015-07-271-1/+1
| | | | |
* | | | | Ldap: Run full code style checks agains the pluginAlexander Sulfrian2015-07-241-1/+0
| | | | |
* | | | | Ldap: Complete renew of the Ldap pluginAlexander Sulfrian2015-07-245-255/+267
| | | | |
* | | | | Utils: Generalize safe_module_nameAlexander Sulfrian2015-07-244-23/+33
|/ / / / | | | | | | | | | | | | | | | | Other plugins that also import user generated python source code, may want to use safe_module_name from TemplateHelper.
* | | | Merge branch 'fix-date-format' of https://github.com/AlexanderS/bcfg2Sol Jerome2015-07-2313-40/+54
|\ \ \ \
| * | | | testsuite/common: Add the new option.Alexander Sulfrian2015-07-231-0/+1
| | | | |