diff options
author | Lars Wirzenius <liw@liw.fi> | 2017-12-15 17:57:04 +0200 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2017-12-15 17:57:04 +0200 |
commit | 4d43122dbf0deb7a143008a1d9ec447392bc17ac (patch) | |
tree | d1f55fd77f56d00d77991b7d94b1866bbab8d292 | |
parent | 645678c71181369dd3edd86f5d90218f4cd4e25a (diff) | |
download | ick2-4d43122dbf0deb7a143008a1d9ec447392bc17ac.tar.gz |
Add: ick2.PipelineInstance
-rw-r--r-- | ick2/state.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ick2/state.py b/ick2/state.py index 811425e..806b2a7 100644 --- a/ick2/state.py +++ b/ick2/state.py @@ -118,6 +118,9 @@ class ResourceStore: # pragma: no cover self._name_field: name, } + def add(self, name, resource): + self._state.add_resource(self._category, name, resource) + def update(self, resource): name = resource[self._name_field] try: @@ -156,3 +159,18 @@ class PipelineInstances(ResourceStore): # pragma: no cover def __init__(self, state): super().__init__(state, 'pipeline_instances', 'name') + + def _name(self, project_name, pipeline_name): + return '{} {}'.format(project_name, pipeline_name) + + def get_instance(self, project_name, pipeline_name): + name = self._name(project_name, pipeline_name) + return self.get(name) + + def add_instance(self, project_name, pipeline_name, instance): + name = self._name(project_name, pipeline_name) + self.add(name, instance) + + def update_instance(self, project_name, pipeline_name, instance): + name = self._name(project_name, pipeline_name) + self.add(name, instance) |