Coverage for ocp_resources/pipelineruns.py: 0%
19 statements
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-30 10:48 +0200
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-30 10:48 +0200
1# API reference: https://tekton.dev/docs/pipelines/pipelineruns/
3from ocp_resources.resource import MissingRequiredArgumentError, NamespacedResource
6class PipelineRun(NamespacedResource):
7 api_group = NamespacedResource.ApiGroup.TEKTON_DEV
9 def __init__(
10 self,
11 pipelineref=None,
12 params=None,
13 service_account_name=None,
14 **kwargs,
15 ):
16 """
17 Args:
18 pipelineref (str): Mandatory: Base pipeline to run pipelineruns
19 params (dict): Optional params to add during triggering a run.
20 params can be set/changed based on pipelineref.
21 example : params={"param_name1":"param_value1", "param_name2":"param_value2"}
22 service_account_name (str): Optional to provide service account
23 """
24 super().__init__(**kwargs)
25 self.pipelineref = pipelineref
26 self.params = params
27 self.service_account_name = service_account_name
29 def to_dict(self) -> None:
30 super().to_dict()
31 if not self.kind_dict and not self.yaml_file:
32 if not self.pipelineref:
33 raise MissingRequiredArgumentError(argument="pipelineref")
34 self.res["spec"] = {}
35 self.res["spec"]["pipelineref"] = {"name": self.pipelineref}
37 if self.params:
38 self.res["spec"]["params"] = [
39 {"name": params_name, "value": params_value} for params_name, params_value in self.params.items()
40 ]
42 if self.service_account_name:
43 self.res["spec"]["serviceAccountName"] = self.service_account_name