Commit Graph

6617 Commits

Author SHA1 Message Date
Robert Krátký 9f36439c6d FR-5673: exclude doc/ from CI and Snap checks. 2023-10-11 19:35:07 +02:00
Dan Bungert 8eddf7fc5a
Merge pull request #1834 from dbungert/fix-target-log-dir
shutdown: fix perms on /target/var/log/installer
2023-10-10 16:10:48 -06:00
Dan Bungert 2d7210557b shutdown: fix perms on /target/var/log/installer 2023-10-10 22:56:59 +01:00
Olivier Gayot 7549af4ad0
Merge pull request #1832 from ogayot/variation-bug
Fix crash when switching sources having different variations
2023-10-10 19:17:19 +02:00
Olivier Gayot d4820497e7 filesystem: do not keep the variation info when the source changes
When the source changes, the available variations should change as well.
If we keep the old variations in the
FilesystemController._variations_info dictionary, we end up with a crash
later in the install.

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-10 16:59:59 +02:00
Olivier Gayot 65612edc0b examples: add desktop source with different variations
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-10 16:59:31 +02:00
Dan Bungert f9e2cbfcc1
Merge pull request #1830 from dbungert/log-ctd
log: move /var/log/installer back to 0770 root:adm
2023-10-10 06:52:26 -06:00
Dan Bungert 84bcd5f7c8 log: move /var/log/installer back to 0770 root:adm 2023-10-10 13:25:26 +01:00
Dan Bungert 00011e24f9
Merge pull request #1828 from dbungert/c-n-f
apt: fix source.list mode
2023-10-09 09:18:29 -06:00
Dan Bungert 91e84c70ba apt: fix source.list mode 2023-10-09 14:27:40 +01:00
Dan Bungert c302876bce
Merge pull request #1826 from rkratky/FR-5578_version-numbers
Support for Sphinx substitutions
2023-10-06 09:01:25 -06:00
Robert Krátký f7a00e40f1 FR-5578: Add support for variable substitutions. 2023-10-06 08:55:44 -06:00
Dan Bungert 9621eeca9e
Merge pull request #1827 from rkratky/FR-5513-formatting-language-fixes
Fixes formatting, language and markup in s390x autoinstall
2023-10-06 08:26:04 -06:00
Dan Bungert b1e08b5907
Merge pull request #1822 from rkratky/sphinx-starter
Adopt Docs Starter Pack config
2023-10-06 07:03:43 -06:00
Robert Krátký 7b1f0c1aed Adopt Docs Starter Pack config. 2023-10-06 14:50:56 +02:00
Robert Krátký 1379670437 FR-5513: Fixes formatting, language and markup in s390x autoinstall. 2023-10-06 14:18:09 +02:00
Dan Bungert e388c263b4
Merge pull request #1825 from dbungert/log
Log
2023-10-05 18:58:19 -06:00
Dan Bungert ca8f1ca826 snapcraft: curtin logs change 2023-10-05 18:26:14 -06:00
Dan Bungert c9cfdafe0c log: create /var/log/installer root only 2023-10-05 18:03:32 -06:00
Dan Bungert 1da5cac477 several: turn off aiohttp access log
It will log arguments, so unless we are certain the arguments are clean
this will cause trouble.  Just turn it off.
2023-10-05 18:03:02 -06:00
Dan Bungert 80b144f220 file_util: just make written files root only 2023-10-05 17:22:18 -06:00
Dan Bungert f567f9e1f5 network: disable log line that logs psk 2023-10-05 17:21:07 -06:00
Dan Bungert e55b5bf8aa
Merge pull request #1823 from dbungert/translations-sync-2023-10-05
po: merge from translations-export
2023-10-05 17:01:52 -06:00
Dan Bungert 0201c7756a revert en_GB, it has czech 2023-10-05 15:54:49 -06:00
Dan Bungert 6417720a2e po: merge from translations-export 2023-10-05 11:37:30 -06:00
Dan Bungert d4e9f7d3b8
Merge pull request #1814 from ogayot/noop-no-emit-source-configured
source: do not fire a configured event again if nothing changed
2023-10-04 20:46:13 -06:00
Dan Bungert 2970912b7c
Merge pull request #1820 from dbungert/CVE-2023-5182
install: create autoinstall-user-data 0400
2023-10-04 20:45:49 -06:00
Dan Bungert 62e126896f install: create autoinstall-user-data 0400
CVE-2023-5182

As autoinstall-user-data contains a password hash hash for a user with
sudo access, create the autoinstall-user-data as 0400 root:root.

The old permissions are 0640 root:adm, and the adm group does not by
default have sudo access, so cracking that hash could lead to privilege
escallation for someone in the adm group.

Thanks to Patric Åhlin and Johan Hortling for identifying and reporting
the issue.
2023-10-04 19:32:33 -06:00
Dan Bungert f86a533ed6
Merge pull request #1819 from dbungert/cloud-init-log
Cloud init log
2023-10-04 19:32:08 -06:00
Dan Bungert ab0af6375e shutdown: fix owner on cloud-init logs
These have owner syslog at install time, but that is uid remapped on the
target system which may end up with a different owning user.
2023-10-04 17:56:30 -06:00
Dan Bungert d3debfcea3 shutdown: refactor cloud init logs logic 2023-10-04 17:56:15 -06:00
Dan Bungert a2b63dae13 util: ensure log file is root owned 2023-10-04 14:06:09 -06:00
Dan Bungert 3a319e77d7
Merge pull request #1818 from dbungert/file-writer-enhancement
util: File writer enhancements
2023-10-03 19:16:37 -06:00
Dan Bungert 8ab052c200 util: set_log_perms tests 2023-10-03 19:02:16 -06:00
Dan Bungert 4a4e8ba886 util: explicit isdir arg from set_log_perms
target already exists, we should just inspect target and find if it is a
directory or not.
2023-10-03 18:56:07 -06:00
Dan Bungert ddc11d8687 util: more control on file writer mode and group 2023-10-03 17:09:05 -06:00
Dan Bungert ddc3345eb6 util: standardize on term 'mode' 2023-10-03 17:09:01 -06:00
Dan Bungert 85af88e2d6
Merge pull request #1811 from Chris-Peterson444/lp-2032961-clean-environment-commands
autoinstall: Don't use snap env when invoking early and late commands
2023-10-03 11:20:26 -06:00
Chris Peterson 8f28063b92 tests: remove obsolete commands 2023-10-03 10:09:29 -07:00
Chris Peterson 39f1ea9cb6 autoinstall: Don't use snap env when invoking early and late commands 2023-10-03 10:09:26 -07:00
Olivier Gayot f6da6162e4 source: warn when POST /source specifies an unmatched source id
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-02 17:57:22 +02:00
Olivier Gayot 143d8e359a
Merge pull request #1813 from ogayot/target-not-mounted-error
shutdown: do not try to unmount /target if install was not started
2023-10-02 17:45:19 +02:00
Olivier Gayot d99a348958
Merge pull request #1815 from ogayot/workflows-rename
workflows: differentiate CI and Snap workflows
2023-10-02 17:44:56 +02:00
Olivier Gayot a34bce470f workflows: differentiate CI and Snap workflows
The workflows defined respectively in build.yaml and snap.yaml were
both called "CI". On the Github web interface, it resulted in two menus
called "CI" with no easy way to know which is which.

To make things clearer, we now:
 * rename build.yaml -> ci.yaml
 * call "Snap" the workflow defined by snap.yaml

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-02 14:38:04 +02:00
Olivier Gayot fff2f6591f source: do not fire a configured event again if nothing changed
When handling a POST request to /source, Subiquity sends a 'source
configured' event. This signals other controllers / models that they
need to restart their tasks that depend on the source being used.

However, if the user of the installer goes back all the way to the
source page and submits it again without changing the settings, there
should be no reason to restart the machinery.

If a call to source ends up doing no modification to the model (i.e.,
not changing the source used or the search_drivers setting), we now
avoid emitting the 'source configured' event ; except if the model has
not been configured yet.

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-02 14:12:54 +02:00
Olivier Gayot abef05178c shutdown: do not try to unmount /target if install was not started
If we ask for reboot before the installation has started (i.e., if
curtin install was not invoked at least once), the following call fails
and prevents the system from rebooting.

 $ umount --recursive /target

Make sure we check that /target exists and is mounted before calling
umount.

Another approach would be to check the return value of umount but the
values are not documented.

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-10-02 13:29:53 +02:00
Olivier Gayot bd52c483de
Merge pull request #1812 from ogayot/install-package-skip-offline
codecs: skip installation when running an offline install
2023-10-02 09:13:58 +02:00
Olivier Gayot 01ec1da86f codecs: skip installation when running an offline install
ubuntu-restricted-addons is a multiverse package and is not included in
the pool. Therefore, trying to get it installed when offline leads to an
obvious error.

Instead of making the whole Ubuntu installation fail, we now warn and
skip installation of the package when performing an offline install.
In a perfect world, we should not have offered to install the package in
the first place, but in practice, we can run an offline installation as
the result of failed mirror testing (bad network for instance).

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-09-29 18:20:19 +02:00
Dan Bungert 9bf0a50a24
Merge pull request #1806 from dbungert/lp-2009141-udev-events
filesystem: revamp udev handling
2023-09-27 14:12:08 -06:00
Dan Bungert b11726d398 filesystem: revamp udev handling
In LP: #2009141, we are hitting kernel limits and pyudev buffer limits.
We don't care about specific events, so much as getting one event,
waiting for things to calm down, then reprobing.

Outright disable the event monitor, and re-enable later.  If there is a
storm of events, testing has shown that stopping the listener is not
enough.
2023-09-27 13:43:14 -06:00