/
resource_pipelinetemplate.go
72 lines (60 loc) · 1.78 KB
/
resource_pipelinetemplate.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package gocd
// GetStages from the pipeline template
func (pt PipelineTemplate) GetStages() []*Stage {
return pt.Stages
}
// GetStage from the pipeline template
func (pt PipelineTemplate) GetStage(stageName string) *Stage {
for _, stage := range pt.Stages {
if stage.Name == stageName {
return stage
}
}
return nil
}
// GetName of the pipeline template
func (pt PipelineTemplate) GetName() string {
return pt.Name
}
// SetStages overwrites any existing stages
func (pt *PipelineTemplate) SetStages(stages []*Stage) {
pt.Stages = stages
}
// AddStage appends a stage to this pipeline
func (pt *PipelineTemplate) AddStage(stage *Stage) {
pt.Stages = append(pt.Stages, stage)
}
// RemoveLinks gets the PipelineTemplate ready to be submitted to the GoCD API.
func (pt *PipelineTemplate) RemoveLinks() {
pt.Links = nil
}
// Pipelines returns a list of Pipelines attached to this PipelineTemplate object.
func (pt PipelineTemplate) Pipelines() []*Pipeline {
return pt.Embedded.Pipelines
}
// SetStage replaces a stage if it already exists
func (pt *PipelineTemplate) SetStage(newStage *Stage) {
for i, stage := range pt.Stages {
if stage.Name == newStage.Name {
pt.Stages[i] = newStage
return
}
}
pt.AddStage(newStage)
}
// SetVersion sets a version string for this pipeline
func (pt *PipelineTemplate) SetVersion(version string) {
pt.Version = version
}
// GetVersion retrieves a version string for this pipeline
func (pt PipelineTemplate) GetVersion() (version string) {
return pt.Version
}
// SetVersion sets a version string for this pipeline
func (pt *PipelineTemplateRequest) SetVersion(version string) {
pt.Version = version
}
// GetVersion retrieves a version string for this pipeline
func (pt PipelineTemplateRequest) GetVersion() (version string) {
return pt.Version
}