beaker-hostgenerator 1.5.0 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f66ec9e9bd76078ef767cc152a9d22930c9cb20cd15c856e43149ccf87c04dc1
4
- data.tar.gz: e9c0cda19a2cf2381b0e609e1a1aff9c2cd0dbc895b809fca0649556d306a1aa
3
+ metadata.gz: f3e4326354ac2f461c9d42ce6f2fbd7cc457b27653c054f1a0555d4d0efdff0f
4
+ data.tar.gz: 5931c224850c934fe091a3b473a2bf47a102b700f3fe06c77c39ab2062eca9cd
5
5
  SHA512:
6
- metadata.gz: 91cf25527d7f1fc7dc5de73929e3a774d5e1bdc8c934c267419501845a011e3c752b8fe3484ba661de49f47ba9318e5d6f18d80223ffcb2ccb5ace5aa21dfc2a
7
- data.tar.gz: 2f49add8f297dd0938a63c7ff2f2b6300e0d8ba0a0bc3498035aefc81747a0ee6ea12adc96eacfa186735bb496be4b8676226f4b6b0eb22ca8343473b6803b9e
6
+ metadata.gz: caf236c3caf1156f7062090dbb10a776350373bc4430612a509b4fa11a1ab662cc9e2cb3a36ccafdeae8ece1a292a465ad151d3241d091191fba370e36e3a4d3
7
+ data.tar.gz: 49b20acb26822cdfd7376c704c33f8581403d191419da42776f25a857190fb1454fa7dd6b42a0052fdfb97349bbcda61edc230a0e1818400343cee005baace12
data/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [1.6.0](https://github.com/voxpupuli/beaker-hostgenerator/tree/1.6.0) (2021-08-17)
6
+
7
+ [Full Changelog](https://github.com/voxpupuli/beaker-hostgenerator/compare/1.5.0...1.6.0)
8
+
9
+ **Implemented enhancements:**
10
+
11
+ - Generate Ubuntu ABS, vmpooler, and Docker templates on the fly [\#218](https://github.com/voxpupuli/beaker-hostgenerator/pull/218) ([ekohl](https://github.com/ekohl))
12
+
13
+ **Fixed bugs:**
14
+
15
+ - Set up Debian 11 on Docker [\#220](https://github.com/voxpupuli/beaker-hostgenerator/pull/220) ([ekohl](https://github.com/ekohl))
16
+
5
17
  ## [1.5.0](https://github.com/voxpupuli/beaker-hostgenerator/tree/1.5.0) (2021-06-14)
6
18
 
7
19
  [Full Changelog](https://github.com/voxpupuli/beaker-hostgenerator/compare/1.4.0...1.5.0)
@@ -100,6 +100,55 @@ module BeakerHostGenerator
100
100
  }
101
101
  end
102
102
 
103
+ # Ubuntu
104
+ #
105
+ # Generate LTS platforms
106
+ (14..20).select(&:even?).each do |release|
107
+ # 32 bit support was dropped in Ubuntu 18.04
108
+ if release < 18
109
+ result["ubuntu#{release}04-32"] = {
110
+ :general => {
111
+ 'platform' => "ubuntu-#{release}.04-i386"
112
+ }
113
+ }
114
+ end
115
+
116
+ result["ubuntu#{release}04-64"] = {
117
+ :general => {
118
+ 'platform' => "ubuntu-#{release}.04-amd64"
119
+ }
120
+ }
121
+
122
+ result["ubuntu#{release}04-POWER"] = {
123
+ :general => {
124
+ 'platform' => "ubuntu-#{release}.04-ppc64el"
125
+ }
126
+ }
127
+
128
+ result["ubuntu#{release}04-AARCH64"] = {
129
+ :general => {
130
+ 'platform' => "ubuntu-#{release}.04-aarch64"
131
+ }
132
+ }
133
+ end
134
+
135
+ # Generate STS platforms
136
+ [20, 21].each do |release|
137
+ unless release.even?
138
+ result["ubuntu#{release}04-64"] = {
139
+ :general => {
140
+ 'platform' => "ubuntu-#{release}.04-amd64"
141
+ }
142
+ }
143
+ end
144
+
145
+ result["ubuntu#{release}10-64"] = {
146
+ :general => {
147
+ 'platform' => "ubuntu-#{release}.10-amd64"
148
+ }
149
+ }
150
+ end
151
+
103
152
  result.merge!({
104
153
  'aix53-POWER' => {
105
154
  :general => {
@@ -592,6 +641,13 @@ module BeakerHostGenerator
592
641
  'platform' => 'debian-11-amd64',
593
642
  'packaging_platform' => 'debian-11-amd64'
594
643
  },
644
+ :docker => {
645
+ 'docker_image_commands' => [
646
+ 'cp /bin/true /sbin/agetty',
647
+ 'rm -f /usr/sbin/policy-rc.d',
648
+ 'apt-get update && apt-get install -y cron locales-all net-tools wget gnupg'
649
+ ]
650
+ },
595
651
  :vagrant => {
596
652
  'box' => 'debian/bullseye64',
597
653
  },
@@ -1165,216 +1221,6 @@ module BeakerHostGenerator
1165
1221
  'template' => 'solaris-114-x86_64'
1166
1222
  }
1167
1223
  },
1168
- 'ubuntu1004-32' => {
1169
- :general => {
1170
- 'platform' => 'ubuntu-10.04-i386'
1171
- },
1172
- :vmpooler => {
1173
- 'template' => 'ubuntu-1004-i386'
1174
- }
1175
- },
1176
- 'ubuntu1004-64' => {
1177
- :general => {
1178
- 'platform' => 'ubuntu-10.04-amd64'
1179
- },
1180
- :vmpooler => {
1181
- 'template' => 'ubuntu-1004-x86_64'
1182
- }
1183
- },
1184
- 'ubuntu1204-32' => {
1185
- :general => {
1186
- 'platform' => 'ubuntu-12.04-i386'
1187
- },
1188
- :vmpooler => {
1189
- 'template' => 'ubuntu-1204-i386'
1190
- }
1191
- },
1192
- 'ubuntu1204-64' => {
1193
- :general => {
1194
- 'platform' => 'ubuntu-12.04-amd64'
1195
- },
1196
- :docker => {
1197
- 'docker_image_commands' => [
1198
- 'cp /bin/true /sbin/agetty',
1199
- 'apt-get install -y net-tools wget',
1200
- 'locale-gen en_US.UTF-8'
1201
- ]
1202
- },
1203
- :vmpooler => {
1204
- 'template' => 'ubuntu-1204-x86_64'
1205
- }
1206
- },
1207
- 'ubuntu1404-32' => {
1208
- :general => {
1209
- 'platform' => 'ubuntu-14.04-i386',
1210
- 'packaging_platform' => 'ubuntu-14.04-i386'
1211
- },
1212
- :vmpooler => {
1213
- 'template' => 'ubuntu-1404-i386'
1214
- }
1215
- },
1216
- 'ubuntu1404-64' => {
1217
- :general => {
1218
- 'platform' => 'ubuntu-14.04-amd64',
1219
- 'packaging_platform' => 'ubuntu-14.04-amd64'
1220
- },
1221
- :docker => {
1222
- 'docker_image_commands' => [
1223
- 'cp /bin/true /sbin/agetty',
1224
- 'rm /usr/sbin/policy-rc.d',
1225
- 'rm /sbin/initctl; dpkg-divert --rename --remove /sbin/initctl',
1226
- 'apt-get install -y net-tools wget apt-transport-https',
1227
- 'locale-gen en_US.UTF-8',
1228
- 'echo LANG=en_US.UTF-8 > /etc/default/locale'
1229
- ]
1230
- },
1231
- :vmpooler => {
1232
- 'template' => 'ubuntu-1404-x86_64'
1233
- }
1234
- },
1235
- 'ubuntu1504-32' => {
1236
- :general => {
1237
- 'platform' => 'ubuntu-15.04-i386'
1238
- },
1239
- :vmpooler => {
1240
- 'template' => 'ubuntu-1504-i386'
1241
- }
1242
- },
1243
- 'ubuntu1504-64' => {
1244
- :general => {
1245
- 'platform' => 'ubuntu-15.04-amd64'
1246
- },
1247
- :vmpooler => {
1248
- 'template' => 'ubuntu-1504-x86_64'
1249
- }
1250
- },
1251
- 'ubuntu1510-32' => {
1252
- :general => {
1253
- 'platform' => 'ubuntu-15.10-i386'
1254
- },
1255
- :vmpooler => {
1256
- 'template' => 'ubuntu-1510-i386'
1257
- }
1258
- },
1259
- 'ubuntu1510-64' => {
1260
- :general => {
1261
- 'platform' => 'ubuntu-15.10-amd64'
1262
- },
1263
- :vmpooler => {
1264
- 'template' => 'ubuntu-1510-x86_64'
1265
- }
1266
- },
1267
- 'ubuntu1604-32' => {
1268
- :general => {
1269
- 'platform' => 'ubuntu-16.04-i386',
1270
- 'packaging_platform' => 'ubuntu-16.04-i386'
1271
- },
1272
- :vmpooler => {
1273
- 'template' => 'ubuntu-1604-i386'
1274
- }
1275
- },
1276
- 'ubuntu1604-64' => {
1277
- :general => {
1278
- 'platform' => 'ubuntu-16.04-amd64',
1279
- 'packaging_platform' => 'ubuntu-16.04-amd64'
1280
- },
1281
- :docker => {
1282
- 'docker_image_commands' => [
1283
- 'cp /bin/true /sbin/agetty',
1284
- 'apt-get install -y net-tools wget locales apt-transport-https',
1285
- 'locale-gen en_US.UTF-8',
1286
- 'echo LANG=en_US.UTF-8 > /etc/default/locale'
1287
- ]
1288
- },
1289
- :vmpooler => {
1290
- 'template' => 'ubuntu-1604-x86_64'
1291
- }
1292
- },
1293
- 'ubuntu1604-POWER' => {
1294
- :general => {
1295
- 'platform' => 'ubuntu-16.04-ppc64el',
1296
- 'packaging_platform' => 'ubuntu-16.04-ppc64el'
1297
- },
1298
- :abs => {
1299
- 'template' => 'ubuntu-16.04-power8'
1300
- }
1301
- },
1302
- 'ubuntu1610-32' => {
1303
- :general => {
1304
- 'platform' => 'ubuntu-16.10-i386'
1305
- },
1306
- :vmpooler => {
1307
- 'template' => 'ubuntu-1610-i386'
1308
- }
1309
- },
1310
- 'ubuntu1610-64' => {
1311
- :general => {
1312
- 'platform' => 'ubuntu-16.10-amd64'
1313
- },
1314
- :vmpooler => {
1315
- 'template' => 'ubuntu-1610-x86_64'
1316
- }
1317
- },
1318
- 'ubuntu1804-64' => {
1319
- :general => {
1320
- 'platform' => 'ubuntu-18.04-amd64',
1321
- 'packaging_platform' => 'ubuntu-18.04-amd64'
1322
- },
1323
- :docker => {
1324
- 'docker_image_commands' => [
1325
- 'cp /bin/true /sbin/agetty',
1326
- 'apt-get install -y net-tools wget locales apt-transport-https iproute2 gnupg',
1327
- 'locale-gen en_US.UTF-8',
1328
- 'echo LANG=en_US.UTF-8 > /etc/default/locale'
1329
- ]
1330
- },
1331
- :vmpooler => {
1332
- 'template' => 'ubuntu-1804-x86_64'
1333
- }
1334
- },
1335
- 'ubuntu1810-64' => {
1336
- :general => {
1337
- 'platform' => 'ubuntu-18.10-amd64',
1338
- 'packaging_platform' => 'ubuntu-18.10-amd64'
1339
- },
1340
- :docker => {
1341
- 'docker_image_commands' => [
1342
- 'cp /bin/true /sbin/agetty',
1343
- 'apt-get install -y net-tools wget locales apt-transport-https iproute2',
1344
- 'locale-gen en_US.UTF-8',
1345
- 'echo LANG=en_US.UTF-8 > /etc/default/locale'
1346
- ]
1347
- },
1348
- :vmpooler => {
1349
- 'template' => 'ubuntu-1810-x86_64'
1350
- }
1351
- },
1352
- 'ubuntu2004-64' => {
1353
- :general => {
1354
- 'platform' => 'ubuntu-20.04-amd64',
1355
- 'packaging_platform' => 'ubuntu-20.04-amd64'
1356
- },
1357
- :docker => {
1358
- 'docker_image_commands' => [
1359
- 'cp /bin/true /sbin/agetty',
1360
- 'apt-get install -y net-tools wget locales apt-transport-https iproute2 gnupg',
1361
- 'locale-gen en_US.UTF-8',
1362
- 'echo LANG=en_US.UTF-8 > /etc/default/locale'
1363
- ]
1364
- },
1365
- :vmpooler => {
1366
- 'template' => 'ubuntu-2004-x86_64'
1367
- }
1368
- },
1369
- 'ubuntu2004-AARCH64' => {
1370
- :general => {
1371
- 'platform' => 'ubuntu-20.04-aarch64',
1372
- 'packaging_platform' => 'ubuntu-20.04-aarch64'
1373
- },
1374
- :abs => {
1375
- 'template' => 'ubuntu-2004-arm64'
1376
- },
1377
- },
1378
1224
  'vro6-64' => {
1379
1225
  :general => {
1380
1226
  'platform' => 'sles-11-x86_64',
@@ -27,6 +27,22 @@ module BeakerHostGenerator
27
27
  base_config['template'] = base_config['platform'].gsub(/^el/, 'centos')
28
28
  when /^fedora/
29
29
  base_config['template'] = base_config['platform']
30
+ when /^ubuntu/
31
+ base_template = node_info['ostype'].sub('ubuntu', 'ubuntu-')
32
+ arch = case node_info['bits']
33
+ when '64'
34
+ 'x86_64'
35
+ when '32'
36
+ 'i386'
37
+ when 'AARCH64'
38
+ 'arm64'
39
+ when 'POWER'
40
+ base_template = node_info['ostype'].sub(/ubuntu(\d\d)/, 'ubuntu-\1.')
41
+ 'power8'
42
+ else
43
+ raise "Unknown bits '#{node_info['bits']}' for '#{node_info['ostype']}'"
44
+ end
45
+ base_config['template'] = "#{base_template}-#{arch}"
30
46
  end
31
47
 
32
48
  base_config
@@ -17,6 +17,33 @@ module BeakerHostGenerator
17
17
  base_config['image'] = "amd64/#{base_config['image']}"
18
18
  end
19
19
 
20
+ docker_commands = []
21
+
22
+ case node_info['ostype']
23
+ when /^ubuntu/
24
+ docker_commands << 'cp /bin/true /sbin/agetty'
25
+
26
+ if node_info['ostype'] =~ /1404/
27
+ docker_commands << 'rm /usr/sbin/policy-rc.d'
28
+ docker_commands << 'rm /sbin/initctl; dpkg-divert --rename --remove /sbin/initctl'
29
+ end
30
+
31
+ extra_packages_to_install = case node_info['ostype']
32
+ when /1404/
33
+ ['apt-transport-https']
34
+ when /1604/
35
+ ['locales']
36
+ else
37
+ ['locales', 'iproute2', 'gnupg']
38
+ end
39
+
40
+ docker_commands << "apt-get install -y net-tools wget #{extra_packages_to_install.join(' ')}"
41
+ docker_commands << 'locale-gen en_US.UTF-8'
42
+ docker_commands << 'echo LANG=en_US.UTF-8 > /etc/default/locale'
43
+
44
+ base_config['docker_image_commands'] = docker_commands
45
+ end
46
+
20
47
  return base_generate_node(node_info, base_config, bhg_version, :docker)
21
48
  end
22
49
  end
@@ -8,7 +8,7 @@ module BeakerHostGenerator
8
8
  include BeakerHostGenerator::Data
9
9
 
10
10
  # default global configuration keys
11
- def global_config()
11
+ def global_config
12
12
  {
13
13
  'pooling_api' => 'http://vmpooler.delivery.puppetlabs.net/'
14
14
  }
@@ -22,6 +22,17 @@ module BeakerHostGenerator
22
22
  base_config['template'] = base_config['platform'].gsub(/^el/, 'centos')
23
23
  when /^fedora/
24
24
  base_config['template'] = base_config['platform']
25
+ when /^ubuntu/
26
+ arch = case node_info['bits']
27
+ when '64'
28
+ 'x86_64'
29
+ when '32'
30
+ 'i386'
31
+ else
32
+ nil
33
+ end
34
+
35
+ base_config['template'] = "#{node_info['ostype'].sub('ubuntu', 'ubuntu-')}-#{arch}" if arch
25
36
  end
26
37
 
27
38
  # Some vmpooler/vsphere platforms have special requirements.
@@ -1,5 +1,5 @@
1
1
  module BeakerHostGenerator
2
2
  module Version
3
- STRING = '1.5.0'
3
+ STRING = '1.6.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-hostgenerator
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Branan Purvine-Riley
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-06-14 00:00:00.000000000 Z
13
+ date: 2021-08-17 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: minitest