Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Lint policy with CFEngine CLI
name: Lint policy and check formatting with CFEngine CLI
on:
workflow_call:
permissions:
Expand All @@ -12,9 +12,12 @@ jobs:
with:
python-version: "3.14"
- name: Checkout masterfiles
uses: actions/checkout@v4
uses: actions/checkout@v7
- name: Install CFEngine CLI
run: pipx install cfengine
- name: Run cfengine lint
run: |
cfengine lint --strict no ./
- name: Run cfengine format --check
run: |
cfengine format --check
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ on:
jobs:
style_check:
uses: ./.github/workflows/style_check.yml
cfengine_lint:
uses: ./.github/workflows/cfengine_lint.yml
cfengine_cli:
uses: ./.github/workflows/cfengine_cli.yml
bootstrap_policy_run_check:
needs: [style_check, cfengine_lint]
needs: [style_check, cfengine_cli]
uses: ./.github/workflows/bootstrap_policy_run_check.yml
tests:
needs: bootstrap_policy_run_check
Expand Down
216 changes: 91 additions & 125 deletions cfe_internal/core/deprecated/cfengine_processes.cf
Original file line number Diff line number Diff line change
Expand Up @@ -4,98 +4,76 @@
# - restart CFE processes by specific time (not in service)
#
##################################################################

bundle agent cfe_internal_processes
{
vars:

"cf_components" slist => {
"cf-key",
"cf-monitord",
"cf-promises",
"cf-runagent",
"cf-serverd",
"cf-hub"
"cf_components"
slist => {
"cf-key",
"cf-monitord",
"cf-promises",
"cf-runagent",
"cf-serverd",
"cf-hub",
},
comment => "Define all cfengine robot agents",
handle => "cfe_internal_processes_vars_cf_components";

windows::

"stop_signal" string => "kill",
comment => "Define a stop signal for Windows",
handle => "cfe_internal_processes_vars_stop_signal_windows";
"stop_signal"
string => "kill",
comment => "Define a stop signal for Windows",
handle => "cfe_internal_processes_vars_stop_signal_windows";

!windows::

"stop_signal" string => "term",
comment => "Define a stop signal for *NIX",
handle => "cfe_internal_processes_vars_stop_signal_unix";

#
"stop_signal"
string => "term",
comment => "Define a stop signal for *NIX",
handle => "cfe_internal_processes_vars_stop_signal_unix";

classes:
# NOTE: We do not restart by default, can be added if desired
# "restart_cf" expression => "Monday.Hr05.Min00_05"
# comment => "Define a class to restart cfengine processes",
# handle => "cfe_internal_processes_classes_restart_cf";

#

# NOTE: We do not restart by default, can be added if desired
# "restart_cf" expression => "Monday.Hr05.Min00_05"
# comment => "Define a class to restart cfengine processes",
# handle => "cfe_internal_processes_classes_restart_cf";
processes:

restart_cf::

"$(cf_components)"

signals => { "$(stop_signal)" },
comment => "Kill cfengine processes",
handle => "cfe_internal_processes_stop_cf_components";
signals => { "$(stop_signal)" },
comment => "Kill cfengine processes",
handle => "cfe_internal_processes_stop_cf_components";

restart_cf.!windows::

"cf-execd"
signals => { "$(stop_signal)" },
comment => "Kill cf-execd process on *NIX",
handle => "cfe_internal_processes_stop_cf_execd";

#
signals => { "$(stop_signal)" },
comment => "Kill cf-execd process on *NIX",
handle => "cfe_internal_processes_stop_cf_execd";

commands:

restart_cf.!windows::

"$(sys.cf_execd)"
comment => "Restart cf-execd process",
classes => kept_successful_command,
handle => "cfe_internal_processes_commands_cf_execd";

#
comment => "Restart cf-execd process",
classes => kept_successful_command,
handle => "cfe_internal_processes_commands_cf_execd";

services:

restart_cf.windows::

"CfengineNovaExec"
service_policy => "stop",
comment => "Stop the executor service, part of scheduled restart",
handle => "cfe_internal_processes_services_stop_cf_execd_windows";
service_policy => "stop",
comment => "Stop the executor service, part of scheduled restart",
handle => "cfe_internal_processes_services_stop_cf_execd_windows";

"CfengineNovaExec"
service_policy => "start",
comment => "Start the executor service, part of scheduled restart",
handle => "cfe_internal_processes_services_start_cf_execd_windows";

#
service_policy => "start",
comment => "Start the executor service, part of scheduled restart",
handle => "cfe_internal_processes_services_start_cf_execd_windows";

reports:

restart_cf::

"Reloaded configuration of all Cfengine components"
comment => "Alert restarting message",
handle => "cfe_internal_processes_reports";

comment => "Alert restarting message",
handle => "cfe_internal_processes_reports";
}

##################################################################
Expand All @@ -104,80 +82,74 @@ bundle agent cfe_internal_processes
# - start CFE agents when booting (not in service)
#
##################################################################

bundle agent cfe_internal_enable
{
vars:

freebsd::

"rc_conf[cfengine_enable]" string => "\"YES\"",
comment => "Define a variable to start cfengine at boot time",
handle => "cfe_internal_enable_vars_rc_conf_freebsd";
"rc_conf[cfengine_enable]"
string => "\"YES\"",
comment => "Define a variable to start cfengine at boot time",
handle => "cfe_internal_enable_vars_rc_conf_freebsd";

netbsd::

"rc_conf[cfengine_enable]" string => "\"YES\"",
comment => "Define a variable to start cfengine at boot time",
handle => "cfe_internal_enable_vars_rc_conf_netbsd";
"rc_conf[cfengine_enable]"
string => "\"YES\"",
comment => "Define a variable to start cfengine at boot time",
handle => "cfe_internal_enable_vars_rc_conf_netbsd";

linux::

"rc_files" slist => {
"/etc/rc1.d/K11cfengine3",
"/etc/rc2.d/S90cfengine3",
"/etc/rc3.d/S90cfengine3",
"/etc/rc4.d/S90cfengine3",
"/etc/rc5.d/S90cfengine3",
"/etc/rc6.d/K11cfengine3"
},
comment => "Define a list of rc files on Linux",
handle => "cfe_internal_enable_vars_rc_files";

#
"rc_files"
slist => {
"/etc/rc1.d/K11cfengine3",
"/etc/rc2.d/S90cfengine3",
"/etc/rc3.d/S90cfengine3",
"/etc/rc4.d/S90cfengine3",
"/etc/rc5.d/S90cfengine3",
"/etc/rc6.d/K11cfengine3",
},
comment => "Define a list of rc files on Linux",
handle => "cfe_internal_enable_vars_rc_files";

files:

freebsd::

"/usr/local/etc/rc.d/cfengine3.sh"
comment => "Ensure that the cfengine rc.d script is executable",
handle => "cfe_internal_enable_files_cfengine3_sh_freebsd",
perms => mog("755", "root", "wheel");
comment => "Ensure that the cfengine rc.d script is executable",
handle => "cfe_internal_enable_files_cfengine3_sh_freebsd",
perms => mog("755", "root", "wheel");

"/etc/rc.conf"
comment => "cfengine libraries should be enabled in rc.conf if appropriate",
handle => "cfe_internal_enable_files_rc_conf_freebsd_1",
edit_line => append_if_no_line("[ -e $(sys.workdir)/lib ] && /sbin/ldconfig -m $(sys.workdir)/lib");
comment => "cfengine libraries should be enabled in rc.conf if appropriate",
handle => "cfe_internal_enable_files_rc_conf_freebsd_1",
edit_line => append_if_no_line(
"[ -e $(sys.workdir)/lib ] && /sbin/ldconfig -m $(sys.workdir)/lib"
);

"/etc/rc.conf"
comment => "cfengine should be enabled in rc.conf",
handle => "cfe_internal_enable_files_rc_conf_freebsd_2",
edit_line => set_variable_values("cfengine_enable.rc_conf");
comment => "cfengine should be enabled in rc.conf",
handle => "cfe_internal_enable_files_rc_conf_freebsd_2",
edit_line => set_variable_values("cfengine_enable.rc_conf");

netbsd::

"/usr/local/etc/rc.d/cfengine3.sh"
comment => "Ensure that the cfengine rc.d script is executable",
handle => "cfe_internal_enable_files_cfengine3_sh_netbsd",
perms => mog("755", "root", "wheel");
comment => "Ensure that the cfengine rc.d script is executable",
handle => "cfe_internal_enable_files_cfengine3_sh_netbsd",
perms => mog("755", "root", "wheel");

"/etc/rc.d/cfengine"
comment => "Move cfengine rc.d script to the correct location",
handle => "cfe_internal_enable_files_rc_d_netbsd",
copy_from => local_cp("/usr/local/etc/rc.d/cfengine3.sh");
comment => "Move cfengine rc.d script to the correct location",
handle => "cfe_internal_enable_files_rc_d_netbsd",
copy_from => local_cp("/usr/local/etc/rc.d/cfengine3.sh");

"/etc/rc.conf"
comment => "cfengine should be enabled in rc.conf",
handle => "cfe_internal_enable_files_rc_conf_netbsd",
edit_line => set_variable_values("cfengine_enable.rc_conf");
comment => "cfengine should be enabled in rc.conf",
handle => "cfe_internal_enable_files_rc_conf_netbsd",
edit_line => set_variable_values("cfengine_enable.rc_conf");

linux::

"$(rc_files)"
comment => "Ensure that startup scripts are properly linked",
handle => "cfe_internal_enable_files_rc_files_linux",
link_from => ln_s("/etc/init.d/cfengine3");
comment => "Ensure that startup scripts are properly linked",
handle => "cfe_internal_enable_files_rc_files_linux",
link_from => ln_s("/etc/init.d/cfengine3");
}

##################################################################
Expand All @@ -187,33 +159,27 @@ bundle agent cfe_internal_enable
# software reports (not in service)
#
##################################################################

bundle agent cfe_internal_build_software_report
{
packages:

redhat::

"wget"
comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_redhat",
package_policy => "add",
package_method => yum;
comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_redhat",
package_policy => "add",
package_method => yum;

debian::

"wget"
comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_debian",
package_policy => "add",
package_method => apt;
comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_debian",
package_policy => "add",
package_method => apt;

(SuSE|suse)::

"wget"
comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_suse",
package_policy => "add",
package_method => zypper;

comment => "Install packages from the list",
handle => "cfe_internal_build_software_report_suse",
package_policy => "add",
package_method => zypper;
}
Loading
Loading