forked from canonical/cloud-init
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChangeLog
More file actions
5940 lines (5871 loc) · 310 KB
/
ChangeLog
File metadata and controls
5940 lines (5871 loc) · 310 KB
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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
25.3
- chore(cc_rh_subscription): deprecate hyphenated fields, remove self.log
(#6470) [Mostafa Abdelwahab] (GH: 6370)
- feat(eni): support "ip route" if available instead of "route" (#6460)
[dermotbradley]
- test(distros): Convert test_hosts.py from unittest to pytest (#6481)
[GautamThorani]
- fix: preserve special permission bits (#6467) [deepsghimire]
- test: Convert test_registry.py from unittest to pytest (#6479)
[GautamThorani]
- test: fix integration for PROPOSED to run apt update prior to install
(#6477)
- feat(schema): add support for the not keyword (#6469)
[Mostafa Abdelwahab] (GH: 6468)
- fix: correct netplan renderer target (#6465)
- feat(hetzner): enable hotplug support and prepare IPv6 integration
(#6445) [Philipp Bender]
- fix(net-convert): respect output directory with netplan
- fix(bddeb): require exec permissions on temporary folder
- fix: properly quote commands in `do_as` function (#6400)
[Amirhossein Shaerpour] (GH: 6171)
- Optionalize bash completion. (#6441) [3405691582]
- docs(nocloud): Fix file schema examples (#6455) (GH: 5843)
- fix(systemd): revert auditd.service dependency (#6448)
- fix: bddeb tool needs distro debian param for package dependency lookup
- fix(test): raises match against an empty string will always pass
- fix(test): marks applied to fixtures have no effect
- test: refactor test_reporting.py to use only pytest (#6449)
[Chijioke Ibekwe]
- Update wait_for_cloud_init.rst to be more consistent about systemd usage
(#6442) [ExplGamma]
- fix: add OpenRC support to Meson build (#6426) [dermotbradley]
- feat(rh_subscription): new release_version field (#6347)
[Mostafa Abdelwahab] (GH: 6030)
- chore: bump isort version (#6446)
- net_convert.py: make some import failures not generate an error (#6399)
[dermotbradley]
- test: fix lru_cache test wrapper (#6443) (GH: 5869)
- docs(cc_raspberry_pi): Fix example4 (#6439) [Paul]
- test: refactor test_data.py to use only pytest (#6440) [Chijioke Ibekwe]
- tests: convert util.pathprefix2dict tests from unittest to pytest
(#6433) [Aamir]
- chore: hand off responsibilities (#6432)
- feat: support nmap in socket protocol (#6339) (GH: 6136)
- feat(cc_raspberry_pi): remove remote_gpio interface (#6429) [Paul]
- fix(docs): Fix typo in `fDQn` (#6420) [Vladimir Levin]
- Refresh dev docs for tests (#6428)
- fix(raspberry-pi-os): Update ntp client (#6425) [Paul]
- fixed defs types in cloud-init cmd devel make_mime (#6419) [abdulganiyy]
- test: remove CiTestCase fully (#6416)
- test: drop citestcase from test_reporting_hyperv.py (#6413)
- test: drop citestcase from net/test_init.py (#6410)
- test: drop citestcase from test_version.py (#6415)
- fix: read-dependencies syntax error on regex (#6326)
- doc: add testing links to doc/rtd Development headings (#6326)
- chore: update developer specfile and build for opensuse (#6326)
- chore: update developer specfile redhat/fedora and dependencies (#6326)
- chore: drop yaml validation target, covered in unittests (#6326)
- chore: update debian developer packaging template (#6326)
- fix: add apt-get update before development pkg install (#6326)
- chore!: switch to meson.build due to PEP632 (#6326) (LP: #1978328)
- chore: render vlan, bond, bridge mac properly in network state (#6397)
[Shreenidhi Shedi]
- chore: replace all mailing-list references with GH Discussions
- chore: replace all IRC references with matrix
- fix: fixed defs types in cloud-init analyze show (#6353) [abdulganiyy]
- chore(tox): align check_format's pylint folder targets (#6414)
- test: drop citestcase from net/test_network_state.py (#6402)
- test: drop citestcase from net/test_dhcp.py (#6401)
- chore(ci): bump pylint version, fix test failures (#6408)
- chore(ci): fix cloud-init test failures from new pylint (#6407)
- chore(ci): bump versions for black, ruff, and mypy (#6406)
- doc: change `jammy` to `noble` (#6398) [Amirhossein Shaerpour]
- test: drop citestcase from t* tests (#6379)
- fix: add missing test mock (#6395)
- test: drop citestcase net_freebsd (#6374)
- test: drop citestcase from test_util.py (#6387)
- Add 'to: default' support in network state (#6391) [Shreenidhi Shedi]
- test: drop citestcase from s* tests (#6378)
- test: drop citestcase from r, s and u sources (#6373)
- test: drop citestcase from v sources (#6372)
- test: drop citestcase from n and o sources (#6363)
- fix: make tools/tox-venv with current versions of tox (#6365)
[Scott Moser]
- test: skip gpg dependency test on questing (#6388)
- feat(networkd): add support for rendering bridge devices (#6349)
[Shreenidhi Shedi]
- cloud-init-hotplugd: remove use of "exec" and unnecessary exit (#6357)
[dermotbradley] (GH: 6351)
25.2
- fix: Ensure 822 template renders correctly on Debian (#6381) (GH: 6380)
- test: support systemctl try-reload-or-restart messaging alternatives
(#6377)
- test: increase 2nd disk size for disk setup tests (#6376)
- feat(clean): Add a new clean option to clean fstab entries (#6348)
[Ani Sinha]
- test: handle TMPDIR != "/tmp" (#6356) [Dan Bungert]
- fix: add openeuler hosts template to avoid cloud-init service failures
(#6328) [xqs]
- test: increase timeout on test_clean_package_install (#6362)
- test: relax checks on authorized keys (#6361)
- fix: Correct v2 ENI route and dns rendering (#6331)
- test: drop citestcase from i sources (#6346)
- test: drop citestcase from g and h sources (#6344)
- test: drop citestcase from c and d sources (#6336)
- test: drop citestcase from al* sources tests (#6318)
- disk_setup: Optionally use 'sfdisk' for GPT [Vitaly Kuznetsov] (GH: 5797)
- disk_setup: Fully support full GPT partition GUIDs [Vitaly Kuznetsov]
- fix(ENI): render keys with hyphens (#6333) (GH: 5234)
- fix: fixed defs types in cloudinit analyze dump (#6343) [abdulganiyy]
- feat(networkd): support vlan and bond rendering (#6324)
[Shreenidhi Shedi]
- fix(analyze-boot): use monotonic clock for containers #6322
[Mostafa Abdelwahab] (GH: 5773)
- clean: do not attempt to find datasource when cache has been cleaned
(#6325) [Ani Sinha]
- test: drop citestcase from azure_helper tests (#6335)
- chore: remove unused target arg from Activator.available
- chore: add typing to cloudinit.net.eni
- feat(azure): Implement the clean callback for DataSourceAzure (#6321)
[Amy Chen]
- feat(oracle): set keep_configuration to true for iscsi instances [a-dubs]
- feat(network): add keep_configuration setting to v1 [a-dubs]
- doc: Document how to wait for cloud-init
- doc: Document changed systemd order in 24.4
- fixed defs types in cloudinit analyze (#6308) [abdulganiyy]
- ci: downgrade LXD to fix integration tests (#6340)
- test: drop citestcase from azure source test (#6320)
- fix: catch and log exception during pip upgrade in ansible pull (#6301)
[Mostafa Abdelwahab] (GH: 6074)
- test: drop citestcase from some config tests
- fix: GCE datasource query issue (#3398) (#6279)
[ludovictual-system-u] (GH: 3398)
- test: drop citestcase from distro tests (#6317)
- test: drop citestcase from rest of config tests (#6314)
- ci: update patch checking to use current supported releases (#6315)
- test: drop FilesystemMockingTestCase (#6294) (GH: 5760)
- test: ensure image setup only runs once, even for xdist
- test: turn reaper into a fixture
- test: refactor obtaining session args into new function
- test: simplify passing of lxd_setup callback
- test: drop citestcase from analyze tests (#6312)
- test: drop FilesystemMockingTestCase in netconfig (#6290)
- test: expose tests.unittests.ditros._get_distro (#6290)
- doc: detailed examples of openstack config alternatives for non-x86
images (#6303)
- test: drop FilesystemMockingTestCase in smartos (#6291)
- test: drop some FilesystemMockingTestCases (#6284)
- docs: clarify what #include can include (#6309)
- doc(ssdlc): Add hardening page (#6297)
- docs: Document network device table and limitations (#6187)
[Bryan Fraschetti]
- fix: allow downstreams to strip invalid MTU (#6246) (GH: 6239)
- test: drop FilesystemMockingTestCase from cc tests (#6282)
- docs: use correct jinja content-type (#6296) (GH: 6027)
- test: drop ResponsesTestCase (#6277)
- test: Consolidate use of paths fixture (#6289)
- test: pytestify test_vmware.py (#6288) [Mostafa Abdelwahab]
- feat(ca_certs): Add CentOS support (#6287) [Kees Bakker]
- feat(wsl): Reuse metadata as Landscape installation_request_id (#6200)
[Carlos Nihelton]
- test: drop / pytestify ResourceUsingTestCase (#6276)
- docs(mounts): Correct fs-freq reference to fs_freq (#6262)
[ibrahim-mojalled] (GH: 6210)
- test: pytestify ds_identify tests (#6274)
- test: pytestify t/u/test_log.py (#6275)
- feat(hetzner): integrate private networks metadata (#6224)
[Thomas Boerger]
- test: pytestify cloudinit.s.helpers.netlink tests (#6273)
- Release 25.1.4
- Release 25.1.3
- fix: strict disable in ds-identify on no datasources found (LP: #2069607)
- test: add integration test to install cloud-init from clean state (#6260)
- docs: provide example3 for PAM and ssh_pwauth behavior (#27)
- fix: Make hotplug socket writable only by root (#25)
- fix: Don't attempt to identify non-x86 OpenStack instances (LP: #2069607)
- doc: update discourse release schedule link (#6263)
- doc: update discourse link
- chore: log URL when retrying 503s (#6264)
- test: add option to keep instance on error (#6241)
- eni.py: ensure that a "dns" entry is not rendered in interfaces file
(#6253) [dermotbradley]
- feat(azure): improve handling for reading VM ID (#6199) [Chris Patterson]
- fix: remove unnecessary 'Wants' from cloud-init-main.service (#6255)
- test: use latest version of LXD in integration tests (#6249)
- docs: include missing --seed flags in clean CLI (#6244) [Faizan Alam]
- ec2: Improve metadata retrieval by iterating all interfaces (#6233)
[yukariatlas] (GH: 6232)
- feat: Add Raspberry Pi OS support (#5827) [Paul]
- feat(azure): add interface to dhcp_log_func (#6238) [Chris Patterson]
- fix: fix untyped-defs on tests/unittests and cloudinit/sources (#6230)
[Ritvikj23]
- test: pre-fetch instance id when logging from reaper (#6234)
- feat: Add subnet metric support for netplan (#6222) [Artsiom]
- test: remove FilesystemMockingTestCase from test_cc_apk_configure.py
(#6226)
- fix: make 'cloud-init --all-stages' work interactively (#6211)
- test: remove FilesystemMockingTestCase from test_util.py (#6220)
- test: remove FilesystemMockingTestCase from test_dmi.py (#6219)
- docs: merge "Availability" and "Supported distros" pages (#6217)
[Jacob C. Chin]
- fix: ansible-pull multiple playbooks on older ansible ver < 2.12 (#6218)
- docs: remove monospace formatting from SSH section heading (#6215)
[Chad Dougherty]
- fix: no traceback on command line missing subcommand (#6214)
[Robert Schweikert]
- feat: Change ansible pull module type from dict to list (#6010)
[Amirhossein Shaerpour]
- test(apt): add questing versiong for hello pkg (#6213)
- docs: Use Noble for examples instead of Jammy (#6209) [Aarni Koskela]
- feat(ca_certs): add rocky to rhel distro overrides (#6208)
[Lukas Friedhoff]
- docs: ensure proper 'sudo' representation (#6196) (GH: 6195)
- fix(net): ignore udevadm failures when enumerating nics (#6185)
[Chris Patterson]
- Release 25.1.2 (#6197)
- revert "chore: Deprecate partially supported system config (#5515)"
(LP: #2100232)
- fix: copr builds of CentOS9 require CRB and baseurl in centos.repo
(#6192)
- chore: add fedora package build support for run-container and read-deps
(#6174)
- test: drop fixed xfail tests
- fix: simplify MAAS check logic
- feat(azure): allow unspecified user name (#6177) [Chris Patterson]
- fix: stop reporting error if cloud-init receives signal (#6159)
(GH: 6151)
- Fix: Add Ephemeral Network for CloudStackLocal DS (#6144)
[Bryan Fraschetti] (GH: 6143)
- docs: clarify examples for network addresses/gateway (#6186)
[Dan Bungert]
- fix: setup.py doesn't match AmazonLinux CPE 2.2 releases (#6173)
- fix: ensure MAAS datasource retries on failure (#6167) (LP: #2106671)
- cloud.cfg.tmpl: do not enable cc_reset_rmc for Alpine Linux (#6170)
[dermotbradley]
- tests: ibm avoid schema validation for DataSourceNone on ibm (#6168)
- tests: ibm fix apt and ds-id testing (#6168)
- test: fix integration test on new lxd versions (#6164)
- tests: ibm correct logged message. Invalid schema: vendor-data (#6163)
- tests: ibm expect invalid vendor-data in stderr (#6160)
- tests: ibm expect invalid vendor-data in stderr (#6158)
- tests: fix ibm expected warnings on invalid vendor-data schema (#6157)
- fix: drop udev remove action in hotplug (#6152) [yukariatlas]
- chore: remove reference to refresh_rmc_and_interface module (#6156)
[Ani Sinha]
- chore: reorder iface filters & log on inherited MAC (#6140)
[Wesley Hershberger]
- fix(azure): update ReportableErrorUnhandledException (#6133)
[Ksenija Stanojevic]
- chore: make auditd wait for cloud-init-local.service (#6138)
[Robert Schweikert]
- chore: allow custom pkg-config binary path (#6118)
[Alexandre Burgoni] (GH: 6099)
- fix: rename "reload-or-try-restart" to "try-reload-or-restart" (#6142)
[sxt1001]
- chore: make lint interpreter configurable (#6121) [Robert Schweikert]
- fix: ensure system sshd_config is not overwritten (#6105) [Sludge]
- fix(oracle): properly detect ipv6 only for private ULA addresses (#6123)
[Alec Warren]
- feat(oracle): downgrade warning log about falling back to imds (#6134)
[Alec Warren]
- Release 25.1.1 (#6120)
- chore: remove remaining references to .github-cla-signers (#6116)
- fix(cli): wrong usage output when invalid arg in subcommand (#6115)
[Dillon] (GH: 4609)
- fix(Azure): don't reraise FileNotFoundError during ephemeral setup
(#6113)
- fix(azure): handle unexpected exceptions during obtain_lease() (#6092)
[Ksenija Stanojevic]
- feat: add callback for datasources to clean config changes (#6100)
[Ani Sinha]
- chore: Fix untyped-defs on tests/unittests/config (#6104) [Vlad Apostol]
- chore: switch to has-signed-canonical-cla GH action (#6109)
- Allow to set mac_address for VLAN subinterface (#6081)
[jumpojoy] (GH: 5364)
- change retry sleep for wireserver (#6107) [Ksenija Stanojevic]
- test: pytestify cc_chef tests, add migration test
- chef
- chef: migrate files in old config directories for backups and cache
- fix: correct the path for Chef's backups (#5994)
- test: replace version check with has_netplanlib() (#6106)
- feat(vmware): Support network events (#6063) [Andrew Kutz]
- test: correctly mock fallback nic in openstack tests (#6101)
- fix: Remove erroneous EC2 reference from 503 warning (#6077)
- test: update keys_to_console timeout (#6087)
- test: move to has_netplanlib() in test_networking.py (#6089)
- fix: NM reload and bring up individual network conns (#6073) [Ani Sinha]
- ci(oracle): fix issue installing cloud-init on custom image creation
(#6084) [Alec Warren]
- test: decouple netplan integrations from libnetplan SRU (#6085)
- test: warning on users/groups test is version specific (#6078)
- test: fix errors in custom datasource networking (#6076)
- test: ensure software-properties-common properly removed (#6080)
- test: remove script death check from test_signal_handler.py (#6079)
- test: ensure NoCloud networking works on plucky (#6072)
- fix: stop warning on dual-stack request failure (#6044)
- test: Add integration test for signal handling warnings/errors (#6037)
- feat(azure): format ReportableErrorImdsInvalidMetadata without repr
(#6052) [Ksenija Stanojevic]
- docs: v1.cloud_name section typo (#6070) [Jack Bernhardt]
- fix: install_method: pip cannot find ansible-pull command path (#6021)
[Hasan Aliyev] (GH: 5720)
- fix: Fix DataSourceAliYun exception_cb signature (#6068) (GH: 6066)
- fix: Update OauthUrlHelper to use readurl exception_cb signature
(GH: 6065)
- test: add OauthUrlHelper tests
- test: Remove CiTestCase from test_url_helper.py
- test: pytestify test_url_helper.py
- test: check for correct logrotate config (#6060)
- test: don't fail test if ppa has no uploads (#6059)
- test: make users/groups warning test release aware (#6056)
- fix: when get_session_cloud() fails, _SESSION_CLOUD isn't set (#6051)
- chore: Sort .gitignore
- chore: Add new entries to gitignore and glob more
- fix: track more removed modules (#6043)
25.1.4
- fix: disable cloud-init when non-x86 environments have no DMI-data and
no strict datasources detected (LP: #2069607) (CVE-2024-6174)
25.1.3
- docs: provide example3 for PAM and ssh_pwauth behavior (#27)
- fix: Make hotplug socket writable only by root (#25) (CVE-2024-11584)
- fix: Don't attempt to identify non-x86 OpenStack instances (LP: #2069607)
(CVE-2024-6174)
25.1.2
- fix: ensure MAAS datasource retries on failure (#6167)
25.1.1
- test: pytestify cc_chef tests, add migration test
- chef: migrate files in old config directories for backups and cache
- fix: correct the path for Chef's backups (#5994)
- fix(Azure): don't reraise FileNotFoundError during ephemeral setup (#6113)
- fix(azure): handle unexpected exceptions during obtain_lease() (#6092)
[Ksenija Stanojevic]
- Allow to set mac_address for VLAN subinterface (#6081)
[jumpojoy] (GH: 5364)
- fix: Remove erroneous EC2 reference from 503 warning (#6077)
- fix: NM reload and bring up individual network conns (#6073) [Ani Sinha]
- fix: stop warning on dual-stack request failure (#6044)
- fix: install_method: pip cannot find ansible-pull command path (#6021)
[Hasan Aliyev] (GH: 5720)
- fix: Fix DataSourceAliYun exception_cb signature (#6068) (GH: 6066)
- fix: Update OauthUrlHelper to use readurl exception_cb signature
(GH: 6065)
- test: add OauthUrlHelper tests
- test: Remove CiTestCase from test_url_helper.py
- test: pytestify test_url_helper.py
- fix: track more removed modules (#6043)
25.1
- ci: fix post-merge packaging CI (#6038)
- feat(azure): Fix imds-based ssh_pwauth (#6002) [Ksenija Stanojevic]
- ci: check for sorted patches (#6036)
- feat: aliyun datasource support crawl metadata at once (#5942)
[jinkangkang]
- docs: document /usr merge breaking change (#6032)
- test: Add integration test for /var mounts (#6033)
- test: Ensure pre-24.2 custom modules work (#6034)
- doc: Update references to older keys (#6022) [Pedro Ribeiro]
- fix: untyped-defs in tests/unittests/{config, net, sources} (#6023)
[Romain]
- fix: don't reference PR in post-merged CI (#6019)
- chore: explicitly skip broken ansible integration tests (#5996) [a-dubs]
- tests(oracle): fix test_install_missing_deps apt race condition (#5996)
[a-dubs]
- test(oracle): fix test_ubuntu_drivers_installed (#5996) [a-dubs]
- test(oracle): fix test_frequency_override integration test (#5996)
[a-dubs]
- chore: add type hint to IntegrationCloud's cloud_instance field (#5996)
[a-dubs]
- test(oracle): fix modules/test_lxd.py::test_storage_lvm on noble (#5996)
[a-dubs]
- commit 9e591fff266be9d4c83f74ec02a717b74993304d [a-dubs]
- net/sysconfig: do not remove all existing settings of
/etc/sysconfig/network (#5991) [Ani Sinha] (GH: 5990)
- fix: remove wrong return when checking if network necessary (#6013)
- fix: typing for rsyslog, ubuntu_pro, power_state_change (#5985)
[MostafaTarek124eru]
- fix: Retry on OpenStack HTTP status codes (#5943) [weiyang] (GH: 5687)
- fix: Ensure fqdn is treated as string in get_hostname_fqdn (#5993)
[MKhatibzadeh] (GH: 5989)
- feat(vmware): Convert imc network config to v2 (#5937) [PengpengSun]
- ci: add upstream post-merge test
- ci: check if upstream commit causes ubuntu patch conflicts
- ci: organize cla tests together
- test: eliminate obsolete cases, add non-error case
- chore: remove redundant manual schema validation
- doc: clarify subiquity docs
- chore: cleanup `len' usage (#5956) [Shreenidhi Shedi]
- Fix: GCE _get_data crashes if DHCP lease fails (#5998) [Bryan Fraschetti]
- Fixes GH-5997
- fix: correct the path for Chef's cache (#5994)
[MostafaTarek124eru] (GH: 5090)
- fix: Run ansible with run_user instead of root for distro install_method
(#5986) [Amirhossein Shaerpour] (GH: 4092)
- fix: retry AWS hotplug for async IMDS (#5995) (GH: 5373)
- feat(integration_tests): add optional INSTANCE_TYPE setting (#5988)
[Alec Warren]
- feat(integration-tests): set boto3 and botocore to INFO to prevent
log spamming [a-dubs]
- ci: add 'tox -e integration-tests-fast' command [a-dubs]
- chore: Add feature flag for manual network waiting (#5977)
- Release 24.4.1
- fix: Use /usr/lib/ rather than /lib in packaging code (#5970)
- Use log_with_downgradable_level for user password warnings (#5927)
[Ani Sinha]
- doc: change to hyphenated keys (#5909) (GH: 5555)
- fix: Wait for udev on openstack (#5947) [Robert Schweikert] (GH: 4125)
- test: disambiguate resource cleanup from test failure (#5926)
- fix: use program name of netcat as installed by upstream, "nc" (#5933)
(#5933) [Andreas K. Hüttel]
- ci: bump canonical/setup-lxd to version v0.1.2 (#5948)
- feat(cc_chef): Allow change of Chef configuration file (#5925)
[Sean Smith]
- docs: fix typo in generated file in LXD tutorial (#5941) [Pavel Shpak]
- feat: Identify Samsung Cloud Platform as OpenStack (#5924) [us0310306]
- fix: don't deadlock when starting network service with systemctl (#5935)
- feat: Custom keys for apt archives (#5828) [Bryan Fraschetti] (GH: 5473)
- test: improve test initialization error path (#5920)
- chore: improve logging when lxd detection fails (#5919)
- fix: Add "manual" to allowed subnet types (#5875)
[Math Marchand] (GH: 5769)
- fix: remove bad ssh_svcname setting for Gentoo/OpenRC (#5918)
[Andreas K. Hüttel]
- feat(gentoo): Add compatibility for Gentoo with systemd (#5918)
[Andreas K. Hüttel]
- fix(ovf): no warning should be log when rpctool found no value (#5915)
[PengpengSun] (GH: 5914)
- Move DS VMware to be in front of DS OVF (#5912) [PengpengSun] (GH: 4030)
- ci: Add proper 'Breaks: ' to integration testing simple deb (#5923)
- chore: Add akhuettel to CLA signers file (#5917) [Andreas K. Hüttel]
- chore: eliminate calls at import time (#5889) (GH: 5344)
- test: Add pyserial to test-requirements.txt (#5907)
- test: Allow unknown size in growpart test (#5876)
- doc: Update tutorials [Sally]
- fix: bump azure key size to 3072 (#5841)
24.4.1
- fix: Ensure _should_wait_via_user_data() handles all user data types (#5976)
- fix: Don't log error in wait_for_url (#5972)
- feat(url_helper): Retry on 503 error (#5938)
- fix: Don't break modules that use get_meta_doc() (#5953)
- refactor: Pass deprecation log args as tuple (#5953)
- fix: uninstall custom signal handlers before shutdown (#5913)
24.4
- test: Ensure unit ordering in ftp tests includes downstream units (#5892)
- test: re-decrement expected webhook events (#5894)
- test: allow relative path in apt-get test (#5891)
- Fix metric setting of nmconnection for rhel (#5878) [Amy Chen]
- chore: remove unused code(#5887)
- feat(ephemeral): replace old has_url_connectivity() with new
_check_connectivity_to_imds() [a-dubs]
- feat(oracle): add true single stack ipv6 support [a-dubs]
- feat(ephemeral): refactor ephemeralIP and add ipv6 connectivity check
[a-dubs]
- test: Decrement expected webhook events (#5888)
- chore: remove `--docs` option from `cloud-init schema` (#5857) (GH: 5756)
- test: pytestify "tests/unittests/config/test_cc_timezone.py" (#5885)
[Mahesh Ghumare]
- ci: bump integration tests to use plucky
- test: add grub_dpkg to inactive modules
- test: move default behavior tests into their own module
- test(apt): add plucky version for hello pkg (#5883)
- Docs: improved mermaid diagram for better visibility. Add "MaheshG11"
as contributor (#5874) [Mahesh Ghumare] (GH: 5837)
- fix(ntp): Fix RockyLinux OS support (#5864) [Sid Shukla]
- chore(jsonschema): migrate from deprecated Validator.iter_errors (#5856)
- chore: remove deprecation warning getting jsonschema's version (#5856)
- chore: use filter arg for tar.extractall (#5856)
- chore: remove __init__ from pytest test class (#5856)
- chore: do not test element's truth value directly (#5856)
- chore: migrate from deprecated datetime.datetime.utcfromtimestamp (#5856)
- chore: migrate from deprecated datetime.datetime.utcnow() (#5856)
- chore: set recursive=False for ensure_dir if parent path is "/" (#5816)
[sxt1001]
- ci: fix broken daily dependencies (#5867)
- ci: fix packaging tests (#5865)
- feat(vultr): add override for network interface detection (#5847)
[Andrew Davis]
- feat(networkd): Support RequiredForOnline option (#5852) [Dan McGregor]
- Prevent NM from handling DNS when network interfaces have DNS config
(#5846) [Ani Sinha]
- fix(smartos): Add `addrconf` IPv6 support (#5831)
[blackhelicoptersdotnet]
- freebsd: adjust to match the new pyyaml package name (#5844)
[Gonéri Le Bouder]
- fix: disable grub-dpkg by default (#5840)
- fix(openbsd): Enable sysv init scripts in OpenBSD build script (#5790)
[Hyacinthe Cartiaux] (LP: 4036, #1992853)
- test: Fix duplicate judgment conditions in password generation (#5835)
[sxt1001]
- chore: don't render non-templated unit files (#5830)
- chore: simplify and standardize cloud-final.service (#5830)
- chore: simplify Conflicts=shutdown.target (#5830)
- chore: remove redundant Before=NetworkManager.service (#5830)
- chore: remove unnecessary systemd settings (#5830)
- chore: eliminate redundant ordering dependencies (#5819)
- fix: fix ordering cycle for distros with default deps (#5819) (GH: 5755)
- test: unbreak pytest-xdist (#5829)
- feat: Conditionally remove networkd online dependency on Ubuntu (#5772)
- feat: Ensure random passwords contain multiple character types (#5815)
[sxt1001] (GH: 5814)
- docs: split example page into example library (#5645) [Sally]
- doc: clarify workarounds required for single process changes (#5817)
- chore: add 3.13 to PR CI runs, 3.14 to scheduled (#5825)
- fix: Render v2 bridges correctly on network-manager with set-name
(#5740) (GH: 5717)
- test: add no_thinpool unit test (#5802)
- chore: split lxd init config into separate function (#5802)
- test: pytestify test_cc_lxd.py (#5802)
- fix: Correctly handle missing thinpool in cc_lxd (#5802)
- fix: Render bridges correctly for v2 on sysconfig with set-name (#5674)
(GH: 5574)
- tests(minimal): rsyslog not in minimal images expect warning (#5811)
- tests(lxd): avoid failure on multiple calls to --show-log (#5811)
- chore: update netplan import semantics and related tests (#5805)
(GH: 5804)
- lint: fix untyped-defs on /tests/unittest/cmd (#5800) [iru]
- test: actually use devel release and verify_clean_boot enhancements
(#5801)
- feat(locale): locales install on minimal images when cfg requests (#5799)
- feat(byobu): support byobu install on minimal images when cfg requests
(#5799)
- chore: Use devel release and no sbuild in integration CI (#5798)
- test: Update integration tests from netplan backport (#5796)
- test: add get_syslog_or_console for minimal images without syslog (#5793)
- chore: Remove resize_root_tmp from cloud.cfg.tmpl (#5795) (GH: 5786)
- docs: Fix field name from `contents` to `content` (#5787) [Igor Akkerman]
- chore: bump pycloudlib to required version (#5792)
- fix: avoid deprecation logs for calling cli stages (#5770) (GH: 5726)
- tests: bump pycloudlib deps to include gce bug fix for id str (#5783)
- fix(test): convert use p.gce.instance.id instead of instance_id (#5783)
- fix(network-manager): bond properties and network schema (#5768)
[Denis Kadyshev]
- Fix metric setting for ifcfg network connections for rhel (#5777)
[Ani Sinha] (GH: 5776)
- fix(akamai): handle non-string user data in base64 decoding (#5751)
[Jesse Alter]
- fix(ci): do not auto stale issues (#5775)
- Make pytest more verbose for easier debugging (#5778) [Ani Sinha]
- ci: fix tox.ini pytest cmd to use cloudinit dir for coverage reporting
(#5774) [Alec Warren]
- tests: add OS_IMAGE_TYPE setting to allow for minimal tests (#5682)
- test(hotplug): Simplify test_multi_nic_hotplug (#5763)
- test(hotplug): increase nc timeout (#5763)
- test: pytestify test_main.py (#5758)
- test(ec2-dual-stack): fix int-test (#5762)
- test: make verify_clean_boot really respect return code (#5761)
- test: bump timeout in test_order (#5759)
- docs: Properly document the cc_ubuntu_autoinstall module (#5757)
- docs: fix WSL tutorial (#5752) (GH: 5746)
- test: make verify_clean_boot respect return code by environment (#5754)
- feat(integration_test): add CLOUD_INIT_PKG setting (#5739)
- fix(ci): fix packaging check merge operation (#5750)
- doc: do not document user.meta-data key (#5745)
- test: avoid undocumented lxd key (#5748)
- test: Refactor test_cc_set_hostname.py and test_cc_ntp.py (#5727)
- chore: update docs URLs to cloud-init.io (#5741)
- test: fix timer logging change expected logs (#5734)
- fix: type annotations for several modules (#5733)
- chore: add timer to io and string manipulation code
- feat: add log package and performance module
- remove newline injected for cloud-init status --wait (#5700)
[Andrew Nelson] (GH: 5863)
- test: webhook require_deprecation msg on 24.3 (#5731)
- test: fix test_nocloud message typo introduced by 313390f8 (#5731)
- test: Fix test_log_message_on_missing_version_file (#5730)
- tests: assert info level warnings instead of require_deprecation
- tests: fix test to ignore_warnings not require Used fallback ds
- chore: clean up pytest warnings (#5721)
- tests(pro): bump pycloudlib add noble release to pro tests (#5719)
- fix(hotplugd.socket): remove basic.target as dependency (#5722)
(LP: #2081124)
- ci: fix integration test positional argument (#5718)
- Create datasource for CloudCIX (#1351) [BrianKelleher]
- ci: colorize output (#5716)
- fix(schema): Allow for locale: false in schema add tests (#5647)
- ci: fix packaging patch check (#5713)
- chore: clean up old pickle workaround (#5714)
- fix: force sftp cleanup when done with instance (#5698)
- test(hotplug): reenable vpc test in focal (#5492)
- chore: fix typing of userdata_raw (#5710)
- fix(NetworkManager): Fix network activator (#5620)
- fix: lxd do not check for thinpool kernel module (#5709)
- docs: fix typo in docstring (#5708)
- Scaleway: Force on-link: true for static networks (#5654)
[Louis Bouchard] (LP: 5523, #2073869)
- fix: Invalid "seedfrom" in NoCloud system configuration (#5701)
- tests: pytestify test_nocloud.py (#5701)
- test: make verify_clean_boot respect return code by series (#5695)
- fix: use cross-distro netcat name (#5696)
- ci: fix labeler (#5697)
- chore(actions): add packaging label for any branches modifying debian/*
(#5693)
- test: add verify_clean_boot() calls alongside verify_clean_log() (#5671)
- test: add deprecation support to verify_clean_boot (#5671)
- doc: remove misleading warning (#5681)
- chore: Prefer other methods over $INSTANCE_ID (#5661)
- ci: fix packaging test when no patches (#5680)
- chore: fix tip-ruff and update to latest version (#5676)
- chore: make ansible test serial (#5677)
- feat(ec2): Bump url_max_timeout to 240s from 120s. (#5565)
[Robert Nickel]
- chore: fix typo in requirements.txt (#5637)
- feat: make pyserial an optional dependency (#5637)
- chore: bump ci dependency versions (#5660)
- chore: drop broken optimization (#5666)
24.3.1
- test: add test coverage for iproute2 commands (#5651)
- fix(netops): fix ip addr flush command (#5651) (GH: 5648)
24.3
- docs: Clarify v2 set-name behavior (#5639)
- fix: properly handle blank lines in fstab (#5643)
- fix: cc_user_groups incorrectly assumes "useradd" never locks password
field (#5355) [dermotbradley]
- tests: assert cloud-init user-data cert is the only root cert (#5641)
- feat: add automation for ubuntu/* branches asserting quilt patches apply
(#5622)
- fix(sources/wsl): no error with empty .cloud-init dir (SC-1862) (#5633)
- feat(azure): add PPS support for azure-proxy-agent (#5601)
[Ksenija Stanojevic]
- fix(tests): use instance.clean/restart instead of clean --reboot (#5636)
- test: fix cmd/test_schema int test (#5629)
- test: fix test_honor_cloud_dir int test (#5627)
- docs: alphabetize dsname lookup table. update comment to create the csv
(#5624)
- docs: new datasources should update reference/ds_dsname_map (#5624)
- test: fix ca_certs int test (#5626)
- chore: update schema docs to use RST bold for config key names (#5562)
- fix(doc): italics around deprecation prefix, description bolds key names
(#5562)
- feat(doc): add env vars to debug config module doc builds (#5562)
- fix(doc): doc of nested objects under JSON schema items.oneOf (#5562)
- fix(doc): object type check if patternProperties or properties (#5562)
- doc(schema): schema descriptions should end with trailing stop (#5562)
- fix(wsl): Properly assemble multipart data (#5538) [Carlos Nihelton]
- feat: collect-logs improvements (#5619)
- tests: fix test_ca_certs.py for gcp (#5621)
- fix(nm): Ensure bond property name formatting matches schema definition
(#5383) [Curt Moore]
- Update behavior of base bond interface with NetworkManager (#5385)
[Curt Moore]
- ci: Drop Python 3.6 and 3.7 (#5607)
- chore(black): Bump version (#5607)
- chore(mypy): Fix failures on newer versions of mypy (#5607)
- chore(tox.ini): Simplify configuration, fix minor bugs (#5607)
- chore(mypy): Lint log module (#5607)
- fix(systemd): Correct location of installed drop-in files(#5615)
[Noah Meyerhans]
- fix(btrfs): Version parsing (#5618)
- docs: Remove unnecessary section, add feature flag page (#5617)
- docs: Drop Python 3.6 and 3.7 support (#5617)
- chore: explain other use of oauth (#5616)
- chore(actions): add doc label for any doc related subdir file matches
(#5602)
- doc: Add misc links, improve wording (#5595)
- doc(boot): Make first boot a dedicated page (#5595)
- doc: Describe all stages in a single process (#5595)
- chore: Deprecate old commands in help output (#5595)
- chore: add comment explaining the NetworkManager may-fail setting
(#5598) [Ani Sinha]
- Revert "fix(vmware): Set IPv6 to dhcp when there is no IPv6 addr
(#5471)" (#5596) [PengpengSun]
- fix: read_optional_seed to set network-config when present (#5593)
- feat(snap): avoid refresh on package_upgrade: true and refresh.hold
(#5426)
- fix: Fix tests which have outdated strings (#5585)
- fix: Fix ftp failures (#5585)
- doc: improve integration testing configuration instructions (#5556)
[Alec Warren]
- azure: check azure-proxy-agent status (#5138) [Ksenija Stanojevic]
- refactor: refactor and fix mypy in DataSourceIBMCloud.py (#5509)
[Alec Warren]
- fix: Update default LXD meta-data with user meta-data (#5584)
- chore: Fix log message in url_helper.py (#5583)
- fix: nocloud no fail when network-config absent (#5580)
- feat: Single process optimization (#5489)
- chore: Add helper, refactor utilities into separate module (#5573)
- refactor: update handle function of cc_mounts (#5498)
- fix: Integration tests (#5576)
- fix(NoCloudNet): Add network-config support (#5566)
- feat: Eliminate redundant configuration reads (#5536)
- fix(actions): correct typo in cloudinit/config/schemas/ match (#5570)
- fix: add host template for AOSC (#5557) [Yuanhang Sun]
- chore(debian): Remove vestigial postinst and preinst code (#5569)
- fix(actions): doc labeler needs all clause instead of default any (#5568)
- docs: Overhaul user data formats documentation (#5551)
- chore: Deprecate ENI as an input configuration format (#5561)
- doc: improve drop-in custom modules (#5548)
- doc(NoCloud): Categorize the different configuration types (#5521)
- doc(autoinstall): Remove incorrect statements, be more direct (#5545)
- chore: remove unneeded doc-lint tox env config (#5547)
- fix(doc-spelling): config spelling_word_list_filename (#5547)
- doc(modules): add section to wrap modules' doc (#5550)
- doc: Update docs on boothooks (#5546)
- fix: doc auto label to consider schema json changes as doc PRs (#5543)
- feat(schema): add chef_license schema enum (#5543)
- doc: add diagram with boot stages (#5539)
- docs: improve qemu command line (#5540) [Christian Ehrhardt]
- fix: auto label doc PRs (#5542)
- fix(wsl): Put back the "path" argument to wsl_path in ds-identify
(#5537) [Carlos Nihelton]
- test: fix test_kernel_command_line_match (#5529)
- test: fix no ds cache tests (#5529)
- fix(azurelinux): Change default usr_lib_exec path (#5526) [Minghe Ren]
- feat: Support URI sources in `write_files` module (#5505)
[Lucas Ritzdorf]
- add openeuler to distros in cc_spacewalk.py (#5530) [sxt1001]
- feat(wsl): Special handling Landscape client config tags (#5460)
[Carlos Nihelton]
- chore: Deprecate partially supported system config (#5515)
- chore: Improve detection logging for user clarity (#5515)
- fix(ds-identify): Detect nocloud when seedfrom url exists (#5515)
- refactor: logs.py add typing and small misc refactors (#5414)
- refactor: logs.py pathlib changes (#5414)
- refactor: replace verbosity with log levels in logs.py (#5414)
- feat: Add trace-level logger (#5414)
- chore(formatting): fix squashed commit test formatting (#5524)
- fix: Clean cache if no datasource fallback (#5499)
- Support setting mirrorlist in yum repository config (#5522) [Ani Sinha]
- doc(OFV): Document how to configure cloud-init (#5519)
- fix: Update DNS behavior for NetworkManager interfaces (#5496)
[Curt Moore]
- Fix configuration of DNS servers via OpenStack (#5384) [Curt Moore]
- test: Unconditionally skip test_multi_nic_hotplug_vpc (#5503)
- tests: revert expectation of exit 2 from cloud-init init --local (#5504)
- fix(test): Fix ip printer for non-lxd (#5488)
- feat(systemd): convert warning level message to deprecation (#5209)
- test: allow verify_clean_boot to ignore all or specific tracebacks
(#5209)
- test: Don't fail tests which call cloud-init as a command (#5209)
- feat(systemd): Warn user of unexpected run mode (#5209)
- fix: add schema rules for 'baseurl' and 'metalink' in yum repo config
(#5501) [Ani Sinha]
- Set MTU for bond parent interface (#5495) [Curt Moore]
- refactor: util.mounts to handle errors (#5490)
- refactor: util.get_proc_env to work with strs (#5490)
- typing: fix check_untyped_defs in cloudinit.util (#5490)
- test: Add missing assert to test_status.py (#5494)
- test: Ensure mkcert executable in ftp tests (#5493)
- test: pytestify and cleanup test_cc_mounts.py (#5459)
- fix(vmware): Set IPv6 to dhcp when there is no IPv6 addr (#5471)
[PengpengSun]
- fix(openbsd): fix mtu on newline in hostname files (#5412) [Tobias Urdin]
- feat(aosc): Add 'AOSC OS' support (#5310) [Yuanhang Sun]
24.2
- test: Fix no default user in test_status.py (#5478)
- fix: correct deprecated_version=22.2 for users.sudo
- test: Add jsonschema guard in test_cc_ubuntu_pro.py (#5479)
- fix(test): Fix pycloudlib types in integration tests (#5350)
- fix(test): Fix ip printing for non-lxd instances (#5350)
- chore(mypy): Drop unused missing import exclusions (#5350)
- type: Add stub types for network v1/v2 config (#5350)
- chore: Auto-format network jsonschema in ci (#5350)
- fix(tox): Update tox.ini (#5350)
- chore(typing): Remove type ignores and casts (#5350)
- refactor(typing): Remove unused code paths (#5350)
- fix(typing): Add / update type annotations (#5350)
- fix(typing): Remove type annotation for unused variable (#5350)
- fix(typing): Remove invalid type annotations (#5350)
- ci(mypy): Set default follow_imports value (#5350)
- test: Update integration tests to pass on focal (#5476)
- tests: update ubuntu_pro test to account for info-level deprecations
(#5475)
- tests: update nocloud deprecation test for boundary version (#5474)
- fix(rh_subscription): add string type to org (#5453)
- tests: integration tests aware of features.DEPRECATION_INFO_BOUNDARY
- tests: update keyserver PPA key fur curtin-dev (#5472)
- test: Fix deprecation test failures (#5466)
- chore: fix schema.py formatting (#5465)
- fix: dont double-log deprecated INFOs (#5465)
- fix(test): Mock version boundary (#5464)
- fix(schema): Don't report changed keys as deprecated (#5464)
- test: fix unit test openstack vlan mac_address (#5367)
- fix: Ensure properties for bonded interfaces are properly translated
(#5367) [Curt Moore]
- fix(schema): permit deprecated hyphenated keys under users key (#5456)
- fix: Do not add the vlan_mac_address field into the VLAN object (#5365)
[Curt Moore]
- doc(refactor): Convert module docs to new system (#5427) [Sally]
- test: Add unit tests for features.DEPRECATION_INFO_BOUNDARY (#5411)
- feat: Add deprecation boundary support to schema validator (#5411)
- feat: Add deprecation boundary to logger (#5411)
- fix: Gracefully handle missing files (#5397) [Curt Moore]
- test(openstack): Test bond mac address (#5369)
- fix(openstack): Fix bond mac_address (#5369) [Curt Moore]
- test: Add ds-identify integration test coverage (#5394)
- chore(cmdline): Update comments (#5458)
- fix: Add get_connection_with_tls_context() for requests 2.32.2+ (#5435)
[eaglegai]
- fix(net): klibc ipconfig PROTO compatibility (#5437)
[Alexsander de Souza] (LP: #2065787)
- Support metalink in yum repository config (#5444) [Ani Sinha]
- tests: hard-code curtin-dev ppa instead of canonical-kernel-team (#5450)
- ci: PR update checklist GH- anchors to align w/ later template (#5449)
- test: update validate error message in test_networking (#5436)
- ci: Add PR checklist (#5446)
- chore: fix W0105 in t/u/s/h/test_netlink.py (#5409)
- chore(pyproject.toml): migrate to booleans (#5409)
- typing: add check_untyped_defs (#5409)
- fix(openstack): Append interface / scope_id for IPv6 link-local metadata
address (#5419) [Christian Rohmann]
- test: Update validation error in test_cli.py test (#5430)
- test: Update schema validation error in integration test (#5429)
- test: bump pycloudlib to get azure oracular images (#5428)
- fix(azure): fix discrepancy for monotonic() vs time() (#5420)
[Chris Patterson]
- fix(pytest): Fix broken pytest gdb flag (#5415)
- fix: Use monotonic time (#5423)
- docs: Remove mention of resolv.conf (#5424)
- perf(netplan): Improve network v1 -> network v2 performance (#5391)
- perf(set_passwords): Run module in Network stage (#5395)
- fix(test): Remove temporary directory side effect (#5416)
- Improve schema validator warning messages (#5404) [Ani Sinha]
- feat(sysconfig): Add DNS from interface config to resolv.conf (#5401)
[Ani Sinha]
- typing: add no_implicit_optional lint (#5408)
- doc: update examples to reflect alternative ways to provide `sudo`
option (#5418) [Ani Sinha]
- fix(jsonschema): Add missing sudo definition (#5418)
- chore(doc): migrate cc modules i through r to templates (#5313)
- chore(doc): migrate grub_dpkg to tmpl add changed/deprecation (#5313)
- chore(json): migrate cc_apt_configure and json schema indents (#5313)
- chore(doc): migrate ca_certs/chef to template, flatten schema (#5313)
- chore(doc): migrate cc_byobu to templates (#5313)
- chore(doc): migrate cc_bootcmd to templates (#5313)
- fix(apt): Enable calling apt update multiple times (#5230)
- chore(VMware): Modify section of instance-id in the customization config
(#5356) [PengpengSun]
- fix(treewide): Remove dead code (#5332) [Shreenidhi Shedi]
- doc: network-config v2 ethernets are of type object (#5381) [Malte Poll]
- Release 24.1.7 (#5375)
- fix(azure): url_helper: specify User-Agent when using headers_cb with
readurl() (#5298) [Ksenija Stanojevic]
- fix: Stop attempting to resize ZFS in cc_growpart on Linux (#5370)
- doc: update docs adding YAML 1.1 spec and jinja template references
- fix(final_message): do not warn on datasourcenone when single ds
- fix(growpart): correct growpart log message to include value of mode
- feat(hotplug): disable hotplugd.socket (#5058)
- feat(hotlug): trigger hotplug after cloud-init.service (#5058)
- test: add function to push and enable systemd units (#5058)
- test(util): fix wait_until_cloud_init exit code 2 (#5058)
- test(hotplug): fix race getting ipv6 (#5271)
- docs: Adjust CSS to increase font weight across the docs (#5363) [Sally]
- fix(ec2): Correctly identify netplan renderer (#5361)
- tests: fix expect logging from growpart on devent with partition (#5360)
- test: Add v2 test coverage to test_net.py (#5247)
- refactor: Simplify collect_logs() in logs.py (#5268)
- fix: Ensure no subp from logs.py import (#5268)
- tests: fix integration tests for ubuntu pro 32.3 release (#5351)
- tests: add oracular's hello package for pkg upgrade test (#5354)
- growpart: Fix behaviour for ZFS datasets (#5169) [Mina Galić]
- device_part_info: do not recurse if we did not match anything (#5169)
[Mina Galić]
- feat(alpine): add support for Busybox adduser/addgroup (#5176)
[dermotbradley]
- ci: Move lint tip and py3-dev jobs to daily (#5347)
- fix(netplan): treat netplan warnings on stderr as debug for cloud-init
(#5348)
- feat(disk_setup): Add support for nvme devices (#5263)
- fix(log): Do not warn when doing requested operation (#5263)
- Support sudoers in the "/usr/usr merge" location (#5161)
[Robert Schweikert]
- doc(nocloud): Document network-config file (#5204)
- fix(netplan): Fix predictable interface rename issue (#5339)
- cleanup: Don't execute code on import (#5295)
- fix(net): Make duplicate route add succeed. (#5343)
- fix(freebsd): correct configuration of IPv6 routes (#5291) [Théo Bertin]
- fix(azure): disable use-dns for secondary nics (#5314)
- chore: fix lint failure (#5320)
- Update pylint version to support python 3.12 (#5338) [Ani Sinha]
- fix(tests): use regex to avoid focal whitespace in jinja debug test
(#5335)
- chore: Add docstrings and types to Version class (#5262)
- ci(mypy): add type-jinja2 stubs (#5337)
- tests(alpine): github trust lxc mounted source dir cloud-init-ro (#5329)
- test: Add oracular release to integration tests (#5328)
- Release 24.1.6 (#5326)
- test: Fix failing test_ec2.py test (#5324)
- fix: Check renderer for netplan-specific code (#5321)
- docs: Removal of top-level --file breaking change (#5308)
- fix: typo correction of delaycompress (#5317)
- docs: Renderers/Activators have downstream overrides (#5322)
- fix(ec2): Ensure metadata exists before configuring PBR (#5287)
- fix(lxd): Properly handle unicode from LXD socket (#5309)
- docs: Prefer "artifact" over "artefact" (#5311) [Arthur Le Maitre]
- chore(doc): migrate cc_byobu to templates
- chore(doc): migrate cc_bootcmd to templates
- chore(doc): migrate apt_pipelining and apk_configure to templates
- tests: in_place mount module-docs into lxd vm/container
- feat(docs): generate rtd module schema from rtd/module-docs
- feat: Set RH ssh key permissions when no 'ssh_keys' group (#5296)
[Ani Sinha]
- test: Avoid circular import in Azure tests (#5280)
- test: Fix test_failing_userdata_modules_exit_codes (#5279)
- chore: Remove CPY check from ruff (#5281)
- chore: Clean up docstrings
- chore(ruff): Bump to version 0.4.3
- feat(systemd): Improve AlmaLinux OS and CloudLinux OS support (#5265)
[Elkhan Mammadli]
- feat(ca_certs): Add AlmaLinux OS and CloudLinux OS support (#5264)
[Elkhan Mammadli]
- docs: cc_apt_pipelining docstring typo fix (#5273) [Alex Ratner]
- feat(azure): add request identifier to IMDS requests (#5218)
[Ksenija Stanojevic]
- test: Fix TestFTP integration test (#5237) [d1r3ct0r]
- feat(ifconfig): prepare for CIDR output (#5272) [Mina Galić]
- fix: stop manually dropping dhcp6 key in integration test (#5267)
[Alec Warren]
- test: Remove some CiTestCase tests (#5256)
- fix: Warn when signal is handled (#5186)
- fix(snapd): ubuntu do not snap refresh when snap absent (LP: #2064300)
- feat(landscape-client): handle already registered client (#4784)
[Fabian Lichtenegger-Lukas]
- doc: Show how to debug external services blocking cloud-init (#5255)
- fix(pdb): Enable running cloud-init under pdb (#5217)
- chore: Update systemd description (#5250)
- fix(time): Harden cloud-init to system clock changes
- fix: Update analyze timestamp uptime
- fix(schema): no network validation on netplan systems without API
- fix(mount): Don't run cloud-init.service if cloud-init disabled (#5226)
- fix(ntp): Fix AlmaLinux OS and CloudLinux OS support (#5235)
[Elkhan Mammadli]
- tests: force version of cloud-init from PPA regardless of version (#5251)
- ci: Print isort diff (#5242)
- test: Fix integration test dependencies (#5248)
- fix(ec2): Fix broken uuid match with other-endianness (#5236)
- fix(schema): allow networkv2 schema without top-level key (#5239)
[Cat Red]
- fix(cmd): Do not hardcode reboot command (#5208)
- test: Run Alpine tests without network (#5220)
- docs: Add base config reference from explanation (#5241)
- docs: Remove preview from WSL tutorial (#5225)
- chore: Remove broken maas code (#5219)
- feat(WSL): Add support for Ubuntu Pro configs (#5116) [Ash]
- chore: sync ChangeLog and version.py from 24.1.x (#5228)
- bug(package_update): avoid snap refresh in images without snap command
(LP: #2064132)
- ci: Skip package build on tox runs (#5210)
- chore: Fix test skip message
- test(ec2): adopt pycloudlib public ip creation while launching instances
- test(ec2): add ipv6 testing for multi-nic instances
- test(ec2): adopt pycloudlib enable_ipv6 while launching instances
- feat: tool to print diff between netplan and networkv2 schema (#5200)
[Cat Red]
- test: mock internet access in test_upgrade (#5212)
- ci: Add timezone for alpine unit tests (#5216)
- fix: Ensure dump timestamps parsed as UTC (#5214)
- docs: Add WSL tutorial (#5206)
- feature(schema): add networkv2 schema (#4892) [Cat Red]
- Add alpine unittests to ci (#5121)
- test: Fix invalid openstack datasource name (#4905)
- test: Fix MAAS test and mark xfail (#4905)
- chore(ds-identify): Update shellcheck ignores (#4905)
- fix(ds-identify): Prevent various false positives and false negatives
(#4905)
- Use grep for faster parsing of cloud config in ds-identify (#4905)
[Scott Moser] (LP: #2030729)
- tests: validate netplan API YAML instead of strict content (#5195)
- chore(templates): update ubuntu universe wording (#5199)
- Deprecate the users ssh-authorized-keys property (#5162)
[Anders Björklund]
- doc(nocloud): Describe ftp and ftp over tls implementation (#5193)
- feat(net): provide network config to netplan.State for render (#4981)
- docs: Add breaking datasource identification changes (#5171)
- fix(openbsd): Update build-on-openbsd python dependencies (#5172)
[Hyacinthe Cartiaux]
- fix: Add subnet ipv4/ipv6 to network schema (#5191)
- docs: Add deprecated system_info to schema (#5168)
- docs: Add DataSourceNone documentation (#5165)
- test: Skip test if console log is None (#5188)
- fix(dhcp): Enable interactively running cloud-init init --local (#5166)
- test: Update message for netplan apply dbus issue
- test: install software-properties-common if absent during PPA setup
- test: bump pycloudlib to use latest version
- test: Update version of hello package installed on noble
- test: universally ignore netplan apply dbus issue (#5178)
- chore: Remove obsolete nose workaround
- feat: Add support for FTP and FTP over TLS (#4834)
- feat(opennebula): Add support for posix shell
- test: Make analyze tests not depend on GNU date
- test: Eliminate bash dependency from subp tests
- docs: Add breaking changes section to reference docs (#5147) [Cat Red]
- util: add log_level kwarg for logexc() (#5125) [Chris Patterson]
- refactor: Make device info part of distro definition (#5067)
- refactor: Distro-specific growpart code (#5067)
- test(ec2): fix mocking with responses==0.9.0 (focal) (#5163)
- chore(safeyaml): Remove unicode helper for Python2 (#5142)
- Revert "test: fix upgrade dhcp6 on ec2 (#5131)" (#5148)
- refactor(net): Reuse netops code
- refactor(iproute2): Make expressions multi-line for legibility
- feat(freebsd): support freebsd find part by gptid and ufsid (#5122)
[jinkangkang]