diff --git a/CHANGELOG.md b/CHANGELOG.md index c76d19dace7..a7e392b14b3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,5 @@ +- Documented uptodate action in Common Workflows Guide as + background information - Added new backup/restore implementation - Added new SSL certificate usage using podman secrets - Added descriptions about various containers used diff --git a/modules/common-workflows/pages/workflow-clients-update-rec-actions.adoc b/modules/common-workflows/pages/workflow-clients-update-rec-actions.adoc index 8c3c7428a5a..8978097fcb7 100644 --- a/modules/common-workflows/pages/workflow-clients-update-rec-actions.adoc +++ b/modules/common-workflows/pages/workflow-clients-update-rec-actions.adoc @@ -75,6 +75,87 @@ A third step is optional but highly recommended to finalize the update process. . Click btn:[Create Schedule] to save the action. + +[[cw-update-background]] +== Background Information on [literal]``uptodate`` State + + +. The [systemitem]``uptodate`` state applies critical patches to the update components. + ++ + +-- + +.. On {suse}-based systems, the state executes the command: + ++ + +[source,shell] +---- +zypper --non-interactive patch --updatestack-only +---- + ++ + +And then, the state also updates {salt}. + +.. On all the other systems, not based on {suse}, the state only updates {salt}. + +-- + +. The state runs the package manager, such as [command]``dnf``, [command]``yum``, [command]``apt``, or [command]``zypper`` based on what is available on the client operating system to update the rest of the packages. + ++ + +-- + +.. The state lists all of the upgradable packages, based on the synchronized package repositories in {productname}. + +.. The state upgrades the packages to their latest available version by using the client's package manager. + The executed command depends on the operating system of the client: + +... For Debian-based clients, such as Debian or Ubuntu, the action executes [command]``apt dist-upgrade -q -y $PACKAGES``. +... For RPM-based clients that are not SUSE, such as Red Hat Enterprise Linux or SUSE Liberty Linux, the action executes [command]``yum --quiet -y update $PACKAGES`` or [command]``dnf --quiet -y upgrade $PACKAGES`` (depending on the package manager the client is using). +... For non-transactional SUSE clients, such as SUSE Linux Enterprise 15, the action executes [command]``zypper --non-interactive --auto-agree-with-licenses update $PACKAGES``. +... For transactional SUSE clients, the action executes the same in a transactional shell. + +-- + ++ + +// . version 4.3" if SUMULIMA detects that reboot is necessary, for 4.3.x, it will automatically reboot that client. + ++ + +// 5.0 and later + +. {productname} provides the [systemitem]``reboot`` and [systemitem]``rebootifneeded`` actions. +Use one of the actions if you want your client to reboot after the package upgrade. + ++ + +-- + +[systemitem]``rebootifneeded``:: + +Reboot detection is specific to the client operating system. + +* For Debian or Ubuntu, see https://www.debian.org/doc/debian-policy/ch-opersys.html#signaling-that-a-reboot-is-required. + +* For non-transactional {suse} clients, {productname} reboots the client when [command]``zypper -x list-patches`` indicates that the patches require a reboot. + +* For transactional {suse} clients, {productname} reboots the client if there is a pending transaction. + +* For the Red Hat-based clients, {productname} reboots if [command]``dnf -q needs-restarting -r`` indicates that a reboot is required. + +-- + ++ + +For more information, see the [literal]``reboot_info.py`` module: https://github.com/uyuni-project/uyuni/blob/master/susemanager-utils/susemanager-sls/src/modules/reboot_info.py + + + == Related Topics * For more information about recurring actions, see xref:administration:actions.adoc#recurring_actions[Recurring Actions].