@@ -34,6 +34,7 @@ export enum PipelineExampleNames {
3434 EMBEDDED_PIPELINE_SPEC = 'embedded-pipeline-spec' ,
3535 PIPELINE_WITH_FINALLY = 'pipeline-with-finally' ,
3636 RESULTS = 'results-pipeline' ,
37+ CUSTOM_TASK_PIPELINE = 'custom-task-pipeline' ,
3738}
3839
3940type CombinedPipelineTestData = {
@@ -54,42 +55,88 @@ const pipelineSpec: PipelineSpecData = {
5455 tasks : [
5556 {
5657 name : 'hello-world-1' ,
57- taskRef : { name : 'hello-world-1' } ,
58+ taskRef : { kind : 'Task' , name : 'hello-world-1' } ,
5859 } ,
5960 {
6061 name : 'hello-world-truncate-more-than-20-char' ,
61- taskRef : { name : 'hello-world-truncate-more-than-20-char' } ,
62+ taskRef : { kind : 'Task' , name : 'hello-world-truncate-more-than-20-char' } ,
6263 } ,
6364 ] ,
6465 } ,
6566 [ PipelineExampleNames . PARTIAL_PIPELINE ] : {
6667 tasks : [
67- { name : 'hello-world-1' , taskRef : { name : 'hello-world-1' } } ,
68+ { name : 'hello-world-1' , taskRef : { kind : 'Task' , name : 'hello-world-1' } } ,
6869 {
6970 name : 'hello-world-truncate-more-than-20-char' ,
70- taskRef : { name : 'hello-world-truncate-more-than-20-char' } ,
71+ taskRef : { kind : 'Task' , name : 'hello-world-truncate-more-than-20-char' } ,
7172 } ,
72- { name : 'hello-world-3' , taskRef : { name : 'hello-world-3' } } ,
73+ { name : 'hello-world-3' , taskRef : { kind : 'Task' , name : 'hello-world-3' } } ,
74+ ] ,
75+ } ,
76+ [ PipelineExampleNames . CUSTOM_TASK_PIPELINE ] : {
77+ tasks : [
78+ { name : 'hello-world-1' , taskRef : { kind : 'Task' , name : 'hello-world-1' } } ,
79+ {
80+ name : 'hello-world-custom-task-2' ,
81+ taskRef : { kind : 'ApprovalTask' , name : 'hello-world-custom-task-2' } ,
82+ } ,
83+ { name : 'hello-world-3' , taskRef : { kind : 'Task' , name : 'hello-world-3' } } ,
7384 ] ,
7485 } ,
7586 [ PipelineExampleNames . COMPLEX_PIPELINE ] : {
7687 tasks : [
77- { name : 'build-app' , taskRef : { name : 'noop-task' } } ,
78- { name : 'analyse-code' , runAfter : [ 'build-app' ] , taskRef : { name : 'noop-task' } } ,
79- { name : 'style-checks' , runAfter : [ 'build-app' ] , taskRef : { name : 'noop-task' } } ,
80- { name : 'find-bugs' , runAfter : [ 'build-app' ] , taskRef : { name : 'noop-task' } } ,
88+ { name : 'build-app' , taskRef : { kind : 'Task' , name : 'noop-task' } } ,
89+ {
90+ name : 'analyse-code' ,
91+ runAfter : [ 'build-app' ] ,
92+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
93+ } ,
94+ {
95+ name : 'style-checks' ,
96+ runAfter : [ 'build-app' ] ,
97+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
98+ } ,
99+ { name : 'find-bugs' , runAfter : [ 'build-app' ] , taskRef : { kind : 'Task' , name : 'noop-task' } } ,
81100 {
82101 name : 'build-image' ,
83102 runAfter : [ 'find-bugs' , 'style-checks' , 'analyse-code' ] ,
84- taskRef : { name : 'noop-task' } ,
85- } ,
86- { name : 'deploy-image' , runAfter : [ 'build-image' ] , taskRef : { name : 'noop-task' } } ,
87- { name : 'test-suite-1' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
88- { name : 'test-suite-2' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
89- { name : 'test-suite-3' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
90- { name : 'test-suite-4' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
91- { name : 'test-suite-5' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
92- { name : 'test-suite-6' , runAfter : [ 'deploy-image' ] , taskRef : { name : 'noop-task' } } ,
103+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
104+ } ,
105+ {
106+ name : 'deploy-image' ,
107+ runAfter : [ 'build-image' ] ,
108+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
109+ } ,
110+ {
111+ name : 'test-suite-1' ,
112+ runAfter : [ 'deploy-image' ] ,
113+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
114+ } ,
115+ {
116+ name : 'test-suite-2' ,
117+ runAfter : [ 'deploy-image' ] ,
118+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
119+ } ,
120+ {
121+ name : 'test-suite-3' ,
122+ runAfter : [ 'deploy-image' ] ,
123+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
124+ } ,
125+ {
126+ name : 'test-suite-4' ,
127+ runAfter : [ 'deploy-image' ] ,
128+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
129+ } ,
130+ {
131+ name : 'test-suite-5' ,
132+ runAfter : [ 'deploy-image' ] ,
133+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
134+ } ,
135+ {
136+ name : 'test-suite-6' ,
137+ runAfter : [ 'deploy-image' ] ,
138+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
139+ } ,
93140 {
94141 name : 'verify' ,
95142 runAfter : [
@@ -100,7 +147,7 @@ const pipelineSpec: PipelineSpecData = {
100147 'test-suite-5' ,
101148 'test-suite-6' ,
102149 ] ,
103- taskRef : { name : 'noop-task' } ,
150+ taskRef : { kind : 'Task' , name : 'noop-task' } ,
104151 } ,
105152 ] ,
106153 finally : [ ] ,
@@ -388,17 +435,17 @@ const pipelineSpec: PipelineSpecData = {
388435 tasks : [
389436 {
390437 name : 'hello-world-1' ,
391- taskRef : { name : 'hello-world-1' } ,
438+ taskRef : { kind : 'Task' , name : 'hello-world-1' } ,
392439 } ,
393440 {
394441 name : 'hello-world-2' ,
395- taskRef : { name : 'hello-world-2' } ,
442+ taskRef : { kind : 'Task' , name : 'hello-world-2' } ,
396443 } ,
397444 ] ,
398445 finally : [
399446 {
400447 name : 'run-anyway' ,
401- taskRef : { name : 'run-anyway' } ,
448+ taskRef : { kind : 'Task' , name : 'run-anyway' } ,
402449 } ,
403450 ] ,
404451 } ,
@@ -733,6 +780,41 @@ export const pipelineTestData: PipelineTestData = {
733780 } ,
734781 } ,
735782 } ,
783+ [ PipelineExampleNames . CUSTOM_TASK_PIPELINE ] : {
784+ dataSource : 'custom-task-pipeline' ,
785+ pipeline : {
786+ apiVersion : 'tekton.dev/v1alpha1' ,
787+ kind : 'Pipeline' ,
788+ metadata : {
789+ name : 'custom-task-pipeline' ,
790+ namespace : 'tekton-pipelines' ,
791+ } ,
792+ spec : pipelineSpec [ PipelineExampleNames . CUSTOM_TASK_PIPELINE ] ,
793+ } ,
794+ pipelineRuns : {
795+ [ DataState . PIPELINE_RUN_PENDING ] : {
796+ apiVersion : 'tekton.dev/v1alpha1' ,
797+ kind : 'PipelineRun' ,
798+ metadata : {
799+ name : 'custom-task-pipeline-3tt7aw' ,
800+ namespace : 'tekton-pipelines' ,
801+ labels : { [ TektonResourceLabel . pipeline ] : 'custom-task-pipeline' } ,
802+ } ,
803+ spec : {
804+ pipelineRef : { name : 'custom-task-pipeline' } ,
805+ } ,
806+ status : {
807+ pipelineSpec : pipelineSpec [ PipelineExampleNames . CUSTOM_TASK_PIPELINE ] ,
808+ conditions : [
809+ {
810+ status : 'True' ,
811+ type : 'Succeeded' ,
812+ } ,
813+ ] ,
814+ } ,
815+ } ,
816+ } ,
817+ } ,
736818 [ PipelineExampleNames . COMPLEX_PIPELINE ] : {
737819 dataSource : 'complex-pipeline' ,
738820 pipeline : {
0 commit comments