diff options
author | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2014-02-23 23:54:28 -0500 |
---|---|---|
committer | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2014-02-23 23:54:59 -0500 |
commit | 1f0515a25551eee4dce6af96210aef8f6fdc0e8c (patch) | |
tree | 49243d3cd3aba10556df4baef334a5bcc94bcfb9 /src/lib/Bcfg2/Server/Lint | |
parent | c6a1de59fbd49b3e1b24a7fb4e55f109e8a54e2e (diff) | |
download | bcfg2-1f0515a25551eee4dce6af96210aef8f6fdc0e8c.tar.gz bcfg2-1f0515a25551eee4dce6af96210aef8f6fdc0e8c.tar.bz2 bcfg2-1f0515a25551eee4dce6af96210aef8f6fdc0e8c.zip |
bcfg2-lint: Verify abstract Package tags
Diffstat (limited to 'src/lib/Bcfg2/Server/Lint')
-rw-r--r-- | src/lib/Bcfg2/Server/Lint/RequiredAttrs.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Server/Lint/RequiredAttrs.py b/src/lib/Bcfg2/Server/Lint/RequiredAttrs.py index 1d12ee461..ce8b237b9 100644 --- a/src/lib/Bcfg2/Server/Lint/RequiredAttrs.py +++ b/src/lib/Bcfg2/Server/Lint/RequiredAttrs.py @@ -214,6 +214,16 @@ class RequiredAttrs(Bcfg2.Server.Lint.ServerPlugin): xdata.xpath("//*[substring(name(), 1, 5) = 'Bound']"): self.check_entry(path, bundle.name) + # ensure that abstract Package tags have either name + # or group specified + for package in xdata.xpath("//Package"): + if ('name' not in package.attrib and + 'group' not in package.attrib): + self.LintError( + "required-attrs-missing", + "Package tags require either a 'name' or 'group' " + "attribute: \n%s" % self.RenderXML(package)) + def check_entry(self, entry, filename): """ Generic entry check. |