diff options
Diffstat (limited to 'gitlab/v4/cli.py')
-rw-r--r-- | gitlab/v4/cli.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gitlab/v4/cli.py b/gitlab/v4/cli.py index bceba33..0e50de1 100644 --- a/gitlab/v4/cli.py +++ b/gitlab/v4/cli.py @@ -45,6 +45,14 @@ class GitlabCLI(object): self.mgr_cls._path = self.mgr_cls._path % self.args self.mgr = self.mgr_cls(gl) + types = getattr(self.mgr_cls, '_types', {}) + if types: + for attr_name, type_cls in types.items(): + if attr_name in self.args.keys(): + obj = type_cls() + obj.set_from_cli(self.args[attr_name]) + self.args[attr_name] = obj.get() + def __call__(self): method = 'do_%s' % self.action if hasattr(self, method): |