| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
bcfg2-reports does not call sync_databases or migrate_databases before
making the database queries. So we need to initialize django here, too.
|
|
|
|
|
| |
Django 1.8 introduced different template engines and droped the
get_template_from_string function as it does not support the new feature.
|
|
|
|
| |
The old name was deprecated with django1.6 and removed with django1.8.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Django changed the default value for BooleanFields some time ago, so we
add an explicit default value to remove the warnings.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
django.setup() is already called from the option parsing before.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- reports.wsgi uses get_wsgi_application() now
- old south-based migrations have been moved
- manage.py has been updated
|
|
|
|
|
| |
The logging.LogRecord instance could contain args to replace some
placeholders in the format string in msg.
|
| |
|
| |
|
|\ |
|
| | |
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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}'/>
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | | |
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.
|
|\ \ \
| | | |
| | | | |
Options: Set default values from config, right after adding a new option
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
python-daemon closes all open files, so we need to specify the filehandles
of the log files to keep logging working.
|
|\ \ \ |
|
| | | | |
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | | |
Other plugins that also import user generated python source code, may want to use
safe_module_name from TemplateHelper.
|
|\ \ \ |
|
| | | | |
|
| | | | |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | | |
This is mostly from 257eb0c17 and 16d3e04cb to allow for setting arbitrary
database options since some settings require nested dictionaries, etc.
This got lost during merge from maint into master because of the completely
different Options parsing.
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
is_string from POSIX/File could be used in other situations, too.
So we move it to Utils, use it from Lint/MergeFiles and replace a
custom is_binary function.
|
| |/
| |
| |
| |
| | |
Ignore files with binary content, because SequenceMatcher seems to have problems
and sometimes detect files with different content as identically.
|
|/
|
|
|
|
| |
This is used for the Rules and Defaults plugins. Without this patch all text
content that was there before (for example file content bound by Cfg) is lost,
for all entries specified in Defaults.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
| |
| |
| |
| | |
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Log a message to debug if the package is missing from the host's primary
architecture package list (as per Chris's request).
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Sometimes repositories may not contain packages for a specific
architecture group. This handles that case gracefully instead of causing
a traceback and failing to bind all Package entries.
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|