From 867e2690969c6a96701476d65fb7ae11b2160952 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20=C5=A0teflov=C3=A1=20Petrov=C3=A1?= Date: Thu, 2 Apr 2026 17:07:01 +0200 Subject: [PATCH 1/8] Split remote execution into multiple assemblies Reorganize remote execution assembly into logical sections Split the remote execution assembly into three focused assemblies to improve navigation and maintainability: - Overview: what REX is, architecture, transport mode comparison - Configuration: setting up hosts, permissions, SSH/Kerberos, templates, running jobs - Reference: advanced settings, cron lines, rate limits Co-Authored-By: Claude Sonnet 4.5 Restructure remote execution into five focused assemblies Replace the previous three-section structure with five assemblies following a progressive learning path: - Discovering remote execution: overview, architecture, transport modes - Getting started with remote execution: installation, permissions, first jobs - Configuring remote execution: SmartProxy settings, authentication, SSH/Kerberos - Extending remote execution: job templates, Ansible playbooks, scheduling - Remote execution reference: advanced settings, cron syntax, performance Use gerund-based naming (discovering, getting started, configuring, extending) for better consistency with documentation conventions. Drop _{context} suffix from assembly IDs for cleaner cross-references. Co-Authored-By: Claude Sonnet 4.5 Fix up assembly introductions Rework remote execution reference --- ...onfiguring-and-setting-up-remote-jobs.adoc | 100 +----------------- ...assembly_configuring-remote-execution.adoc | 63 +++++++++++ .../assembly_customizing-remote-jobs.adoc | 21 ++++ ...getting-started-with-remote-execution.adoc | 19 ++++ .../assembly_remote-execution-overview.adoc | 9 ++ .../con_configuring-remote-execution.adoc | 8 ++ .../modules/con_customizing-remote-jobs.adoc | 8 ++ ...getting-started-with-remote-execution.adoc | 7 ++ .../con_remote-execution-overview.adoc | 8 ++ 9 files changed, 147 insertions(+), 96 deletions(-) create mode 100644 guides/common/assembly_configuring-remote-execution.adoc create mode 100644 guides/common/assembly_customizing-remote-jobs.adoc create mode 100644 guides/common/assembly_getting-started-with-remote-execution.adoc create mode 100644 guides/common/assembly_remote-execution-overview.adoc create mode 100644 guides/common/modules/con_configuring-remote-execution.adoc create mode 100644 guides/common/modules/con_customizing-remote-jobs.adoc create mode 100644 guides/common/modules/con_getting-started-with-remote-execution.adoc create mode 100644 guides/common/modules/con_remote-execution-overview.adoc diff --git a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc index 95f494b3811..903367fcc47 100644 --- a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc +++ b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc @@ -2,104 +2,12 @@ include::modules/con_configuring-and-setting-up-remote-jobs.adoc[] -include::modules/con_remote-execution-in-project.adoc[leveloffset=+1] +include::assembly_remote-execution-overview.adoc[leveloffset=+1] -include::modules/con_remote-execution-workflow.adoc[leveloffset=+1] +include::assembly_getting-started-with-remote-execution.adoc[leveloffset=+1] -include::modules/con_permissions-for-remote-execution.adoc[leveloffset=+1] +include::assembly_configuring-remote-execution.adoc[leveloffset=+1] -include::modules/con_transport-modes-for-remote-execution.adoc[leveloffset=+1] - -ifdef::foreman-el,foreman-deb[] -include::modules/proc_installing-the-remote-execution-plugin.adoc[leveloffset=+1] -endif::[] - -ifdef::katello,orcharhino,satellite[] -include::modules/proc_configuring-a-host-to-use-the-pull-client.adoc[leveloffset=+1] -endif::[] - -include::modules/proc_creating-a-job-template-by-using-web-ui.adoc[leveloffset=+1] - -include::modules/proc_creating-a-job-template-by-using-cli.adoc[leveloffset=+1] - -include::modules/proc_importing-an-ansible-playbook-by-name.adoc[leveloffset=+1] - -include::modules/proc_importing-all-available-ansible-playbooks.adoc[leveloffset=+1] - -include::modules/proc_configuring-the-fallback-to-any-smartproxy-remote-execution-setting-by-using-web-ui.adoc[leveloffset=+1] - -include::modules/proc_configuring-the-fallback-to-any-smartproxy-remote-execution-setting-by-using-cli.adoc[leveloffset=+1] - -include::modules/proc_configuring-the-global-smartproxy-remote-execution-setting-by-using-web-ui.adoc[leveloffset=+1] - -include::modules/proc_configuring-the-global-smartproxy-remote-execution-setting-by-using-cli.adoc[leveloffset=+1] - -include::modules/proc_setting-an-alternative-directory-for-remote-execution-jobs-in-push-mode.adoc[leveloffset=+1] - -ifeval::["{context}" == "managing-hosts"] -include::modules/proc_setting-an-alternative-directory-for-remote-execution-jobs-in-pull-mode.adoc[leveloffset=+1] -endif::[] - -include::modules/proc_altering-the-privilege-elevation-method.adoc[leveloffset=+1] - -include::modules/proc_distributing-ssh-keys-for-remote-execution.adoc[leveloffset=+1] - -include::modules/proc_adding-project-server-ssh-key-to-authorized-keys.adoc[leveloffset=+1] - -include::modules/proc_distributing-ssh-keys-for-remote-execution-manually.adoc[leveloffset=+1] - -include::modules/proc_adding-a-passphrase-to-ssh-key-used-for-remote-execution.adoc[leveloffset=+1] - -include::modules/proc_using-the-api-to-obtain-ssh-keys-for-remote-execution.adoc[leveloffset=+1] - -ifndef::orcharhino,satellite[] -:parent-client-provisioning-template-type: {client-provisioning-template-type} -:client-provisioning-template-type: Agama -include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] -:client-provisioning-template-type: {parent-client-provisioning-template-type} -:!parent-client-provisioning-template-type: -endif::[] - -ifndef::orcharhino[] -:parent-client-provisioning-template-type: {client-provisioning-template-type} -:client-provisioning-template-type: Kickstart -endif::[] -include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] -ifndef::orcharhino[] -:client-provisioning-template-type: {parent-client-provisioning-template-type} -:!parent-client-provisioning-template-type: -endif::[] - -ifndef::orcharhino,satellite[] -:parent-client-provisioning-template-type: {client-provisioning-template-type} -:client-provisioning-template-type: Preseed -include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] -:client-provisioning-template-type: {parent-client-provisioning-template-type} -:!parent-client-provisioning-template-type: -endif::[] - -include::assembly_configuring-smart-proxy-and-hosts-to-authenticate-with-ssh-certificates.adoc[leveloffset=+1] - -include::modules/proc_configuring-a-keytab-for-kerberos-ticket-granting-tickets.adoc[leveloffset=+1] - -include::modules/proc_configuring-kerberos-authentication-for-remote-execution.adoc[leveloffset=+1] - -include::modules/proc_customizing-job-templates.adoc[leveloffset=+1] - -include::modules/proc_executing-a-remote-job-by-using-web-ui.adoc[leveloffset=+1] - -include::modules/proc_executing-a-remote-job-by-using-cli.adoc[leveloffset=+1] +include::assembly_customizing-remote-jobs.adoc[leveloffset=+1] include::modules/ref_advanced-settings-in-the-job-wizard.adoc[leveloffset=+1] - -include::modules/con_using-extended-cron-lines.adoc[leveloffset=+1] - -include::modules/proc_scheduling-a-recurring-ansible-job-for-a-host.adoc[leveloffset=+1] - -include::modules/proc_scheduling-a-recurring-ansible-job-for-a-host-group.adoc[leveloffset=+1] - -ifdef::katello,orcharhino,satellite[] -include::modules/proc_using-ansible-provider-for-package-and-errata-actions.adoc[leveloffset=+1] -endif::[] - -include::modules/proc_setting-the-job-rate-limit-on-smartproxy.adoc[leveloffset=+1] diff --git a/guides/common/assembly_configuring-remote-execution.adoc b/guides/common/assembly_configuring-remote-execution.adoc new file mode 100644 index 00000000000..5b1784e71c0 --- /dev/null +++ b/guides/common/assembly_configuring-remote-execution.adoc @@ -0,0 +1,63 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_configuring-remote-execution.adoc[] + +include::modules/proc_configuring-the-fallback-to-any-smartproxy-remote-execution-setting-by-using-web-ui.adoc[leveloffset=+1] + +include::modules/proc_configuring-the-fallback-to-any-smartproxy-remote-execution-setting-by-using-cli.adoc[leveloffset=+1] + +include::modules/proc_configuring-the-global-smartproxy-remote-execution-setting-by-using-web-ui.adoc[leveloffset=+1] + +include::modules/proc_configuring-the-global-smartproxy-remote-execution-setting-by-using-cli.adoc[leveloffset=+1] + +include::modules/proc_setting-an-alternative-directory-for-remote-execution-jobs-in-push-mode.adoc[leveloffset=+1] + +ifeval::["{context}" == "managing-hosts"] +include::modules/proc_setting-an-alternative-directory-for-remote-execution-jobs-in-pull-mode.adoc[leveloffset=+1] +endif::[] + +include::modules/proc_altering-the-privilege-elevation-method.adoc[leveloffset=+1] + +include::modules/proc_adding-project-server-ssh-key-to-authorized-keys.adoc[leveloffset=+1] + +include::modules/proc_distributing-ssh-keys-for-remote-execution-manually.adoc[leveloffset=+1] + +include::modules/proc_adding-a-passphrase-to-ssh-key-used-for-remote-execution.adoc[leveloffset=+1] + +include::modules/proc_using-the-api-to-obtain-ssh-keys-for-remote-execution.adoc[leveloffset=+1] + +ifndef::orcharhino,satellite[] +:parent-client-provisioning-template-type: {client-provisioning-template-type} +:client-provisioning-template-type: Agama +include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] +:client-provisioning-template-type: {parent-client-provisioning-template-type} +:!parent-client-provisioning-template-type: +endif::[] + +ifndef::orcharhino[] +:parent-client-provisioning-template-type: {client-provisioning-template-type} +:client-provisioning-template-type: Kickstart +endif::[] +include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] +ifndef::orcharhino[] +:client-provisioning-template-type: {parent-client-provisioning-template-type} +:!parent-client-provisioning-template-type: +endif::[] + +ifndef::orcharhino,satellite[] +:parent-client-provisioning-template-type: {client-provisioning-template-type} +:client-provisioning-template-type: Preseed +include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provisioning.adoc[leveloffset=+1] +:client-provisioning-template-type: {parent-client-provisioning-template-type} +:!parent-client-provisioning-template-type: +endif::[] + +include::assembly_configuring-smart-proxy-and-hosts-to-authenticate-with-ssh-certificates.adoc[leveloffset=+1] + +include::modules/proc_configuring-a-keytab-for-kerberos-ticket-granting-tickets.adoc[leveloffset=+1] + +include::modules/proc_configuring-kerberos-authentication-for-remote-execution.adoc[leveloffset=+1] + +include::modules/proc_setting-the-job-rate-limit-on-smartproxy.adoc[leveloffset=+1] + +include::modules/con_using-extended-cron-lines.adoc[leveloffset=+1] diff --git a/guides/common/assembly_customizing-remote-jobs.adoc b/guides/common/assembly_customizing-remote-jobs.adoc new file mode 100644 index 00000000000..8ba8feda30d --- /dev/null +++ b/guides/common/assembly_customizing-remote-jobs.adoc @@ -0,0 +1,21 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_customizing-remote-jobs.adoc[] + +include::modules/proc_creating-a-job-template-by-using-web-ui.adoc[leveloffset=+1] + +include::modules/proc_creating-a-job-template-by-using-cli.adoc[leveloffset=+1] + +include::modules/proc_importing-an-ansible-playbook-by-name.adoc[leveloffset=+1] + +include::modules/proc_importing-all-available-ansible-playbooks.adoc[leveloffset=+1] + +include::modules/proc_customizing-job-templates.adoc[leveloffset=+1] + +include::modules/proc_scheduling-a-recurring-ansible-job-for-a-host.adoc[leveloffset=+1] + +include::modules/proc_scheduling-a-recurring-ansible-job-for-a-host-group.adoc[leveloffset=+1] + +ifdef::katello,orcharhino,satellite[] +include::modules/proc_using-ansible-provider-for-package-and-errata-actions.adoc[leveloffset=+1] +endif::[] diff --git a/guides/common/assembly_getting-started-with-remote-execution.adoc b/guides/common/assembly_getting-started-with-remote-execution.adoc new file mode 100644 index 00000000000..23f9f54da0d --- /dev/null +++ b/guides/common/assembly_getting-started-with-remote-execution.adoc @@ -0,0 +1,19 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_getting-started-with-remote-execution.adoc[leveloffset=+1] + +include::modules/con_permissions-for-remote-execution.adoc[leveloffset=+1] + +ifdef::foreman-el,foreman-deb[] +include::modules/proc_installing-the-remote-execution-plugin.adoc[leveloffset=+1] +endif::[] + +ifdef::katello,orcharhino,satellite[] +include::modules/proc_configuring-a-host-to-use-the-pull-client.adoc[leveloffset=+1] +endif::[] + +include::modules/proc_distributing-ssh-keys-for-remote-execution.adoc[leveloffset=+1] + +include::modules/proc_executing-a-remote-job-by-using-web-ui.adoc[leveloffset=+1] + +include::modules/proc_executing-a-remote-job-by-using-cli.adoc[leveloffset=+1] diff --git a/guides/common/assembly_remote-execution-overview.adoc b/guides/common/assembly_remote-execution-overview.adoc new file mode 100644 index 00000000000..66b7f676895 --- /dev/null +++ b/guides/common/assembly_remote-execution-overview.adoc @@ -0,0 +1,9 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_remote-execution-overview.adoc[] + +include::modules/con_remote-execution-in-project.adoc[leveloffset=+1] + +include::modules/con_remote-execution-workflow.adoc[leveloffset=+1] + +include::modules/con_transport-modes-for-remote-execution.adoc[leveloffset=+1] diff --git a/guides/common/modules/con_configuring-remote-execution.adoc b/guides/common/modules/con_configuring-remote-execution.adoc new file mode 100644 index 00000000000..01a74991eb1 --- /dev/null +++ b/guides/common/modules/con_configuring-remote-execution.adoc @@ -0,0 +1,8 @@ +:_mod-docs-content-type: CONCEPT + +[id="configuring-remote-execution_{context}"] += Configuring remote execution + +[role="_abstract"] +You can configure remote execution in a number of ways to control how remote jobs run on your hosts. +This helps you configure the remote execution process to run in a way that fits your needs. diff --git a/guides/common/modules/con_customizing-remote-jobs.adoc b/guides/common/modules/con_customizing-remote-jobs.adoc new file mode 100644 index 00000000000..03c46aee2ae --- /dev/null +++ b/guides/common/modules/con_customizing-remote-jobs.adoc @@ -0,0 +1,8 @@ +:_mod-docs-content-type: CONCEPT + +[id="customizing-remote-jobs"] += Customizing remote jobs + +[role="_abstract"] +You can customize remote jobs in {Project} to fit your needs. +For example, you can create and customize job templates or you can import Ansible playbooks to use in your remote jobs. diff --git a/guides/common/modules/con_getting-started-with-remote-execution.adoc b/guides/common/modules/con_getting-started-with-remote-execution.adoc new file mode 100644 index 00000000000..5cd63f183e7 --- /dev/null +++ b/guides/common/modules/con_getting-started-with-remote-execution.adoc @@ -0,0 +1,7 @@ +:_mod-docs-content-type: CONCEPT + +[id="getting-started-with-remote-execution"] += Getting started with remote execution + +[role="_abstract"] +To run your first remote job, make sure your user account has the required permissions and your hosts are configured to run the jobs. diff --git a/guides/common/modules/con_remote-execution-overview.adoc b/guides/common/modules/con_remote-execution-overview.adoc new file mode 100644 index 00000000000..75747a31eaa --- /dev/null +++ b/guides/common/modules/con_remote-execution-overview.adoc @@ -0,0 +1,8 @@ +:_mod-docs-content-type: CONCEPT + +[id="remote-execution-overview"] += Remote execution overview + +[role="_abstract"] +Remote execution in {Project} allows you to run commands on hosts from {SmartProxies} by using shell scripts or Ansible roles and playbooks. +Multiple transport modes and job providers are available so that you can pick the one that fits your network. From 0904dbbf429040b318e877e2bd3d057124555913 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 12:08:19 +0200 Subject: [PATCH 2/8] Apply suggestions from style review Co-authored-by: Brian Angelica <91690569+bangelic@users.noreply.github.com> --- .../modules/con_getting-started-with-remote-execution.adoc | 2 +- guides/common/modules/con_remote-execution-overview.adoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/guides/common/modules/con_getting-started-with-remote-execution.adoc b/guides/common/modules/con_getting-started-with-remote-execution.adoc index 5cd63f183e7..a05f1b98d4d 100644 --- a/guides/common/modules/con_getting-started-with-remote-execution.adoc +++ b/guides/common/modules/con_getting-started-with-remote-execution.adoc @@ -4,4 +4,4 @@ = Getting started with remote execution [role="_abstract"] -To run your first remote job, make sure your user account has the required permissions and your hosts are configured to run the jobs. +To run your first remote job, ensure that your user account has the required permissions and your hosts are configured to run remote jobs. diff --git a/guides/common/modules/con_remote-execution-overview.adoc b/guides/common/modules/con_remote-execution-overview.adoc index 75747a31eaa..864df4f6046 100644 --- a/guides/common/modules/con_remote-execution-overview.adoc +++ b/guides/common/modules/con_remote-execution-overview.adoc @@ -4,5 +4,5 @@ = Remote execution overview [role="_abstract"] -Remote execution in {Project} allows you to run commands on hosts from {SmartProxies} by using shell scripts or Ansible roles and playbooks. +With remote execution in {Project}, you can run commands on hosts from {SmartProxies} by using shell scripts or Ansible roles and playbooks. Multiple transport modes and job providers are available so that you can pick the one that fits your network. From cd59a8b87d6c5db499b0e47ed7e36bb52ecbf166 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 12:13:04 +0200 Subject: [PATCH 3/8] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Lena Ansorgová --- .../common/assembly_getting-started-with-remote-execution.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guides/common/assembly_getting-started-with-remote-execution.adoc b/guides/common/assembly_getting-started-with-remote-execution.adoc index 23f9f54da0d..f6d8fd71f04 100644 --- a/guides/common/assembly_getting-started-with-remote-execution.adoc +++ b/guides/common/assembly_getting-started-with-remote-execution.adoc @@ -1,6 +1,6 @@ :_mod-docs-content-type: ASSEMBLY -include::modules/con_getting-started-with-remote-execution.adoc[leveloffset=+1] +include::modules/con_getting-started-with-remote-execution.adoc[] include::modules/con_permissions-for-remote-execution.adoc[leveloffset=+1] From bc7ca7bf6ea5a72fee2d0f54b37308c606a066b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 21:08:40 +0200 Subject: [PATCH 4/8] Apply suggestion from @maximiliankolb Co-authored-by: Maximilian Kolb --- guides/common/modules/con_remote-execution-overview.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guides/common/modules/con_remote-execution-overview.adoc b/guides/common/modules/con_remote-execution-overview.adoc index 864df4f6046..001578d96f3 100644 --- a/guides/common/modules/con_remote-execution-overview.adoc +++ b/guides/common/modules/con_remote-execution-overview.adoc @@ -5,4 +5,4 @@ [role="_abstract"] With remote execution in {Project}, you can run commands on hosts from {SmartProxies} by using shell scripts or Ansible roles and playbooks. -Multiple transport modes and job providers are available so that you can pick the one that fits your network. +Multiple transport modes and job providers are available so that you can pick the one that fits your environment. From 7bde896014452b1d2a05f9d476df99c715c3cc61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20=C5=A0teflov=C3=A1=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 22:03:45 +0200 Subject: [PATCH 5/8] Change cron line syntax module's type --- ...onfiguring-and-setting-up-remote-jobs.adoc | 2 + ...assembly_configuring-remote-execution.adoc | 2 - .../con_using-extended-cron-lines.adoc | 36 ------------------ ...ended-cron-line-syntax-in-remote-jobs.adoc | 37 +++++++++++++++++++ 4 files changed, 39 insertions(+), 38 deletions(-) delete mode 100644 guides/common/modules/con_using-extended-cron-lines.adoc create mode 100644 guides/common/modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc diff --git a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc index 903367fcc47..04f9104242c 100644 --- a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc +++ b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc @@ -11,3 +11,5 @@ include::assembly_configuring-remote-execution.adoc[leveloffset=+1] include::assembly_customizing-remote-jobs.adoc[leveloffset=+1] include::modules/ref_advanced-settings-in-the-job-wizard.adoc[leveloffset=+1] + +include::modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc[leveloffset=+1] diff --git a/guides/common/assembly_configuring-remote-execution.adoc b/guides/common/assembly_configuring-remote-execution.adoc index 5b1784e71c0..810cb6020b9 100644 --- a/guides/common/assembly_configuring-remote-execution.adoc +++ b/guides/common/assembly_configuring-remote-execution.adoc @@ -59,5 +59,3 @@ include::modules/proc_configuring-a-keytab-for-kerberos-ticket-granting-tickets. include::modules/proc_configuring-kerberos-authentication-for-remote-execution.adoc[leveloffset=+1] include::modules/proc_setting-the-job-rate-limit-on-smartproxy.adoc[leveloffset=+1] - -include::modules/con_using-extended-cron-lines.adoc[leveloffset=+1] diff --git a/guides/common/modules/con_using-extended-cron-lines.adoc b/guides/common/modules/con_using-extended-cron-lines.adoc deleted file mode 100644 index 1e14f3f9d29..00000000000 --- a/guides/common/modules/con_using-extended-cron-lines.adoc +++ /dev/null @@ -1,36 +0,0 @@ -:_mod-docs-content-type: CONCEPT - -[id="using-extended-cron-lines_{context}"] -= Using extended cron lines - -[role="_abstract"] -When scheduling a cron job with remote execution, you can use an extended cron line to specify the cadence of the job. - -The standard cron line contains five fields that specify minute, hour, day of the month, month, and day of the week. -For example, `0 5 * * *` stands for every day at 5 AM. -ifdef::foreman-deb,foreman-el,katello[] -If you want to learn more about the standard cron line, check https://crontab.guru[crontab guru]. -endif::[] - -The extended cron line provides the following features: - -You can use `#` to specify a concrete week day in a month:: -For example: -+ -* `0 0 * * mon#1` specifies first Monday of the month -* `0 0 * * fri#3,fri#4` specifies 3rd and 4th Fridays of the month -* `0 7 * * fri#-1` specifies the last Friday of the month at 07:00 -* `0 7 * * fri#L` also specifies the last Friday of the month at 07:00 -* `0 23 * * mon#2,tue` specifies the 2nd Monday of the month and every Tuesday, at 23:00 - -You can use `%` to specify every n-th day of the month:: -For example: -+ -* `9 0 * * sun%2` specifies every other Sunday at 00:09 -* `0 0 * * sun%2+1` specifies every odd Sunday -* `9 0 * * sun%2,tue%3` specifies every other Sunday and every third Tuesday - -You can use `&` to specify that the day of the month has to match the day of the week:: -For example: -+ -* `0 0 30 * 1&` specifies 30th day of the month, but only if it is Monday diff --git a/guides/common/modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc b/guides/common/modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc new file mode 100644 index 00000000000..dba20e2ccad --- /dev/null +++ b/guides/common/modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc @@ -0,0 +1,37 @@ +:_mod-docs-content-type: REFERENCE + +[id="extended-cron-line-syntax-in-remote-jobs_{context}"] += Extended cron line syntax in remote jobs + +[role="_abstract"] +When scheduling a cron job with remote execution, you can use an extended cron line to specify the cadence of the job. +Extended cron syntax adds patterns on top of the standard five-field cron line when you schedule remote execution jobs. + +The standard cron line has five fields: minute, hour, day of the month, month, and day of the week. +For example, `0 5 * * *` means every day at 5 AM. +ifdef::foreman-deb,foreman-el,katello[] +For more information about the standard cron line, see https://crontab.guru[crontab guru]. +endif::[] + +Extended syntax supports the following patterns: + +`#` to specify a concrete weekday in a month:: +For example: ++ +* `0 0 * * mon#1` specifies first Monday of the month +* `0 0 * * fri#3,fri#4` specifies third and fourth Fridays of the month +* `0 7 * * fri#-1` specifies the last Friday of the month at 07:00 +* `0 7 * * fri#L` also specifies the last Friday of the month at 07:00 +* `0 23 * * mon#2,tue` specifies the second Monday of the month and every Tuesday, at 23:00 + +`%` to specify every n-th day of the month:: +For example: ++ +* `9 0 * * sun%2` specifies every other Sunday at 00:09 +* `0 0 * * sun%2+1` specifies every odd Sunday +* `9 0 * * sun%2,tue%3` specifies every other Sunday and every third Tuesday + +`&` to specify that the day of month must match day of week:: +For example: ++ +* `0 0 30 * 1&` specifies the 30th day of the month, but only if it is Monday From 207eff3ebbf971644fbe271604885e845f479e42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20=C5=A0teflov=C3=A1=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 22:22:35 +0200 Subject: [PATCH 6/8] Apply feedback for additional assemblies Separate authentication and advanced config assemblies Create reference assembly for remote execution Co-Authored-By: Claude Sonnet 4.5 --- .../assembly_configuring-and-setting-up-remote-jobs.adoc | 8 +++++--- guides/common/assembly_configuring-remote-execution.adoc | 8 -------- guides/common/assembly_remote-execution-reference.adoc | 7 +++++++ .../assembly_tuning-authentication-and-performance.adoc | 9 +++++++++ .../common/modules/con_remote-execution-reference.adoc | 7 +++++++ .../con_tuning-authentication-and-performance.adoc | 8 ++++++++ 6 files changed, 36 insertions(+), 11 deletions(-) create mode 100644 guides/common/assembly_remote-execution-reference.adoc create mode 100644 guides/common/assembly_tuning-authentication-and-performance.adoc create mode 100644 guides/common/modules/con_remote-execution-reference.adoc create mode 100644 guides/common/modules/con_tuning-authentication-and-performance.adoc diff --git a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc index 04f9104242c..22a6287f5ed 100644 --- a/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc +++ b/guides/common/assembly_configuring-and-setting-up-remote-jobs.adoc @@ -8,8 +8,10 @@ include::assembly_getting-started-with-remote-execution.adoc[leveloffset=+1] include::assembly_configuring-remote-execution.adoc[leveloffset=+1] -include::assembly_customizing-remote-jobs.adoc[leveloffset=+1] +include::assembly_configuring-smart-proxy-and-hosts-to-authenticate-with-ssh-certificates.adoc[leveloffset=+1] + +include::assembly_tuning-authentication-and-performance.adoc[leveloffset=+1] -include::modules/ref_advanced-settings-in-the-job-wizard.adoc[leveloffset=+1] +include::assembly_customizing-remote-jobs.adoc[leveloffset=+1] -include::modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc[leveloffset=+1] +include::assembly_remote-execution-reference.adoc[leveloffset=+1] diff --git a/guides/common/assembly_configuring-remote-execution.adoc b/guides/common/assembly_configuring-remote-execution.adoc index 810cb6020b9..d6089532824 100644 --- a/guides/common/assembly_configuring-remote-execution.adoc +++ b/guides/common/assembly_configuring-remote-execution.adoc @@ -51,11 +51,3 @@ include::modules/proc_configuring-a-template-to-distribute-ssh-keys-during-provi :client-provisioning-template-type: {parent-client-provisioning-template-type} :!parent-client-provisioning-template-type: endif::[] - -include::assembly_configuring-smart-proxy-and-hosts-to-authenticate-with-ssh-certificates.adoc[leveloffset=+1] - -include::modules/proc_configuring-a-keytab-for-kerberos-ticket-granting-tickets.adoc[leveloffset=+1] - -include::modules/proc_configuring-kerberos-authentication-for-remote-execution.adoc[leveloffset=+1] - -include::modules/proc_setting-the-job-rate-limit-on-smartproxy.adoc[leveloffset=+1] diff --git a/guides/common/assembly_remote-execution-reference.adoc b/guides/common/assembly_remote-execution-reference.adoc new file mode 100644 index 00000000000..c450c5a9639 --- /dev/null +++ b/guides/common/assembly_remote-execution-reference.adoc @@ -0,0 +1,7 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_remote-execution-reference.adoc[] + +include::modules/ref_advanced-settings-in-the-job-wizard.adoc[leveloffset=+1] + +include::modules/ref_extended-cron-line-syntax-in-remote-jobs.adoc[leveloffset=+1] diff --git a/guides/common/assembly_tuning-authentication-and-performance.adoc b/guides/common/assembly_tuning-authentication-and-performance.adoc new file mode 100644 index 00000000000..fd93cee18e4 --- /dev/null +++ b/guides/common/assembly_tuning-authentication-and-performance.adoc @@ -0,0 +1,9 @@ +:_mod-docs-content-type: ASSEMBLY + +include::modules/con_tuning-authentication-and-performance.adoc[] + +include::modules/proc_configuring-a-keytab-for-kerberos-ticket-granting-tickets.adoc[leveloffset=+1] + +include::modules/proc_configuring-kerberos-authentication-for-remote-execution.adoc[leveloffset=+1] + +include::modules/proc_setting-the-job-rate-limit-on-smartproxy.adoc[leveloffset=+1] diff --git a/guides/common/modules/con_remote-execution-reference.adoc b/guides/common/modules/con_remote-execution-reference.adoc new file mode 100644 index 00000000000..b9d44059426 --- /dev/null +++ b/guides/common/modules/con_remote-execution-reference.adoc @@ -0,0 +1,7 @@ +:_mod-docs-content-type: CONCEPT + +[id="remote-execution-reference_{context}"] += Remote execution reference + +[role="_abstract"] +Remote execution in {Project} provides advanced configuration options and extended scheduling capabilities for running jobs on hosts. diff --git a/guides/common/modules/con_tuning-authentication-and-performance.adoc b/guides/common/modules/con_tuning-authentication-and-performance.adoc new file mode 100644 index 00000000000..ca3f83bac6c --- /dev/null +++ b/guides/common/modules/con_tuning-authentication-and-performance.adoc @@ -0,0 +1,8 @@ +:_mod-docs-content-type: CONCEPT + +[id="tuning-authentication-and-performance-for-remote-execution_{context}"] += Tuning authentication and performance for remote execution + +[role="_abstract"] +{Project} supports advanced authentication methods and performance tuning for remote execution. +You can configure Kerberos-based authentication and control job execution rates on {SmartProxies}. From 94c6c0eac86fa6a186d7fa59bb2cfd5a121eeffe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20=C5=A0teflov=C3=A1=20Petrov=C3=A1?= Date: Tue, 7 Apr 2026 23:13:29 +0200 Subject: [PATCH 7/8] Fix Vale error --- guides/common/modules/con_configuring-remote-execution.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guides/common/modules/con_configuring-remote-execution.adoc b/guides/common/modules/con_configuring-remote-execution.adoc index 01a74991eb1..c3b6ea20888 100644 --- a/guides/common/modules/con_configuring-remote-execution.adoc +++ b/guides/common/modules/con_configuring-remote-execution.adoc @@ -4,5 +4,5 @@ = Configuring remote execution [role="_abstract"] -You can configure remote execution in a number of ways to control how remote jobs run on your hosts. +You can configure remote execution in several ways to control how remote jobs run on your hosts. This helps you configure the remote execution process to run in a way that fits your needs. From 53e7c867da726a2d6a9ab97ff299d45da8d0a3d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aneta=20Petrov=C3=A1?= Date: Wed, 8 Apr 2026 11:32:31 +0200 Subject: [PATCH 8/8] Apply suggestion from @Lennonka MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Lena Ansorgová --- guides/common/modules/con_remote-execution-overview.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guides/common/modules/con_remote-execution-overview.adoc b/guides/common/modules/con_remote-execution-overview.adoc index 001578d96f3..9910be6267e 100644 --- a/guides/common/modules/con_remote-execution-overview.adoc +++ b/guides/common/modules/con_remote-execution-overview.adoc @@ -4,5 +4,5 @@ = Remote execution overview [role="_abstract"] -With remote execution in {Project}, you can run commands on hosts from {SmartProxies} by using shell scripts or Ansible roles and playbooks. +With remote execution in {Project}, you can run commands on hosts from {SmartProxies} by using shell scripts or Ansible. Multiple transport modes and job providers are available so that you can pick the one that fits your environment.