Merge ~chad.smith/cloud-init:ubuntu/devel into cloud-init:ubuntu/devel

Proposed by Chad Smith
Status: Merged
Merged at revision: aed04150c6eee1eb791305decc00a1edba51b492
Proposed branch: ~chad.smith/cloud-init:ubuntu/devel
Merge into: cloud-init:ubuntu/devel
Diff against target: 548 lines (+85/-7)
8 files modified
cloudinit/config/cc_rh_subscription.py (+3/-3)
cloudinit/net/sysconfig.py (+2/-0)
cloudinit/sources/DataSourceOpenNebula.py (+3/-1)
debian/changelog (+14/-0)
setup.py (+10/-3)
systemd/cloud-init-generator.tmpl (+5/-0)
tests/unittests/test_distros/test_netconfig.py (+8/-0)
tests/unittests/test_net.py (+40/-0)
Reviewer Review Type Date Requested Status
Server Team CI bot continuous-integration Approve
cloud-init Commiters Pending
Review via email: mp+362363@code.launchpad.net

Commit message

New upstream snapshot to fix intermittent unittest failures on opennebula due to bash 5.0

LP: #1813641

To post a comment you must log in.
Revision history for this message
Server Team CI bot (server-team-bot) wrote :

PASSED: Continuous integration, rev:aed04150c6eee1eb791305decc00a1edba51b492
https://jenkins.ubuntu.com/server/job/cloud-init-ci/549/
Executed test runs:
    SUCCESS: Checkout
    SUCCESS: Unit & Style Tests
    SUCCESS: Ubuntu LTS: Build
    SUCCESS: Ubuntu LTS: Integration
    IN_PROGRESS: Declarative: Post Actions

Click here to trigger a rebuild:
https://jenkins.ubuntu.com/server/job/cloud-init-ci/549/rebuild

review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/cloudinit/config/cc_rh_subscription.py b/cloudinit/config/cc_rh_subscription.py
2index edee01e..28c79b8 100644
3--- a/cloudinit/config/cc_rh_subscription.py
4+++ b/cloudinit/config/cc_rh_subscription.py
5@@ -249,14 +249,14 @@ class SubscriptionManager(object):
6 except util.ProcessExecutionError as e:
7 if e.stdout.rstrip() != '':
8 for line in e.stdout.split("\n"):
9- if line is not '':
10+ if line != '':
11 self.log_warn(line)
12 else:
13 self.log_warn("Setting the service level failed with: "
14 "{0}".format(e.stderr.strip()))
15 return False
16 for line in return_out.split("\n"):
17- if line is not "":
18+ if line != "":
19 self.log.debug(line)
20 return True
21
22@@ -268,7 +268,7 @@ class SubscriptionManager(object):
23 self.log_warn("Auto-attach failed with: {0}".format(e))
24 return False
25 for line in return_out.split("\n"):
26- if line is not "":
27+ if line != "":
28 self.log.debug(line)
29 return True
30
31diff --git a/cloudinit/net/sysconfig.py b/cloudinit/net/sysconfig.py
32index fd8e501..19b3e60 100644
33--- a/cloudinit/net/sysconfig.py
34+++ b/cloudinit/net/sysconfig.py
35@@ -273,6 +273,7 @@ class Renderer(renderer.Renderer):
36 ('USERCTL', False),
37 ('NM_CONTROLLED', False),
38 ('BOOTPROTO', 'none'),
39+ ('STARTMODE', 'auto'),
40 ])
41
42 # If these keys exist, then their values will be used to form
43@@ -367,6 +368,7 @@ class Renderer(renderer.Renderer):
44 iface_cfg.name))
45 if subnet.get('control') == 'manual':
46 iface_cfg['ONBOOT'] = False
47+ iface_cfg['STARTMODE'] = 'manual'
48
49 # set IPv4 and IPv6 static addresses
50 ipv4_index = -1
51diff --git a/cloudinit/sources/DataSourceOpenNebula.py b/cloudinit/sources/DataSourceOpenNebula.py
52index 6e1d04b..02c9a7b 100644
53--- a/cloudinit/sources/DataSourceOpenNebula.py
54+++ b/cloudinit/sources/DataSourceOpenNebula.py
55@@ -337,7 +337,9 @@ def parse_shell_config(content, keylist=None, bash=None, asuser=None,
56 (output, _error) = util.subp(cmd, data=bcmd)
57
58 # exclude vars in bash that change on their own or that we used
59- excluded = ("EPOCHREALTIME", "RANDOM", "LINENO", "SECONDS", "_", "__v")
60+ excluded = (
61+ "EPOCHREALTIME", "EPOCHSECONDS", "RANDOM", "LINENO", "SECONDS", "_",
62+ "__v")
63 preset = {}
64 ret = {}
65 target = None
66diff --git a/debian/changelog b/debian/changelog
67index 26655fc..70f1879 100644
68--- a/debian/changelog
69+++ b/debian/changelog
70@@ -1,3 +1,17 @@
71+cloud-init (18.5-21-g8ee294d5-0ubuntu1) disco; urgency=medium
72+
73+ * New upstream snapshot.
74+ - opennebula: also exclude epochseconds from changed environment vars
75+ (LP: #1813641)
76+ - systemd: Render generator from template to account for system
77+ differences. [Robert Schweikert]
78+ - sysconfig: On SUSE, use STARTMODE instead of ONBOOT
79+ [Robert Schweikert] (LP: #1799540)
80+ - flake8: use ==/!= to compare str, bytes, and int literals
81+ [Paride Legovini]
82+
83+ -- Chad Smith <chad.smith@canonical.com> Mon, 28 Jan 2019 17:01:53 -0700
84+
85 cloud-init (18.5-17-gd1a2fe73-0ubuntu1) disco; urgency=medium
86
87 * New upstream snapshot.
88diff --git a/setup.py b/setup.py
89index ea37efc..186e215 100755
90--- a/setup.py
91+++ b/setup.py
92@@ -30,6 +30,8 @@ VARIANT = None
93 def is_f(p):
94 return os.path.isfile(p)
95
96+def is_generator(p):
97+ return '-generator' in p
98
99 def tiny_p(cmd, capture=True):
100 # Darn python 2.6 doesn't have check_output (argggg)
101@@ -90,7 +92,7 @@ def read_requires():
102 return str(deps).splitlines()
103
104
105-def render_tmpl(template):
106+def render_tmpl(template, mode=None):
107 """render template into a tmpdir under same dir as setup.py
108
109 This is rendered to a temporary directory under the top level
110@@ -119,6 +121,8 @@ def render_tmpl(template):
111 VARIANT, template, fpath])
112 else:
113 tiny_p([sys.executable, './tools/render-cloudcfg', template, fpath])
114+ if mode:
115+ os.chmod(fpath, mode)
116 # return path relative to setup.py
117 return os.path.join(os.path.basename(tmpd), bname)
118
119@@ -138,8 +142,11 @@ INITSYS_FILES = {
120 'systemd': [render_tmpl(f)
121 for f in (glob('systemd/*.tmpl') +
122 glob('systemd/*.service') +
123- glob('systemd/*.target')) if is_f(f)],
124- 'systemd.generators': [f for f in glob('systemd/*-generator') if is_f(f)],
125+ glob('systemd/*.target'))
126+ if (is_f(f) and not is_generator(f))],
127+ 'systemd.generators': [
128+ render_tmpl(f, mode=0o755)
129+ for f in glob('systemd/*') if is_f(f) and is_generator(f)],
130 'upstart': [f for f in glob('upstart/*') if is_f(f)],
131 }
132 INITSYS_ROOTS = {
133diff --git a/systemd/cloud-init-generator b/systemd/cloud-init-generator.tmpl
134similarity index 90%
135rename from systemd/cloud-init-generator
136rename to systemd/cloud-init-generator.tmpl
137index bd9f267..cfa5eb5 100755
138--- a/systemd/cloud-init-generator
139+++ b/systemd/cloud-init-generator.tmpl
140@@ -1,3 +1,4 @@
141+## template:jinja
142 #!/bin/sh
143 set -f
144
145@@ -9,7 +10,11 @@ DISABLE="disabled"
146 FOUND="found"
147 NOTFOUND="notfound"
148 RUN_ENABLED_FILE="$LOG_D/$ENABLE"
149+{% if variant in ["suse"] %}
150+CLOUD_SYSTEM_TARGET="/usr/lib/systemd/system/cloud-init.target"
151+{% else %}
152 CLOUD_SYSTEM_TARGET="/lib/systemd/system/cloud-init.target"
153+{% endif %}
154 CLOUD_TARGET_NAME="cloud-init.target"
155 # lxc sets 'container', but lets make that explicitly a global
156 CONTAINER="${container}"
157diff --git a/tests/unittests/test_distros/test_netconfig.py b/tests/unittests/test_distros/test_netconfig.py
158index 6e33935..e986b59 100644
159--- a/tests/unittests/test_distros/test_netconfig.py
160+++ b/tests/unittests/test_distros/test_netconfig.py
161@@ -468,6 +468,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
162 NETMASK=255.255.255.0
163 NM_CONTROLLED=no
164 ONBOOT=yes
165+ STARTMODE=auto
166 TYPE=Ethernet
167 USERCTL=no
168 """),
169@@ -476,6 +477,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
170 DEVICE=eth1
171 NM_CONTROLLED=no
172 ONBOOT=yes
173+ STARTMODE=auto
174 TYPE=Ethernet
175 USERCTL=no
176 """),
177@@ -499,6 +501,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
178 IPV6_DEFAULTGW=2607:f0d0:1002:0011::1
179 NM_CONTROLLED=no
180 ONBOOT=yes
181+ STARTMODE=auto
182 TYPE=Ethernet
183 USERCTL=no
184 """),
185@@ -507,6 +510,7 @@ class TestNetCfgDistroRedhat(TestNetCfgDistroBase):
186 DEVICE=eth1
187 NM_CONTROLLED=no
188 ONBOOT=yes
189+ STARTMODE=auto
190 TYPE=Ethernet
191 USERCTL=no
192 """),
193@@ -559,6 +563,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
194 NETMASK=255.255.255.0
195 NM_CONTROLLED=no
196 ONBOOT=yes
197+ STARTMODE=auto
198 TYPE=Ethernet
199 USERCTL=no
200 """),
201@@ -567,6 +572,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
202 DEVICE=eth1
203 NM_CONTROLLED=no
204 ONBOOT=yes
205+ STARTMODE=auto
206 TYPE=Ethernet
207 USERCTL=no
208 """),
209@@ -587,6 +593,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
210 IPV6_DEFAULTGW=2607:f0d0:1002:0011::1
211 NM_CONTROLLED=no
212 ONBOOT=yes
213+ STARTMODE=auto
214 TYPE=Ethernet
215 USERCTL=no
216 """),
217@@ -595,6 +602,7 @@ class TestNetCfgDistroOpensuse(TestNetCfgDistroBase):
218 DEVICE=eth1
219 NM_CONTROLLED=no
220 ONBOOT=yes
221+ STARTMODE=auto
222 TYPE=Ethernet
223 USERCTL=no
224 """),
225diff --git a/tests/unittests/test_net.py b/tests/unittests/test_net.py
226index 5313d2d..e041e97 100644
227--- a/tests/unittests/test_net.py
228+++ b/tests/unittests/test_net.py
229@@ -145,6 +145,7 @@ IPADDR=172.19.1.34
230 NETMASK=255.255.252.0
231 NM_CONTROLLED=no
232 ONBOOT=yes
233+STARTMODE=auto
234 TYPE=Ethernet
235 USERCTL=no
236 """.lstrip()),
237@@ -178,6 +179,7 @@ IPADDR=172.19.1.34
238 NETMASK=255.255.252.0
239 NM_CONTROLLED=no
240 ONBOOT=yes
241+STARTMODE=auto
242 TYPE=Ethernet
243 USERCTL=no
244 """.lstrip()),
245@@ -247,6 +249,7 @@ NETMASK=255.255.252.0
246 NETMASK1=255.255.255.0
247 NM_CONTROLLED=no
248 ONBOOT=yes
249+STARTMODE=auto
250 TYPE=Ethernet
251 USERCTL=no
252 """.lstrip()),
253@@ -282,6 +285,7 @@ NETMASK=255.255.252.0
254 NETMASK1=255.255.255.0
255 NM_CONTROLLED=no
256 ONBOOT=yes
257+STARTMODE=auto
258 TYPE=Ethernet
259 USERCTL=no
260 """.lstrip()),
261@@ -373,6 +377,7 @@ IPV6_DEFAULTGW=2001:DB8::1
262 NETMASK=255.255.252.0
263 NM_CONTROLLED=no
264 ONBOOT=yes
265+STARTMODE=auto
266 TYPE=Ethernet
267 USERCTL=no
268 """.lstrip()),
269@@ -410,6 +415,7 @@ IPV6_DEFAULTGW=2001:DB8::1
270 NETMASK=255.255.252.0
271 NM_CONTROLLED=no
272 ONBOOT=yes
273+STARTMODE=auto
274 TYPE=Ethernet
275 USERCTL=no
276 """.lstrip()),
277@@ -526,6 +532,7 @@ NETWORK_CONFIGS = {
278 HWADDR=cf:d6:af:48:e8:80
279 NM_CONTROLLED=no
280 ONBOOT=yes
281+ STARTMODE=auto
282 TYPE=Ethernet
283 USERCTL=no"""),
284 'ifcfg-eth99': textwrap.dedent("""\
285@@ -542,6 +549,7 @@ NETWORK_CONFIGS = {
286 METRIC=10000
287 NM_CONTROLLED=no
288 ONBOOT=yes
289+ STARTMODE=auto
290 TYPE=Ethernet
291 USERCTL=no"""),
292 },
293@@ -655,6 +663,7 @@ NETWORK_CONFIGS = {
294 NETMASK=255.255.255.0
295 NM_CONTROLLED=no
296 ONBOOT=yes
297+ STARTMODE=auto
298 TYPE=Ethernet
299 USERCTL=no
300 MTU=9000
301@@ -694,6 +703,7 @@ NETWORK_CONFIGS = {
302 DEVICE=iface0
303 NM_CONTROLLED=no
304 ONBOOT=yes
305+ STARTMODE=auto
306 TYPE=Ethernet
307 USERCTL=no
308 """),
309@@ -897,6 +907,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
310 MACADDR=aa:bb:cc:dd:ee:ff
311 NM_CONTROLLED=no
312 ONBOOT=yes
313+ STARTMODE=auto
314 TYPE=Bond
315 USERCTL=no"""),
316 'ifcfg-bond0.200': textwrap.dedent("""\
317@@ -905,6 +916,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
318 NM_CONTROLLED=no
319 ONBOOT=yes
320 PHYSDEV=bond0
321+ STARTMODE=auto
322 TYPE=Ethernet
323 USERCTL=no
324 VLAN=yes"""),
325@@ -922,6 +934,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
326 NM_CONTROLLED=no
327 ONBOOT=yes
328 PRIO=22
329+ STARTMODE=auto
330 STP=no
331 TYPE=Bridge
332 USERCTL=no"""),
333@@ -931,6 +944,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
334 HWADDR=c0:d6:9f:2c:e8:80
335 NM_CONTROLLED=no
336 ONBOOT=yes
337+ STARTMODE=auto
338 TYPE=Ethernet
339 USERCTL=no"""),
340 'ifcfg-eth0.101': textwrap.dedent("""\
341@@ -949,6 +963,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
342 NM_CONTROLLED=no
343 ONBOOT=yes
344 PHYSDEV=eth0
345+ STARTMODE=auto
346 TYPE=Ethernet
347 USERCTL=no
348 VLAN=yes"""),
349@@ -959,6 +974,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
350 MASTER=bond0
351 NM_CONTROLLED=no
352 ONBOOT=yes
353+ STARTMODE=auto
354 SLAVE=yes
355 TYPE=Ethernet
356 USERCTL=no"""),
357@@ -969,6 +985,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
358 MASTER=bond0
359 NM_CONTROLLED=no
360 ONBOOT=yes
361+ STARTMODE=auto
362 SLAVE=yes
363 TYPE=Ethernet
364 USERCTL=no"""),
365@@ -979,6 +996,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
366 HWADDR=66:bb:9f:2c:e8:80
367 NM_CONTROLLED=no
368 ONBOOT=yes
369+ STARTMODE=auto
370 TYPE=Ethernet
371 USERCTL=no"""),
372 'ifcfg-eth4': textwrap.dedent("""\
373@@ -988,6 +1006,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
374 HWADDR=98:bb:9f:2c:e8:80
375 NM_CONTROLLED=no
376 ONBOOT=yes
377+ STARTMODE=auto
378 TYPE=Ethernet
379 USERCTL=no"""),
380 'ifcfg-eth5': textwrap.dedent("""\
381@@ -996,6 +1015,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
382 HWADDR=98:bb:9f:2c:e8:8a
383 NM_CONTROLLED=no
384 ONBOOT=no
385+ STARTMODE=manual
386 TYPE=Ethernet
387 USERCTL=no""")
388 },
389@@ -1307,6 +1327,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
390 NETMASK1=255.255.255.0
391 NM_CONTROLLED=no
392 ONBOOT=yes
393+ STARTMODE=auto
394 TYPE=Bond
395 USERCTL=no
396 """),
397@@ -1318,6 +1339,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
398 NM_CONTROLLED=no
399 ONBOOT=yes
400 SLAVE=yes
401+ STARTMODE=auto
402 TYPE=Ethernet
403 USERCTL=no
404 """),
405@@ -1334,6 +1356,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
406 NM_CONTROLLED=no
407 ONBOOT=yes
408 SLAVE=yes
409+ STARTMODE=auto
410 TYPE=Ethernet
411 USERCTL=no
412 """),
413@@ -1359,6 +1382,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
414 NETMASK1=255.255.255.0
415 NM_CONTROLLED=no
416 ONBOOT=yes
417+ STARTMODE=auto
418 TYPE=Bond
419 USERCTL=no
420 """),
421@@ -1370,6 +1394,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
422 NM_CONTROLLED=no
423 ONBOOT=yes
424 SLAVE=yes
425+ STARTMODE=auto
426 TYPE=Ethernet
427 USERCTL=no
428 """),
429@@ -1392,6 +1417,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
430 NM_CONTROLLED=no
431 ONBOOT=yes
432 SLAVE=yes
433+ STARTMODE=auto
434 TYPE=Ethernet
435 USERCTL=no
436 """),
437@@ -1429,6 +1455,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
438 HWADDR=aa:bb:cc:dd:e8:00
439 NM_CONTROLLED=no
440 ONBOOT=yes
441+ STARTMODE=auto
442 TYPE=Ethernet
443 USERCTL=no"""),
444 'ifcfg-en0.99': textwrap.dedent("""\
445@@ -1447,6 +1474,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
446 NM_CONTROLLED=no
447 ONBOOT=yes
448 PHYSDEV=en0
449+ STARTMODE=auto
450 TYPE=Ethernet
451 USERCTL=no
452 VLAN=yes"""),
453@@ -1488,6 +1516,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
454 NM_CONTROLLED=no
455 ONBOOT=yes
456 PRIO=22
457+ STARTMODE=auto
458 STP=no
459 TYPE=Bridge
460 USERCTL=no
461@@ -1501,6 +1530,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
462 IPV6INIT=yes
463 NM_CONTROLLED=no
464 ONBOOT=yes
465+ STARTMODE=auto
466 TYPE=Ethernet
467 USERCTL=no
468 """),
469@@ -1513,6 +1543,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
470 IPV6INIT=yes
471 NM_CONTROLLED=no
472 ONBOOT=yes
473+ STARTMODE=auto
474 TYPE=Ethernet
475 USERCTL=no
476 """),
477@@ -1587,6 +1618,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
478 NETMASK=255.255.255.0
479 NM_CONTROLLED=no
480 ONBOOT=no
481+ STARTMODE=manual
482 TYPE=Ethernet
483 USERCTL=no
484 """),
485@@ -1597,6 +1629,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
486 MTU=1480
487 NM_CONTROLLED=no
488 ONBOOT=yes
489+ STARTMODE=auto
490 TYPE=Ethernet
491 USERCTL=no
492 """),
493@@ -1606,6 +1639,7 @@ pre-down route del -net 10.0.0.0 netmask 255.0.0.0 gw 11.0.0.1 metric 3 || true
494 HWADDR=52:54:00:12:34:ff
495 NM_CONTROLLED=no
496 ONBOOT=no
497+ STARTMODE=manual
498 TYPE=Ethernet
499 USERCTL=no
500 """),
501@@ -1973,6 +2007,7 @@ DEVICE=eth1000
502 HWADDR=07-1C-C6-75-A4-BE
503 NM_CONTROLLED=no
504 ONBOOT=yes
505+STARTMODE=auto
506 TYPE=Ethernet
507 USERCTL=no
508 """.lstrip()
509@@ -2094,6 +2129,7 @@ IPADDR=10.0.2.15
510 NETMASK=255.255.255.0
511 NM_CONTROLLED=no
512 ONBOOT=yes
513+STARTMODE=auto
514 TYPE=Ethernet
515 USERCTL=no
516 """
517@@ -2119,6 +2155,7 @@ BOOTPROTO=dhcp
518 DEVICE=eth0
519 NM_CONTROLLED=no
520 ONBOOT=yes
521+STARTMODE=auto
522 TYPE=Ethernet
523 USERCTL=no
524 """
525@@ -2335,6 +2372,7 @@ DEVICE=eth1000
526 HWADDR=07-1C-C6-75-A4-BE
527 NM_CONTROLLED=no
528 ONBOOT=yes
529+STARTMODE=auto
530 TYPE=Ethernet
531 USERCTL=no
532 """.lstrip()
533@@ -2456,6 +2494,7 @@ IPADDR=10.0.2.15
534 NETMASK=255.255.255.0
535 NM_CONTROLLED=no
536 ONBOOT=yes
537+STARTMODE=auto
538 TYPE=Ethernet
539 USERCTL=no
540 """
541@@ -2481,6 +2520,7 @@ BOOTPROTO=dhcp
542 DEVICE=eth0
543 NM_CONTROLLED=no
544 ONBOOT=yes
545+STARTMODE=auto
546 TYPE=Ethernet
547 USERCTL=no
548 """

Subscribers

People subscribed via source and target branches