diff options
author | Tristan Maat <tristan.maat@codethink.co.uk> | 2017-09-07 15:40:57 +0100 |
---|---|---|
committer | Tristan Maat <tristan.maat@codethink.co.uk> | 2017-09-08 10:46:23 +0100 |
commit | be94c716210b7e9530be67dd20a8c625d7b731ae (patch) | |
tree | 782683c239ecf8a2f729f27e4a9e6254c6a43fe6 | |
parent | d5499e2c505342ceea6266013ee1c8329facf786 (diff) | |
download | buildstream-be94c716210b7e9530be67dd20a8c625d7b731ae.tar.gz |
Add source plugin node validations
-rw-r--r-- | buildstream/plugins/sources/bzr.py | 2 | ||||
-rw-r--r-- | buildstream/plugins/sources/git.py | 2 | ||||
-rw-r--r-- | buildstream/plugins/sources/local.py | 2 | ||||
-rw-r--r-- | buildstream/plugins/sources/ostree.py | 2 | ||||
-rw-r--r-- | buildstream/plugins/sources/tar.py | 5 | ||||
-rw-r--r-- | tests/project/data/plugins/sources/custom.py | 1 |
6 files changed, 14 insertions, 0 deletions
diff --git a/buildstream/plugins/sources/bzr.py b/buildstream/plugins/sources/bzr.py index 42d34828f..e74d87f61 100644 --- a/buildstream/plugins/sources/bzr.py +++ b/buildstream/plugins/sources/bzr.py @@ -58,6 +58,8 @@ from buildstream import utils class BzrSource(Source): def configure(self, node): + self.node_validate(node, ['kind', 'url', 'track', 'ref']) + self.original_url = self.node_get_member(node, str, 'url') self.tracking = self.node_get_member(node, str, 'track') self.ref = self.node_get_member(node, str, 'ref', '') or None diff --git a/buildstream/plugins/sources/git.py b/buildstream/plugins/sources/git.py index e1cac9716..dfc8e615e 100644 --- a/buildstream/plugins/sources/git.py +++ b/buildstream/plugins/sources/git.py @@ -214,6 +214,8 @@ class GitSource(Source): def configure(self, node): ref = self.node_get_member(node, str, 'ref', '') or None + self.node_validate(node, ['kind', 'url', 'track', 'ref', 'submodules']) + self.original_url = self.node_get_member(node, str, 'url') self.mirror = GitMirror(self, '', self.original_url, ref) self.tracking = self.node_get_member(node, str, 'track', '') or None diff --git a/buildstream/plugins/sources/local.py b/buildstream/plugins/sources/local.py index a2f09920e..2611a6fb2 100644 --- a/buildstream/plugins/sources/local.py +++ b/buildstream/plugins/sources/local.py @@ -45,6 +45,8 @@ class LocalSource(Source): def configure(self, node): project = self.get_project() + self.node_validate(node, ['path', 'kind', 'directory']) + self.path = self.node_get_member(node, str, 'path') self.fullpath = os.path.join(project.directory, self.path) diff --git a/buildstream/plugins/sources/ostree.py b/buildstream/plugins/sources/ostree.py index f08afc58f..f1cec28e3 100644 --- a/buildstream/plugins/sources/ostree.py +++ b/buildstream/plugins/sources/ostree.py @@ -63,6 +63,8 @@ class OSTreeSource(Source): def configure(self, node): project = self.get_project() + self.node_validate(node, ['kind', 'url', 'ref', 'track', 'gpg-key']) + self.original_url = self.node_get_member(node, str, 'url') self.url = project.translate_url(self.original_url) self.ref = self.node_get_member(node, str, 'ref', '') or None diff --git a/buildstream/plugins/sources/tar.py b/buildstream/plugins/sources/tar.py index f174c792d..f0facdcce 100644 --- a/buildstream/plugins/sources/tar.py +++ b/buildstream/plugins/sources/tar.py @@ -62,6 +62,11 @@ class TarSource(Source): def configure(self, node): project = self.get_project() + self.node_validate(node, [ + 'kind', 'url', 'ref', 'base-dir', + 'track', 'directory', 'sha256sum' + ]) + self.original_url = self.node_get_member(node, str, 'url') self.ref = self.node_get_member(node, str, 'ref', '') or None self.base_dir = self.node_get_member(node, str, 'base-dir', '*') or None diff --git a/tests/project/data/plugins/sources/custom.py b/tests/project/data/plugins/sources/custom.py index c3cddb355..411b0b912 100644 --- a/tests/project/data/plugins/sources/custom.py +++ b/tests/project/data/plugins/sources/custom.py @@ -5,6 +5,7 @@ class CustomSource(Source): def configure(self, node): print("Source Data: %s" % node) + self.node_validate(node, ['configuration']) self.configuration = self.node_get_member(node, str, "configuration") def preflight(self): |