1# Copyright 2021 Northern.tech AS 2 3# This file is part of CFEngine 3 - written and maintained by Northern.tech AS. 4 5# This program is free software; you can redistribute it and/or modify it 6# under the terms of the GNU General Public License as published by the 7# Free Software Foundation; version 3. 8 9# This program is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12# GNU General Public License for more details. 13 14# You should have received a copy of the GNU General Public License 15# along with this program; if not, write to the Free Software 16# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 17 18# To the extent this program is licensed as part of the Enterprise 19# versions of Cfengine, the applicable Commercial Open Source License 20# (COSL) may apply to this file if you as a licensee so wish it. See 21# included file COSL.txt. 22 23# 24# Testing some variable/class definitions - note scope 25# 26# Use browser -f promise_output_agent.html to view 27# 28 29body common control 30 31{ 32 bundlesequence => { "test" }; 33} 34 35########################################################### 36 37bundle agent example 38 39{ 40 vars: 41 42 "hosts" slist => { "slogans.iu.hio.no", "eternity.iu.hio.no", "nexus.iu.hio.no" }; 43 44 # selectservers(hostlist,port,sendstr,regex_on_reply,maxbytesread_reply,array_name 45 46 "up_servers" int => selectservers("@(hosts)","80","","","100","alive_servers"); 47 48 classes: 49 50 "someone_alive" expression => isgreaterthan("$(up_servers)","0"); 51 52 "i_am_a_server" expression => regarray("up_servers","$(host)|$(fqhost)"); 53 54 reports: 55 56 someone_alive:: 57 58 "Number of active servers $(up_servers)" action => always; 59 60 "First server $(alive_servers[0]) fails over to $(alive_servers[1])"; 61 62 63} 64 65############################################################# 66 67body action always 68{ 69 ifelapsed => "0"; 70} 71