briangallew / bacula_configuration Goto Github PK
View Code? Open in Web Editor NEWTools for managing the configuration of bacula
License: BSD 3-Clause "New" or "Revised" License
Tools for managing the configuration of bacula
License: BSD 3-Clause "New" or "Revised" License
Debian testing
bacula 7.0.5
pyparsing 2.0.3
trying to parse bin/import_configuration /etc/bacula/bacula-dir.conf
Director { # define myself
Name = snfrtr-dir
DIRport = 9101 # where we listen for UA connections
QueryFile = "/etc/bacula/scripts/query.sql"
WorkingDirectory = "/var/lib/bacula"
PidDirectory = "/var/run/bacula"
Maximum Concurrent Jobs = 20
Password = "XXXyyyZZZxxxYYYZZZ" # Console password
Messages = Daemon
DirAddress = 0.0.0.0
}
Match "name" at loc 0(1,1)
Matched "name" -> ['name']
DEBUG:bacula_tools.bacula_config:do_sql: SELECT * FROM `directors` where `name` = %s:snfrtr-dir
Traceback (most recent call last):
File "/opt/bin/baculacfg/bacula_tools/parser_support.py", line 124, in parse_one_stanza_type
body, self.director_config, self.parsed[0])
File "/opt/bin/baculacfg/bacula_tools/parser_support.py", line 492, in director_parse_string
result = gr_res.parseString(string, parseAll=True)
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 1115, in parseString
loc, tokens = self._parse( instring, 0 )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 989, in _parseNoCache
loc,tokens = self.parseImpl( instring, preloc, doActions )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 2766, in parseImpl
loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 989, in _parseNoCache
loc,tokens = self.parseImpl( instring, preloc, doActions )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 2483, in parseImpl
ret = e._parse( instring, loc, doActions )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 1015, in _parseNoCache
tokens = fn( instring, tokensStart, retTokens )
File "/usr/lib/python2.7/dist-packages/pyparsing.py", line 779, in wrapper
ret = func(*args[limit[0]:])
TypeError: <lambda>() takes exactly 1 argument (0 given)
I've stripped down bin/import_configuration
to
for argument in sys.argv[1:]:
print(argument)
stuff = parser_support.parser(open(argument).read())
print(stuff)
to simplify debugging and printed traceback in the parsing helper file.
If I comment out director name parsing, i get next errors with address parsing etc
Tried latest pyparsing 2.0.6 and 1.4.7
Hi,
is it possible that the confluence cli tool bit is missing?
Can't see it in /bin and a grep -R
shows nothing except the Readme.
Sorry if I'm wrong, I'm preparing to switch my config to your framework, but will first need to add pgsql support, so i was poking around.
Confluence integration is something i always wanted, so I wanted to start learning about that.
A Bacula Fileset should support arbitrary numbers of Import{} and Export{} groups, retaining ordering, rather than the current situation which supports only one Import and Export group each, with the Import group first.
Kind of an egregious oversight. This should be top of the list once I finish up cloning support.
Particularly in Messages[mailcommand], embedded quotes don't end up properly escaped on output.
First of all, there's a bug in the code (may have been fixed in the latest push) that basically ended up overwriting a director's password with the client's password.
Secondly, there was the assumption that there would be one, and only one, password associated with a client (and storage device, for that matter), but this flies in the face of common practice, where you have a primary director, and then a "monitor" that's really just a desktop client pretending to be a director. There was no way to have that really work. So, while it may look like I'm doing nothing, I'm really working on a major refactoring to enable multiple passwords.
According to the docs, certain values have different defaults depending upon the type of device chosen. This needs to be addressed.
Apparently I've done something funky where enabling debugging (export DEBUG=1) will cause the parser to call the rv() function with no parameters
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.