diff options
author | Julien Dessaux | 2017-10-10 13:40:39 +0200 |
---|---|---|
committer | Julien Dessaux | 2017-10-12 15:35:16 +0200 |
commit | 52f0255bf2a4a016584a34e40326f0735ed79a5c (patch) | |
tree | bac011519d470dd97cc4ba53f4ef5488240746ef /failsafe.cf | |
parent | Updated nagios configs with ubuntu servers and docker services (diff) | |
download | masterfiles-52f0255bf2a4a016584a34e40326f0735ed79a5c.tar.gz masterfiles-52f0255bf2a4a016584a34e40326f0735ed79a5c.tar.bz2 masterfiles-52f0255bf2a4a016584a34e40326f0735ed79a5c.zip |
Initialized alpine linux support
Diffstat (limited to 'failsafe.cf')
-rw-r--r-- | failsafe.cf | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/failsafe.cf b/failsafe.cf index daba0fc..a7cacc1 100644 --- a/failsafe.cf +++ b/failsafe.cf @@ -2,13 +2,15 @@ # - Always ensured to run the update bundle. Do not modify. Ever. # Failsafe imports and promises -body agent control { +body agent control +{ any:: abortclasses => { "no_ppkeys_ABORT_kept" }; # Bootstrapping can't continue without keys ifelapsed => "0"; # Make sure that running failsafe many times in a row does not change functionality } -bundle agent main { +bundle agent main +{ methods: any:: "Check Keys" @@ -37,8 +39,11 @@ bundle agent failsafe_checkkeys bundle agent failsafe_copy_binaries { + classes: + any:: + "alpinelinux" expression => fileexists("/etc/alpine-release"); vars: - freebsd:: + alpinelinux|freebsd:: "binaries" slist => { "cf-agent", "cf-execd", @@ -50,6 +55,11 @@ bundle agent failsafe_copy_binaries "cf-upgrade", }; files: + alpinelinux:: + "$(sys.bindir)/$(binaries)" + copy_from => failsafe_cp("/usr/sbin/$(binaries)"), + action => failsafe_u_immediate, + classes => failsafe_results("namespace", "copy_binaries"); freebsd:: "$(sys.bindir)/$(binaries)" copy_from => failsafe_cp("/usr/local/sbin/$(binaries)"), @@ -73,6 +83,11 @@ bundle agent failsafe_update { # produced binaries vs packages from the debian repository). "masterfiles_dir_remote" string => ifelse( "policy_server", $(sys.masterdir), "masterfiles" ); classes: + any:: + "alpinelinux" expression => fileexists("/etc/alpine-release"); + alpinelinux:: + "cf_execd_not_running" expression => returnszero("/usr/bin/pgrep cf-execd", "noshell"); + "cf_serverd_not_running" expression => returnszero("/usr/bin/pgrep cf-serverd", "noshell"); systemd:: "cfengine3_service_running" expression => returnszero("/bin/systemctl status cfengine3", "noshell"); files: @@ -100,9 +115,9 @@ bundle agent failsafe_update { file_select => failsafe_exclude_vcs_files, classes => failsafe_results("namespace", "modulesdir_update"); processes: - !(windows|systemd):: + !(alpinelinux|systemd|windows):: "cf-serverd" restart_class => "cf_serverd_not_running"; - !systemd.inputdir_update_repaired:: + !(alpinelinux|systemd|windows).inputdir_update_repaired:: "cf-execd" restart_class => "cf_execd_not_running"; commands: cf_execd_not_running:: |