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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
{
"Name": "build-el-packages",
"Vars": {
"output_path": {
"Value": "${OUTSPATH}",
"Description": "GCS output path for packages."
},
"github_repo": {
"Value": "https://github.com/GoogleCloudPlatform/compute-image-packages.git",
"Description": "Github repo to build packages from."
},
"github_branch": {
"Value": "master",
"Description": "Github branch to build packages from."
}
},
"Sources": {
"build_el_packages.sh": "./build_el_packages.sh"
},
"Steps": {
"setup-disk": {
"CreateDisks": [
{
"Name": "disk-el8-build",
"SourceImage": "projects/rhel-cloud/global/images/family/rhel-8",
"SizeGb": "10",
"Type": "pd-ssd"
},
{
"Name": "disk-el7-build",
"SourceImage": "projects/centos-cloud/global/images/family/centos-7",
"SizeGb": "10",
"Type": "pd-ssd"
},
{
"Name": "disk-el6-build",
"SourceImage": "projects/centos-cloud/global/images/family/centos-6",
"SizeGb": "10",
"Type": "pd-ssd"
}
]
},
"package-build": {
"CreateInstances": [
{
"Name": "inst-el8-build",
"Disks": [
{"Source": "disk-el8-build"}
],
"MachineType": "n1-standard-2",
"Metadata": {
"github_branch": "${github_branch}",
"github_repo": "${github_repo}",
"output_path": "${output_path}"
},
"Scopes": ["https://www.googleapis.com/auth/devstorage.read_write"],
"StartupScript": "build_el_packages.sh"
},
{
"Name": "inst-el7-build",
"Disks": [
{"Source": "disk-el7-build"}
],
"MachineType": "n1-standard-2",
"Metadata": {
"github_branch": "${github_branch}",
"github_repo": "${github_repo}",
"output_path": "${output_path}"
},
"Scopes": ["https://www.googleapis.com/auth/devstorage.read_write"],
"StartupScript": "build_el_packages.sh"
},
{
"Name": "inst-el6-build",
"Disks": [
{"Source": "disk-el6-build"}
],
"MachineType": "n1-standard-2",
"Metadata": {
"github_branch": "${github_branch}",
"github_repo": "${github_repo}",
"output_path": "${output_path}"
},
"Scopes": ["https://www.googleapis.com/auth/devstorage.read_write"],
"StartupScript": "build_el_packages.sh"
}
]
},
"wait-for-build": {
"WaitForInstancesSignal": [
{
"Name": "inst-el8-build",
"SerialOutput": {
"Port": 1,
"SuccessMatch": "BuildSuccess:",
"FailureMatch": "BuildFailed:"
}
},
{
"Name": "inst-el7-build",
"SerialOutput": {
"Port": 1,
"SuccessMatch": "BuildSuccess:",
"FailureMatch": "BuildFailed:"
}
},
{
"Name": "inst-el6-build",
"SerialOutput": {
"Port": 1,
"SuccessMatch": "BuildSuccess:",
"FailureMatch": "BuildFailed:"
}
}
]
}
},
"Dependencies": {
"package-build": ["setup-disk"],
"wait-for-build": ["package-build"]
}
}
|