From af3a6fddcfdffe35e4484f68b49e250bc35138f1 Mon Sep 17 00:00:00 2001 From: Simon Halvorsen Date: Fri, 10 Apr 2026 16:37:31 +0200 Subject: [PATCH] ENT-13814: Added syntax-description and GH Action to update it weekly to replace policy_language.py Adds syntax-description.json Removes old policy_language.py Uses syntax-decription.json to get BUILTINS Signed-off-by: Simon Halvorsen --- .../workflows/update-syntax-description.yml | 69 + pyproject.toml | 3 + src/cfengine_cli/lint.py | 51 +- src/cfengine_cli/policy_language.py | 239 - src/cfengine_cli/syntax-description.json | 10668 ++++++++++++++++ tests/lint/005_bundle_type.expected.txt | 2 +- 6 files changed, 10786 insertions(+), 246 deletions(-) create mode 100644 .github/workflows/update-syntax-description.yml delete mode 100644 src/cfengine_cli/policy_language.py create mode 100644 src/cfengine_cli/syntax-description.json diff --git a/.github/workflows/update-syntax-description.yml b/.github/workflows/update-syntax-description.yml new file mode 100644 index 0000000..3156c5d --- /dev/null +++ b/.github/workflows/update-syntax-description.yml @@ -0,0 +1,69 @@ +name: Update syntax-description + +on: + schedule: + - cron: "0 7 * * 1" # Run every Monday at 7am UTC + # | | | | | + # | | | | day of the week (0-6) (Sunday to Saturday) + # | | | month (1-12) + # | | day of the month (1-31) + # | hour (0-23) + # minute (0-59) + workflow_dispatch: # Enables manual trigger + +jobs: + update_syntax_desc: + name: Update syntax-description + runs-on: ubuntu-24.04 + permissions: + contents: write + pull-requests: write + steps: + - name: Checks-out repository + uses: actions/checkout@v4 + with: + ref: "main" + - name: Set up Python 3.12 + uses: actions/setup-python@v5 + with: + python-version: "3.12" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install cf-remote + - name: Install cfengine + run: | + cf-remote --version master download --edition community ubuntu24 amd64 hub + sudo dpkg -i ~/.cfengine/cf-remote/packages/cfengine-community*.deb + + - name: Extract new syntax-description + run: | + ( + sudo cf-promises --syntax-description json + ) > new.json + echo "" >> new.json + - name: Set Git user + run: | + git config user.name 'github-actions[bot]' + git config user.email 'github-actions[bot]@users.noreply.github.com' + - name: Update contents of syntax-description + run: | + if ! cmp -s new.json ./src/cfengine_cli/syntax-description.json; then + cat new.json > ./src/cfengine_cli/syntax-description.json + echo "CHANGES_DETECTED=true" >> $GITHUB_ENV + rm new.json + fi + - name: Create Pull Request + if: env.CHANGES_DETECTED == 'true' + uses: cfengine/create-pull-request@v6 + with: + title: Updated syntax-description.json + body: Automated update to syntax-description.json [the `update-syntax-description` workflow](https://github.com/cfengine/cfengine-cli/tree/main/.github/workflows/update-syntax-description.yml). + reviewers: | + simonthalvorsen + olehermanse + larsewi + nickanderson + craigcomstock + branch: update-syntax-description + branch-suffix: timestamp diff --git a/pyproject.toml b/pyproject.toml index fa493a8..c846bf6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -40,6 +40,9 @@ cfengine = "cfengine_cli.main:main" [tool.setuptools] license-files = [] # Workaround bug in setuptools https://github.com/astral-sh/uv/issues/9513 +[tool.setuptools.package-data] +cfengine_cli = ["*.json"] # syntax-description.json + [tool.pyright] include = ["src"] venvPath = "." diff --git a/src/cfengine_cli/lint.py b/src/cfengine_cli/lint.py index a23bc0f..d293519 100644 --- a/src/cfengine_cli/lint.py +++ b/src/cfengine_cli/lint.py @@ -37,17 +37,56 @@ from cfbs.validate import validate_config from cfbs.cfbs_config import CFBSConfig from cfbs.utils import find -from cfengine_cli.policy_language import ( - DEPRECATED_PROMISE_TYPES, - ALLOWED_BUNDLE_TYPES, - BUILTIN_PROMISE_TYPES, - BUILTIN_FUNCTIONS, -) from cfengine_cli.utils import UserError LINT_EXTENSIONS = (".cf", ".json") +def _load_syntax_description(path: str | None = None) -> dict: + """Load and return the parsed syntax-description.json file.""" + if path is None: + path = os.path.join(os.path.dirname(__file__), "syntax-description.json") + with open(path, "r") as f: + return json.load(f) + + +def _derive_syntax_sets(data: dict) -> tuple: + """Derive the four sets used for linting from a loaded syntax-description dict. + + Returns: (ALLOWED_BUNDLE_TYPES, BUILTIN_PROMISE_TYPES, BUILTIN_FUNCTIONS, DEPRECATED_PROMISE_TYPES) + """ + builtin_body_types = set(data.get("bodyTypes", {}).keys()) + + allowed_bundle_types = data.get("bundleTypes", {}).keys() + + builtin_promise_types = set(data.get("promiseTypes", {}).keys()) + + builtin_functions = set(data.get("functions", {}).keys()) + + deprecated_promise_types = { + "defaults", + "guest_environments", + } # Has to be hardcoded, not tagged in syntax-description.json + + return ( + builtin_body_types, + allowed_bundle_types, + builtin_promise_types, + builtin_functions, + deprecated_promise_types, + ) + + +_SYNTAX_DATA = _load_syntax_description() +( + _, + ALLOWED_BUNDLE_TYPES, + BUILTIN_PROMISE_TYPES, + BUILTIN_FUNCTIONS, + DEPRECATED_PROMISE_TYPES, +) = _derive_syntax_sets(_SYNTAX_DATA) + + def _qualify(name: str, namespace: str) -> str: """If name is already qualified (contains ':'), return as-is. Otherwise prepend namespace.""" assert '"' not in namespace diff --git a/src/cfengine_cli/policy_language.py b/src/cfengine_cli/policy_language.py deleted file mode 100644 index 2dbb8b9..0000000 --- a/src/cfengine_cli/policy_language.py +++ /dev/null @@ -1,239 +0,0 @@ -# These constants are temporary and may change in the future -# TODO: Find a way to extract these from the generated "syntax-definition"-json file - -DEPRECATED_PROMISE_TYPES = ["defaults", "guest_environments"] -ALLOWED_BUNDLE_TYPES = ["agent", "common", "monitor", "server", "edit_line", "edit_xml"] -BUILTIN_PROMISE_TYPES = { - "access", - "build_xpath", - "classes", - "commands", - "databases", - "defaults", - "delete_attribute", - "delete_lines", - "delete_text", - "delete_tree", - "field_edits", - "files", - "guest_environments", - "insert_lines", - "insert_text", - "insert_tree", - "measurements", - "meta", - "methods", - "packages", - "processes", - "replace_patterns", - "reports", - "roles", - "services", - "set_attribute", - "set_text", - "storage", - "users", - "vars", -} -BUILTIN_FUNCTIONS = { - "accessedbefore", - "accumulated", - "ago", - "and", - "basename", - "bundlesmatching", - "bundlestate", - "callstack_callers", - "callstack_promisers", - "canonify", - "canonifyuniquely", - "cf_version_after", - "cf_version_at", - "cf_version_before", - "cf_version_between", - "cf_version_maximum", - "cf_version_minimum", - "changedbefore", - "classesmatching", - "classfiltercsv", - "classfilterdata", - "classify", - "classmatch", - "concat", - "countclassesmatching", - "countlinesmatching", - "data_expand", - "data_readstringarray", - "data_readstringarrayidx", - "data_regextract", - "data_sysctlvalues", - "datastate", - "difference", - "dirname", - "diskfree", - "escape", - "eval", - "every", - "execresult", - "execresult_as_data", - "expandrange", - "file_hash", - "fileexists", - "filesexist", - "filesize", - "filestat", - "filter", - "findfiles", - "findfiles_up", - "findlocalgroups", - "findlocalusers", - "findprocesses", - "format", - "getacls", - "getbundlemetatags", - "getclassmetatags", - "getenv", - "getfields", - "getgid", - "getgroupinfo", - "getgroups", - "getindices", - "getuid", - "getuserinfo", - "getusers", - "getvalues", - "getvariablemetatags", - "grep", - "groupexists", - "hash", - "hash_to_int", - "hashmatch", - "host2ip", - "hostinnetgroup", - "hostrange", - "hostsseen", - "hostswithclass", - "hostswithgroup", - "hubknowledge", - "ifelse", - "int", - "intersection", - "ip2host", - "iprange", - "irange", - "is_type", - "isconnectable", - "isdir", - "isexecutable", - "isgreaterthan", - "isipinsubnet", - "islessthan", - "islink", - "isnewerthan", - "isnewerthantime", - "isplain", - "isreadable", - "isvariable", - "join", - "lastnode", - "laterthan", - "ldaparray", - "ldaplist", - "ldapvalue", - "length", - "lsdir", - "makerule", - "maparray", - "mapdata", - "maplist", - "max", - "mean", - "mergedata", - "min", - "network_connections", - "none", - "not", - "now", - "nth", - "on", - "or", - "packagesmatching", - "packageupdatesmatching", - "parseintarray", - "parsejson", - "parserealarray", - "parsestringarray", - "parsestringarrayidx", - "parseyaml", - "peerleader", - "peerleaders", - "peers", - "processexists", - "product", - "randomint", - "read_module_protocol", - "readcsv", - "readdata", - "readenvfile", - "readfile", - "readintarray", - "readintlist", - "readjson", - "readrealarray", - "readreallist", - "readstringarray", - "readstringarrayidx", - "readstringlist", - "readtcp", - "readyaml", - "regarray", - "regcmp", - "regex_replace", - "regextract", - "registryvalue", - "regldap", - "regline", - "reglist", - "remoteclassesmatching", - "remotescalar", - "returnszero", - "reverse", - "rrange", - "search_up", - "selectservers", - "shuffle", - "some", - "sort", - "splayclass", - "splitstring", - "storejson", - "strcmp", - "strftime", - "string", - "string_downcase", - "string_head", - "string_length", - "string_mustache", - "string_replace", - "string_reverse", - "string_split", - "string_tail", - "string_trim", - "string_upcase", - "sublist", - "sum", - "sysctlvalue", - "translatepath", - "type", - "unique", - "url_get", - "usemodule", - "userexists", - "useringroup", - "validdata", - "validjson", - "variablesmatching", - "variablesmatching_as_data", - "variance", - "version_compare", -} diff --git a/src/cfengine_cli/syntax-description.json b/src/cfengine_cli/syntax-description.json new file mode 100644 index 0000000..3fbbc16 --- /dev/null +++ b/src/cfengine_cli/syntax-description.json @@ -0,0 +1,10668 @@ +{ + "bodyTypes": { + "acl": { + "attributes": { + "aces": { + "attribute": "aces", + "range": "((user|group):[^:]+:[-=+,rwx()dtTabBpcoD]*(:(allow|deny))?)|((all|mask):[-=+,rwx()]*(:(allow|deny))?)", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "acl_default": { + "attribute": "acl_default", + "range": "nochange,access,specify,clear", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "acl_directory_inherit": { + "attribute": "acl_directory_inherit", + "range": "nochange,parent,specify,clear", + "status": "deprecated", + "type": "option", + "visibility": "body" + }, + "acl_inherit": { + "attribute": "acl_inherit", + "range": "true,false,yes,no,on,off,nochange", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "acl_method": { + "attribute": "acl_method", + "range": "append,overwrite", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "acl_type": { + "attribute": "acl_type", + "range": "generic,posix,ntfs", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "specify_default_aces": { + "attribute": "specify_default_aces", + "range": "((user|group):[^:]+:[-=+,rwx()dtTabBpcoD]*(:(allow|deny))?)|((all|mask):[-=+,rwx()]*(:(allow|deny))?)", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "specify_inherit_aces": { + "attribute": "specify_inherit_aces", + "range": "((user|group):[^:]+:[-=+,rwx()dtTabBpcoD]*(:(allow|deny))?)|((all|mask):[-=+,rwx()]*(:(allow|deny))?)", + "status": "deprecated", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "action": { + "attributes": { + "action_policy": { + "attribute": "action_policy", + "range": "fix,warn,nop", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "audit": { + "attribute": "audit", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "background": { + "attribute": "background", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "expireafter": { + "attribute": "expireafter", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "ifelapsed": { + "attribute": "ifelapsed", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "log_failed": { + "attribute": "log_failed", + "range": "stdout|udp_syslog|(\"?[a-zA-Z]:\\\\.*)|(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "log_kept": { + "attribute": "log_kept", + "range": "stdout|udp_syslog|(\"?[a-zA-Z]:\\\\.*)|(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "log_level": { + "attribute": "log_level", + "range": "inform,verbose,error,log", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "log_priority": { + "attribute": "log_priority", + "range": "emergency,alert,critical,error,warning,notice,info,debug", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "log_repaired": { + "attribute": "log_repaired", + "range": "stdout|udp_syslog|(\"?[a-zA-Z]:\\\\.*)|(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "log_string": { + "attribute": "log_string", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "measurement_class": { + "attribute": "measurement_class", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "report_level": { + "attribute": "report_level", + "range": "inform,verbose,error,log", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "agent": { + "attributes": { + "abortbundleclasses": { + "attribute": "abortbundleclasses", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "abortclasses": { + "attribute": "abortclasses", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "addclasses": { + "attribute": "addclasses", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "agentaccess": { + "attribute": "agentaccess", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "agentfacility": { + "attribute": "agentfacility", + "range": "LOG_USER,LOG_DAEMON,LOG_LOCAL0,LOG_LOCAL1,LOG_LOCAL2,LOG_LOCAL3,LOG_LOCAL4,LOG_LOCAL5,LOG_LOCAL6,LOG_LOCAL7", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "allclassesreport": { + "attribute": "allclassesreport", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "alwaysvalidate": { + "attribute": "alwaysvalidate", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "bindtointerface": { + "attribute": "bindtointerface", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "checksum_alert_time": { + "attribute": "checksum_alert_time", + "range": "0,60", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "childlibpath": { + "attribute": "childlibpath", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "copyfrom_restrict_keys": { + "attribute": "copyfrom_restrict_keys", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "default_directory_create_mode": { + "attribute": "default_directory_create_mode", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "default_repository": { + "attribute": "default_repository", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "default_timeout": { + "attribute": "default_timeout", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "defaultcopytype": { + "attribute": "defaultcopytype", + "range": "mtime,atime,ctime,digest,hash,binary", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "dryrun": { + "attribute": "dryrun", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "editbinaryfilesize": { + "attribute": "editbinaryfilesize", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "editfilesize": { + "attribute": "editfilesize", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "environment": { + "attribute": "environment", + "range": "[A-Za-z0-9_]+=.*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "evaluation_order": { + "attribute": "evaluation_order", + "range": "(classic|top_down)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "expireafter": { + "attribute": "expireafter", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "files_auto_define": { + "attribute": "files_auto_define", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "files_single_copy": { + "attribute": "files_single_copy", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "hashupdates": { + "attribute": "hashupdates", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "hostnamekeys": { + "attribute": "hostnamekeys", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "ifelapsed": { + "attribute": "ifelapsed", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "inform": { + "attribute": "inform", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "intermittency": { + "attribute": "intermittency", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "max_children": { + "attribute": "max_children", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "maxconnections": { + "attribute": "maxconnections", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "mountfilesystems": { + "attribute": "mountfilesystems", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "nonalphanumfiles": { + "attribute": "nonalphanumfiles", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "refresh_processes": { + "attribute": "refresh_processes", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "repchar": { + "attribute": "repchar", + "range": ".", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "report_class_log": { + "attribute": "report_class_log", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "secureinput": { + "attribute": "secureinput", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "select_end_match_eof": { + "attribute": "select_end_match_eof", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "sensiblecount": { + "attribute": "sensiblecount", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "sensiblesize": { + "attribute": "sensiblesize", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "skipidentify": { + "attribute": "skipidentify", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "suspiciousnames": { + "attribute": "suspiciousnames", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "timezone": { + "attribute": "timezone", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "verbose": { + "attribute": "verbose", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "changes": { + "attributes": { + "hash": { + "attribute": "hash", + "range": "md5,sha1,sha224,sha256,sha384,sha512,best", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "report_changes": { + "attribute": "report_changes", + "range": "all,stats,content,none", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "report_diffs": { + "attribute": "report_diffs", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "update_hashes": { + "attribute": "update_hashes", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "classes": { + "attributes": { + "cancel_kept": { + "attribute": "cancel_kept", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "cancel_notkept": { + "attribute": "cancel_notkept", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "cancel_repaired": { + "attribute": "cancel_repaired", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "failed_returncodes": { + "attribute": "failed_returncodes", + "range": "[-0-9_$(){}\\[\\].]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "kept_returncodes": { + "attribute": "kept_returncodes", + "range": "[-0-9_$(){}\\[\\].]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "persist_time": { + "attribute": "persist_time", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "promise_kept": { + "attribute": "promise_kept", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "promise_repaired": { + "attribute": "promise_repaired", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "repair_denied": { + "attribute": "repair_denied", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "repair_failed": { + "attribute": "repair_failed", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "repair_timeout": { + "attribute": "repair_timeout", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "repaired_returncodes": { + "attribute": "repaired_returncodes", + "range": "[-0-9_$(){}\\[\\].]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "scope": { + "attribute": "scope", + "range": "namespace,bundle", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "timer_policy": { + "attribute": "timer_policy", + "range": "absolute,reset", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "common": { + "attributes": { + "bundlesequence": { + "attribute": "bundlesequence", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "bwlimit": { + "attribute": "bwlimit", + "range": "0,99999999999", + "status": "normal", + "type": "real", + "visibility": "body" + }, + "cache_system_functions": { + "attribute": "cache_system_functions", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "domain": { + "attribute": "domain", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "evaluation_order": { + "attribute": "evaluation_order", + "range": "(classic|top_down)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "fips_mode": { + "attribute": "fips_mode", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "goal_patterns": { + "attribute": "goal_patterns", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "ignore_missing_bundles": { + "attribute": "ignore_missing_bundles", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "ignore_missing_inputs": { + "attribute": "ignore_missing_inputs", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inputs": { + "attribute": "inputs", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "lastseenexpireafter": { + "attribute": "lastseenexpireafter", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "output_prefix": { + "attribute": "output_prefix", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_inventory": { + "attribute": "package_inventory", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "package_module": { + "attribute": "package_module", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "protocol_version": { + "attribute": "protocol_version", + "range": "1,classic,2,tls,3,cookie,4,filestream,latest", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "require_comments": { + "attribute": "require_comments", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "site_classes": { + "attribute": "site_classes", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "clist", + "visibility": "body" + }, + "syslog_host": { + "attribute": "syslog_host", + "range": "[a-zA-Z0-9_$(){}.:-]+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "syslog_port": { + "attribute": "syslog_port", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "system_log_level": { + "attribute": "system_log_level", + "range": "(critical|error|warning|notice|info)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "tls_ciphers": { + "attribute": "tls_ciphers", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "tls_min_version": { + "attribute": "tls_min_version", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "version": { + "attribute": "version", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "contain": { + "attributes": { + "chdir": { + "attribute": "chdir", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "chroot": { + "attribute": "chroot", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "exec_group": { + "attribute": "exec_group", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "exec_owner": { + "attribute": "exec_owner", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "exec_timeout": { + "attribute": "exec_timeout", + "range": "1,3600", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "no_output": { + "attribute": "no_output", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "preview": { + "attribute": "preview", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "umask": { + "attribute": "umask", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "useshell": { + "attribute": "useshell", + "range": "noshell,useshell,powershell,true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "copy_from": { + "attributes": { + "check_root": { + "attribute": "check_root", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "collapse_destination_dir": { + "attribute": "collapse_destination_dir", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "compare": { + "attribute": "compare", + "range": "atime,mtime,ctime,digest,hash,exists,binary", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "copy_backup": { + "attribute": "copy_backup", + "range": "true,false,timestamp", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "copy_size": { + "attribute": "copy_size", + "range": "0,inf", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "copylink_patterns": { + "attribute": "copylink_patterns", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "encrypt": { + "attribute": "encrypt", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "findertype": { + "attribute": "findertype", + "range": "MacOSX", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "force_ipv4": { + "attribute": "force_ipv4", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "force_update": { + "attribute": "force_update", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "link_type": { + "attribute": "link_type", + "range": "symlink,hardlink,relative,absolute", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "linkcopy_patterns": { + "attribute": "linkcopy_patterns", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "missing_ok": { + "attribute": "missing_ok", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "portnumber": { + "attribute": "portnumber", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "preserve": { + "attribute": "preserve", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "protocol_version": { + "attribute": "protocol_version", + "range": "1,classic,2,tls,3,cookie,4,filestream,latest", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "purge": { + "attribute": "purge", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "servers": { + "attribute": "servers", + "range": "[A-Za-z0-9_.:\\-\\[\\]]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "source": { + "attribute": "source", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "stealth": { + "attribute": "stealth", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "timeout": { + "attribute": "timeout", + "range": "1,3600", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "trustkey": { + "attribute": "trustkey", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "type_check": { + "attribute": "type_check", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "verify": { + "attribute": "verify", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "database_server": { + "attributes": { + "db_server_connection_db": { + "attribute": "db_server_connection_db", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "db_server_host": { + "attribute": "db_server_host", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "db_server_owner": { + "attribute": "db_server_owner", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "db_server_password": { + "attribute": "db_server_password", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "db_server_type": { + "attribute": "db_server_type", + "range": "postgres,mysql", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "delete": { + "attributes": { + "dirlinks": { + "attribute": "dirlinks", + "range": "delete,tidy,keep", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "rmdirs": { + "attribute": "rmdirs", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "delete_select": { + "attributes": { + "delete_if_contains_from_list": { + "attribute": "delete_if_contains_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "delete_if_match_from_list": { + "attribute": "delete_if_match_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "delete_if_not_contains_from_list": { + "attribute": "delete_if_not_contains_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "delete_if_not_match_from_list": { + "attribute": "delete_if_not_match_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "delete_if_not_startwith_from_list": { + "attribute": "delete_if_not_startwith_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "delete_if_startwith_from_list": { + "attribute": "delete_if_startwith_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "depth_search": { + "attributes": { + "depth": { + "attribute": "depth", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "exclude_dirs": { + "attribute": "exclude_dirs", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "include_basedir": { + "attribute": "include_basedir", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "include_dirs": { + "attribute": "include_dirs", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "rmdeadlinks": { + "attribute": "rmdeadlinks", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "traverse_links": { + "attribute": "traverse_links", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "xdev": { + "attribute": "xdev", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "edit_defaults": { + "attributes": { + "edit_backup": { + "attribute": "edit_backup", + "range": "true,false,timestamp,rotate", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "empty_file_before_editing": { + "attribute": "empty_file_before_editing", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit": { + "attribute": "inherit", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "max_file_size": { + "attribute": "max_file_size", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "recognize_join": { + "attribute": "recognize_join", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "rotate": { + "attribute": "rotate", + "range": "0,99", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "edit_field": { + "attributes": { + "allow_blank_fields": { + "attribute": "allow_blank_fields", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "extend_fields": { + "attribute": "extend_fields", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "field_operation": { + "attribute": "field_operation", + "range": "prepend,append,alphanum,delete,set", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "field_separator": { + "attribute": "field_separator", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "field_value": { + "attribute": "field_value", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "select_field": { + "attribute": "select_field", + "range": "0,99999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "start_fields_from_zero": { + "attribute": "start_fields_from_zero", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "value_separator": { + "attribute": "value_separator", + "range": "^.$", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "environment_interface": { + "attributes": { + "env_addresses": { + "attribute": "env_addresses", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "env_name": { + "attribute": "env_name", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "env_network": { + "attribute": "env_network", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "environment_resources": { + "attributes": { + "env_baseline": { + "attribute": "env_baseline", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "env_cpus": { + "attribute": "env_cpus", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "env_disk": { + "attribute": "env_disk", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "env_memory": { + "attribute": "env_memory", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "env_spec": { + "attribute": "env_spec", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "executor": { + "attributes": { + "agent_expireafter": { + "attribute": "agent_expireafter", + "range": "0,10080", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "exec_command": { + "attribute": "exec_command", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "executorfacility": { + "attribute": "executorfacility", + "range": "LOG_USER,LOG_DAEMON,LOG_LOCAL0,LOG_LOCAL1,LOG_LOCAL2,LOG_LOCAL3,LOG_LOCAL4,LOG_LOCAL5,LOG_LOCAL6,LOG_LOCAL7", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "mailfilter_exclude": { + "attribute": "mailfilter_exclude", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mailfilter_include": { + "attribute": "mailfilter_include", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mailfrom": { + "attribute": "mailfrom", + "range": ".*@.*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "mailmaxlines": { + "attribute": "mailmaxlines", + "range": "0,1000", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "mailsubject": { + "attribute": "mailsubject", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "mailto": { + "attribute": "mailto", + "range": ".*@.*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "runagent_socket_allow_users": { + "attribute": "runagent_socket_allow_users", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "schedule": { + "attribute": "schedule", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "smtpserver": { + "attribute": "smtpserver", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "splaytime": { + "attribute": "splaytime", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "file": { + "attributes": { + "evaluation_order": { + "attribute": "evaluation_order", + "range": "(classic|top_down)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inputs": { + "attribute": "inputs", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "namespace": { + "attribute": "namespace", + "range": "[a-zA-Z_][a-zA-Z0-9_]*", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "file_select": { + "attributes": { + "atime": { + "attribute": "atime", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "ctime": { + "attribute": "ctime", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "exec_program": { + "attribute": "exec_program", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "exec_regex": { + "attribute": "exec_regex", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "file_result": { + "attribute": "file_result", + "range": "[!*(leaf_name|path_name|file_types|mode|size|owner|group|atime|ctime|mtime|issymlinkto|exec_regex|exec_program|bsdflags)[|&.]*]*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "file_types": { + "attribute": "file_types", + "range": "plain,reg,symlink,dir,socket,fifo,door,char,block", + "status": "normal", + "type": "olist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "issymlinkto": { + "attribute": "issymlinkto", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "leaf_name": { + "attribute": "leaf_name", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mtime": { + "attribute": "mtime", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "path_name": { + "attribute": "path_name", + "range": "\"?(/.*)", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "search_bsdflags": { + "attribute": "search_bsdflags", + "range": "[+-]*[(arch|archived|nodump|opaque|sappnd|sappend|schg|schange|simmutable|sunlnk|sunlink|uappnd|uappend|uchg|uchange|uimmutable|uunlnk|uunlink)]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "search_groups": { + "attribute": "search_groups", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "search_mode": { + "attribute": "search_mode", + "range": "[0-7augorwxst,+-=]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "search_owners": { + "attribute": "search_owners", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "search_size": { + "attribute": "search_size", + "range": "0,inf", + "status": "normal", + "type": "irange", + "visibility": "body" + } + }, + "status": "normal" + }, + "fsattrs": { + "attributes": { + "immutable": { + "attribute": "immutable", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "hub": { + "attributes": { + "client_history_timeout": { + "attribute": "client_history_timeout", + "range": "1,65535", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "exclude_hosts": { + "attribute": "exclude_hosts", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "hub_schedule": { + "attribute": "hub_schedule", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "port": { + "attribute": "port", + "range": "1,65535", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "query_timeout": { + "attribute": "query_timeout", + "range": "0,300", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "insert_select": { + "attributes": { + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "insert_if_contains_from_list": { + "attribute": "insert_if_contains_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "insert_if_match_from_list": { + "attribute": "insert_if_match_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "insert_if_not_contains_from_list": { + "attribute": "insert_if_not_contains_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "insert_if_not_match_from_list": { + "attribute": "insert_if_not_match_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "insert_if_not_startwith_from_list": { + "attribute": "insert_if_not_startwith_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "insert_if_startwith_from_list": { + "attribute": "insert_if_startwith_from_list", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "link_from": { + "attributes": { + "copy_patterns": { + "attribute": "copy_patterns", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "link_children": { + "attribute": "link_children", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "link_type": { + "attribute": "link_type", + "range": "symlink,hardlink,relative,absolute", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "source": { + "attribute": "source", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "when_linking_children": { + "attribute": "when_linking_children", + "range": "override_file,if_no_such_file", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "when_no_source": { + "attribute": "when_no_source", + "range": "force,delete,nop", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "location": { + "attributes": { + "before_after": { + "attribute": "before_after", + "range": "before,after", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "first_last": { + "attribute": "first_last", + "range": "first,last", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "select_line_matching": { + "attribute": "select_line_matching", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "match_value": { + "attributes": { + "extraction_regex": { + "attribute": "extraction_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "select_line_matching": { + "attribute": "select_line_matching", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "select_line_number": { + "attribute": "select_line_number", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "select_multiline_policy": { + "attribute": "select_multiline_policy", + "range": "average,sum,first,last", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "track_growing_file": { + "attribute": "track_growing_file", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "monitor": { + "attributes": { + "forgetrate": { + "attribute": "forgetrate", + "range": "0,1", + "status": "normal", + "type": "real", + "visibility": "body" + }, + "histograms": { + "attribute": "histograms", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "monitorfacility": { + "attribute": "monitorfacility", + "range": "LOG_USER,LOG_DAEMON,LOG_LOCAL0,LOG_LOCAL1,LOG_LOCAL2,LOG_LOCAL3,LOG_LOCAL4,LOG_LOCAL5,LOG_LOCAL6,LOG_LOCAL7", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "tcpdump": { + "attribute": "tcpdump", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "tcpdumpcommand": { + "attribute": "tcpdumpcommand", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "mount": { + "attributes": { + "edit_fstab": { + "attribute": "edit_fstab", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mount_options": { + "attribute": "mount_options", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mount_server": { + "attribute": "mount_server", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "mount_source": { + "attribute": "mount_source", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "mount_type": { + "attribute": "mount_type", + "range": "nfs,nfs2,nfs3,nfs4,panfs,cifs", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "unmount": { + "attribute": "unmount", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "package_method": { + "attributes": { + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "package_add_command": { + "attribute": "package_add_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_arch_regex": { + "attribute": "package_arch_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_changes": { + "attribute": "package_changes", + "range": "individual,bulk", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "package_commands_useshell": { + "attribute": "package_commands_useshell", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "package_default_arch_command": { + "attribute": "package_default_arch_command", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_delete_command": { + "attribute": "package_delete_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_delete_convention": { + "attribute": "package_delete_convention", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_file_repositories": { + "attribute": "package_file_repositories", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "package_installed_regex": { + "attribute": "package_installed_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_list_arch_regex": { + "attribute": "package_list_arch_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_list_command": { + "attribute": "package_list_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_list_name_regex": { + "attribute": "package_list_name_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_list_update_command": { + "attribute": "package_list_update_command", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_list_update_ifelapsed": { + "attribute": "package_list_update_ifelapsed", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "package_list_version_regex": { + "attribute": "package_list_version_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_multiline_start": { + "attribute": "package_multiline_start", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_name_convention": { + "attribute": "package_name_convention", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_name_regex": { + "attribute": "package_name_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_noverify_regex": { + "attribute": "package_noverify_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_noverify_returncode": { + "attribute": "package_noverify_returncode", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "package_patch_arch_regex": { + "attribute": "package_patch_arch_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_patch_command": { + "attribute": "package_patch_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_patch_installed_regex": { + "attribute": "package_patch_installed_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_patch_list_command": { + "attribute": "package_patch_list_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_patch_name_regex": { + "attribute": "package_patch_name_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_patch_version_regex": { + "attribute": "package_patch_version_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_update_command": { + "attribute": "package_update_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_verify_command": { + "attribute": "package_verify_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_version_equal_command": { + "attribute": "package_version_equal_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_version_less_command": { + "attribute": "package_version_less_command", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "package_version_regex": { + "attribute": "package_version_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "package_module": { + "attributes": { + "default_options": { + "attribute": "default_options", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "interpreter": { + "attribute": "interpreter", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "module_path": { + "attribute": "module_path", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "query_installed_ifelapsed": { + "attribute": "query_installed_ifelapsed", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "query_updates_ifelapsed": { + "attribute": "query_updates_ifelapsed", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "password": { + "attributes": { + "data": { + "attribute": "data", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "format": { + "attribute": "format", + "range": "plaintext,hash", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "perms": { + "attributes": { + "bsdflags": { + "attribute": "bsdflags", + "range": "[+-]*[(arch|archived|nodump|opaque|sappnd|sappend|schg|schange|simmutable|sunlnk|sunlink|uappnd|uappend|uchg|uchange|uimmutable|uunlnk|uunlink)]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "groups": { + "attribute": "groups", + "range": "[a-zA-Z0-9_$.-]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "mode": { + "attribute": "mode", + "range": "[0-7augorwxst,+-=]+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "owners": { + "attribute": "owners", + "range": "[a-zA-Z0-9_$.-]+", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "rxdirs": { + "attribute": "rxdirs", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "printfile": { + "attributes": { + "file_to_print": { + "attribute": "file_to_print", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "number_of_lines": { + "attribute": "number_of_lines", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "process_count": { + "attributes": { + "in_range_define": { + "attribute": "in_range_define", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "match_range": { + "attribute": "match_range", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "out_of_range_define": { + "attribute": "out_of_range_define", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "process_select": { + "attributes": { + "command": { + "attribute": "command", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "pgid": { + "attribute": "pgid", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "pid": { + "attribute": "pid", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "ppid": { + "attribute": "ppid", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "priority": { + "attribute": "priority", + "range": "-20,+20", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "process_owner": { + "attribute": "process_owner", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "process_result": { + "attribute": "process_result", + "range": "[(process_owner|pid|ppid||pgid|rsize|vsize|status|command|ttime|stime|tty|priority|threads)[|&!.]*]*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "rsize": { + "attribute": "rsize", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "status": { + "attribute": "status", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "stime_range": { + "attribute": "stime_range", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "threads": { + "attribute": "threads", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "ttime_range": { + "attribute": "ttime_range", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + }, + "tty": { + "attribute": "tty", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "vsize": { + "attribute": "vsize", + "range": "0,99999999999", + "status": "normal", + "type": "irange", + "visibility": "body" + } + }, + "status": "normal" + }, + "rename": { + "attributes": { + "disable": { + "attribute": "disable", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "disable_mode": { + "attribute": "disable_mode", + "range": "[0-7augorwxst,+-=]+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "disable_suffix": { + "attribute": "disable_suffix", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "newname": { + "attribute": "newname", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "rotate": { + "attribute": "rotate", + "range": "0,99", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + }, + "replace_with": { + "attributes": { + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "occurrences": { + "attribute": "occurrences", + "range": "all,first", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "replace_value": { + "attribute": "replace_value", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "report_data_select": { + "attributes": { + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "metatags_exclude": { + "attribute": "metatags_exclude", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "metatags_include": { + "attribute": "metatags_include", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "monitoring_exclude": { + "attribute": "monitoring_exclude", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "monitoring_include": { + "attribute": "monitoring_include", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "promise_handle_exclude": { + "attribute": "promise_handle_exclude", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "promise_handle_include": { + "attribute": "promise_handle_include", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "runagent": { + "attributes": { + "background_children": { + "attribute": "background_children", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "encrypt": { + "attribute": "encrypt", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "force_ipv4": { + "attribute": "force_ipv4", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "hosts": { + "attribute": "hosts", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "max_children": { + "attribute": "max_children", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "output_directory": { + "attribute": "output_directory", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "output_to_file": { + "attribute": "output_to_file", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "port": { + "attribute": "port", + "range": "1,65535", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "timeout": { + "attribute": "timeout", + "range": "1,9999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "trustkey": { + "attribute": "trustkey", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "select_region": { + "attributes": { + "include_end_delimiter": { + "attribute": "include_end_delimiter", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "include_start_delimiter": { + "attribute": "include_start_delimiter", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "select_end": { + "attribute": "select_end", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "select_end_match_eof": { + "attribute": "select_end_match_eof", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "select_start": { + "attribute": "select_start", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "body" + } + }, + "status": "normal" + }, + "server": { + "attributes": { + "allowallconnects": { + "attribute": "allowallconnects", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "allowciphers": { + "attribute": "allowciphers", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "allowconnects": { + "attribute": "allowconnects", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "allowlegacyconnects": { + "attribute": "allowlegacyconnects", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "allowtlsversion": { + "attribute": "allowtlsversion", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "allowusers": { + "attribute": "allowusers", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "auditing": { + "attribute": "auditing", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "bindtointerface": { + "attribute": "bindtointerface", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "call_collect_interval": { + "attribute": "call_collect_interval", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "cfruncommand": { + "attribute": "cfruncommand", + "range": ".+", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "collect_window": { + "attribute": "collect_window", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "denybadclocks": { + "attribute": "denybadclocks", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "denyconnects": { + "attribute": "denyconnects", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "dynamicaddresses": { + "attribute": "dynamicaddresses", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "hostnamekeys": { + "attribute": "hostnamekeys", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "listen": { + "attribute": "listen", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "logallconnections": { + "attribute": "logallconnections", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "logencryptedtransfers": { + "attribute": "logencryptedtransfers", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "maxconnections": { + "attribute": "maxconnections", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "port": { + "attribute": "port", + "range": "1,65535", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "serverfacility": { + "attribute": "serverfacility", + "range": "LOG_USER,LOG_DAEMON,LOG_LOCAL0,LOG_LOCAL1,LOG_LOCAL2,LOG_LOCAL3,LOG_LOCAL4,LOG_LOCAL5,LOG_LOCAL6,LOG_LOCAL7", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "skipverify": { + "attribute": "skipverify", + "range": "", + "status": "deprecated", + "type": "slist", + "visibility": "body" + }, + "trustkeysfrom": { + "attribute": "trustkeysfrom", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + } + }, + "status": "normal" + }, + "service_method": { + "attributes": { + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "service_args": { + "attribute": "service_args", + "range": "", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "service_autostart_policy": { + "attribute": "service_autostart_policy", + "range": "none,boot_time,on_demand", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "service_bundle": { + "attribute": "service_bundle", + "status": "normal", + "type": "bundle", + "visibility": "body" + }, + "service_dependence_chain": { + "attribute": "service_dependence_chain", + "range": "ignore,start_parent_services,stop_child_services,all_related", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "service_type": { + "attribute": "service_type", + "range": "windows,generic", + "status": "normal", + "type": "option", + "visibility": "body" + } + }, + "status": "normal" + }, + "volume": { + "attributes": { + "check_foreign": { + "attribute": "check_foreign", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "freespace": { + "attribute": "freespace", + "range": "[0-9]+[MBkKgGmb%]", + "status": "normal", + "type": "string", + "visibility": "body" + }, + "inherit_from": { + "attribute": "inherit_from", + "status": "normal", + "type": "body", + "visibility": "body" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "body" + }, + "scan_arrivals": { + "attribute": "scan_arrivals", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "body" + }, + "sensible_count": { + "attribute": "sensible_count", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + }, + "sensible_size": { + "attribute": "sensible_size", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "body" + } + }, + "status": "normal" + } + }, + "bundleTypes": { + "agent": { + "promiseTypes": [ + "commands", + "databases", + "guest_environments", + "files", + "methods", + "packages", + "processes", + "services", + "storage", + "users", + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + }, + "common": { + "promiseTypes": [ + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + }, + "edit_line": { + "promiseTypes": [ + "delete_lines", + "insert_lines", + "field_edits", + "replace_patterns", + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + }, + "edit_xml": { + "promiseTypes": [ + "build_xpath", + "delete_tree", + "insert_tree", + "delete_attribute", + "set_attribute", + "delete_text", + "set_text", + "insert_text", + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + }, + "monitor": { + "promiseTypes": [ + "measurements", + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + }, + "server": { + "promiseTypes": [ + "access", + "roles", + "classes", + "defaults", + "meta", + "reports", + "vars" + ], + "status": "normal" + } + }, + "functions": { + "accessedbefore": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Newer filename", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Older filename", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "accumulated": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Years", + "range": "0,1000", + "type": "int" + }, + { + "description": "Months", + "range": "0,1000", + "type": "int" + }, + { + "description": "Days", + "range": "0,1000", + "type": "int" + }, + { + "description": "Hours", + "range": "0,1000", + "type": "int" + }, + { + "description": "Minutes", + "range": "0,1000", + "type": "int" + }, + { + "description": "Seconds", + "range": "0,40000", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "ago": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Years", + "range": "0,1000", + "type": "int" + }, + { + "description": "Months", + "range": "0,1000", + "type": "int" + }, + { + "description": "Days", + "range": "0,1000", + "type": "int" + }, + { + "description": "Hours", + "range": "0,1000", + "type": "int" + }, + { + "description": "Minutes", + "range": "0,1000", + "type": "int" + }, + { + "description": "Seconds", + "range": "0,40000", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "and": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "basename": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "File path", + "range": ".*", + "type": "string" + }, + { + "description": "Optional suffix", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "bundlesmatching": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "bundlestate": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Bundle name", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "callstack_callers": { + "cached": false, + "category": "internal", + "collecting": false, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "callstack_promisers": { + "cached": false, + "category": "internal", + "collecting": false, + "parameters": [], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "canonify": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String containing non-identifier characters", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "canonifyuniquely": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String containing non-identifier characters", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "cf_version_after": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "cf_version_at": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "cf_version_before": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "cf_version_between": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Lower CFEngine version number to compare against", + "range": ".*", + "type": "string" + }, + { + "description": "Upper CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "cf_version_maximum": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "cf_version_minimum": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "CFEngine version number to compare against", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "changedbefore": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Newer filename", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Older filename", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "classesmatching": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "classfiltercsv": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "CSV file has heading", + "range": "true,false,yes,no,on,off", + "type": "option" + }, + { + "description": "Column index to filter by, contains classes", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Column index to sort by", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "classfilterdata": { + "cached": false, + "category": "io", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Specify type of data structure", + "range": "array_of_arrays,array_of_objects,object_of_arrays,object_of_objects,auto", + "type": "option" + }, + { + "description": "Key or index of class expressions", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "classify": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "classmatch": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "concat": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "countclassesmatching": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [], + "returnType": "int", + "status": "normal", + "variadic": true + }, + "countlinesmatching": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Filename", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "data_expand": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "data_readstringarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "data_readstringarrayidx": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "data_regextract": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Match string", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "data_sysctlvalues": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "datastate": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "difference": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine base variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine filter variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "dirname": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File path", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "diskfree": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File system directory", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "escape": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "IP address or string to escape", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "eval": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + }, + { + "description": "Evaluation type", + "range": "math,class", + "type": "option" + }, + { + "description": "Evaluation options", + "range": "infix", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "every": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Regular expression or string", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "execresult": { + "cached": true, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Fully qualified command path", + "range": ".+", + "type": "string" + }, + { + "description": "Shell encapsulation option", + "range": "noshell,useshell,powershell", + "type": "option" + }, + { + "description": "Which output to return; stdout or stderr", + "range": "both,stdout,stderr", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "execresult_as_data": { + "cached": true, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Fully qualified command path", + "range": ".+", + "type": "string" + }, + { + "description": "Shell encapsulation option", + "range": "noshell,useshell,powershell", + "type": "option" + }, + { + "description": "Which output to return; stdout or stderr", + "range": "both,stdout,stderr", + "type": "option" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "expandrange": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String containing numerical range e.g. string[13-47]", + "range": ".*", + "type": "string" + }, + { + "description": "Step size of numerical increments", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "file_hash": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Hash or digest algorithm", + "range": "md5,sha1,sha256,sha384,sha512", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "fileexists": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "filesexist": { + "cached": false, + "category": "files", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "filesize": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "filestat": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "stat() field to get", + "range": "size,gid,uid,ino,nlink,ctime,atime,mtime,xattr,mode,modeoct,permstr,permoct,type,devno,dev_minor,dev_major,basename,dirname,linktarget,linktarget_shallow", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "filter": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Regular expression or string", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Match as regular expression if true, as exact string otherwise", + "range": "true,false,yes,no,on,off", + "type": "option" + }, + { + "description": "Invert matches", + "range": "true,false,yes,no,on,off", + "type": "option" + }, + { + "description": "Maximum number of matches to return", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "findfiles": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "findfiles_up": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Path to search from", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Glob pattern to match files", + "range": ".+", + "type": "string" + }, + { + "description": "Number of levels to search", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "findlocalgroups": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Filter list", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "findlocalusers": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Filter list", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "findprocesses": { + "cached": true, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Regular expression to match process name", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "format": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "CFEngine format string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "getacls": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Path to file or directory", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Whether to get default or access ACL", + "range": "default,access", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "getbundlemetatags": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "getclassmetatags": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Class identifier", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "getenv": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Name of environment variable", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "Maximum number of characters to read ", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "getfields": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Regular expression to match line", + "range": ".*", + "type": "string" + }, + { + "description": "Filename to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regular expression to split fields", + "range": ".*", + "type": "string" + }, + { + "description": "Return array name", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "getgid": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Group name in text", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "getgroupinfo": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Group name or group ID as string", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "getgroups": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Comma separated list of Group names", + "range": ".*", + "type": "string" + }, + { + "description": "Comma separated list of GroupID numbers", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "getindices": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "getuid": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "User name in text", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "getuserinfo": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "User name in text", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "getusers": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Comma separated list of User names", + "range": ".*", + "type": "string" + }, + { + "description": "Comma separated list of UserID numbers", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "getvalues": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "getvariablemetatags": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "grep": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "groupexists": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Group name or identifier", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "hash": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input text", + "range": ".*", + "type": "string" + }, + { + "description": "Hash or digest algorithm", + "range": "md5,sha1,sha256,sha384,sha512", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "hash_to_int": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Lower inclusive bound", + "range": "-99999999999,99999999999", + "type": "int" + }, + { + "description": "Upper exclusive bound", + "range": "-99999999999,99999999999", + "type": "int" + }, + { + "description": "Input string to hash", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "hashmatch": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Filename to hash", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Hash or digest algorithm", + "range": "md5,sha1,sha256,sha384,sha512", + "type": "option" + }, + { + "description": "ASCII representation of hash for comparison", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "host2ip": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Host name in ascii", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "hostinnetgroup": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Netgroup name", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "hostrange": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Hostname prefix", + "range": ".*", + "type": "string" + }, + { + "description": "Enumerated range", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "hostsseen": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Horizon since last seen in hours", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Complements for selection policy", + "range": "lastseen,notseen", + "type": "option" + }, + { + "description": "Type of return value desired", + "range": "name,address,hostkey", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "hostswithclass": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Class name to look for", + "range": "[a-zA-Z0-9_]+", + "type": "string" + }, + { + "description": "Type of return value desired", + "range": "name,address,hostkey", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "hostswithgroup": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Group name to look for", + "range": "[a-zA-Z0-9_]+", + "type": "string" + }, + { + "description": "Type of return value desired", + "range": "name,address,hostkey", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "hubknowledge": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "ifelse": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "int": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Numeric string to convert to integer", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "intersection": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine base variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine filter variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "ip2host": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "IP address (IPv4 or IPv6)", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "iprange": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "IP address range syntax", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "irange": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Integer start of range", + "range": "-99999999999,99999999999", + "type": "int" + }, + { + "description": "Integer end of range", + "range": "-99999999999,99999999999", + "type": "int" + } + ], + "returnType": "irange", + "status": "normal", + "variadic": false + }, + "is_type": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": ".*", + "type": "string" + }, + { + "description": "Type", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "isconnectable": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Host name, domain name or IP address", + "range": ".*", + "type": "string" + }, + { + "description": "Port number", + "range": ".*", + "type": "string" + }, + { + "description": "Connection timeout (in seconds)", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "isdir": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isexecutable": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isgreaterthan": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Larger string or value", + "range": ".*", + "type": "string" + }, + { + "description": "Smaller string or value", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isipinsubnet": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "IP address range syntax", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "islessthan": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Smaller string or value", + "range": ".*", + "type": "string" + }, + { + "description": "Larger string or value", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "islink": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isnewerthan": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Newer file name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Older file name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isnewerthantime": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Time as a Unix epoch offset", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isplain": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "File object name", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "isreadable": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Path to file", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Timeout interval", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "isvariable": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "join": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Join glue-string", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "lastnode": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + }, + { + "description": "Link separator, e.g. /,:", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "laterthan": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Years", + "range": "0,10000", + "type": "int" + }, + { + "description": "Months", + "range": "0,1000", + "type": "int" + }, + { + "description": "Days", + "range": "0,1000", + "type": "int" + }, + { + "description": "Hours", + "range": "0,1000", + "type": "int" + }, + { + "description": "Minutes", + "range": "0,1000", + "type": "int" + }, + { + "description": "Seconds", + "range": "0,40000", + "type": "int" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "ldaparray": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Array name", + "range": ".*", + "type": "string" + }, + { + "description": "URI", + "range": ".*", + "type": "string" + }, + { + "description": "Distinguished name", + "range": ".*", + "type": "string" + }, + { + "description": "Filter", + "range": ".*", + "type": "string" + }, + { + "description": "Search scope policy", + "range": "subtree,onelevel,base", + "type": "option" + }, + { + "description": "Security level", + "range": "none,ssl,sasl", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "ldaplist": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "URI", + "range": ".*", + "type": "string" + }, + { + "description": "Distinguished name", + "range": ".*", + "type": "string" + }, + { + "description": "Filter", + "range": ".*", + "type": "string" + }, + { + "description": "Record name", + "range": ".*", + "type": "string" + }, + { + "description": "Search scope policy", + "range": "subtree,onelevel,base", + "type": "option" + }, + { + "description": "Security level", + "range": "none,ssl,sasl", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "ldapvalue": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "URI", + "range": ".*", + "type": "string" + }, + { + "description": "Distinguished name", + "range": ".*", + "type": "string" + }, + { + "description": "Filter", + "range": ".*", + "type": "string" + }, + { + "description": "Record name", + "range": ".*", + "type": "string" + }, + { + "description": "Search scope policy", + "range": "subtree,onelevel,base", + "type": "option" + }, + { + "description": "Security level", + "range": "none,ssl,sasl", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "length": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "lsdir": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Path to base directory", + "range": ".+", + "type": "string" + }, + { + "description": "Regular expression to match files or blank", + "range": ".*", + "type": "string" + }, + { + "description": "Include the base path in the list", + "range": "true,false,yes,no,on,off", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "makerule": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Target filename", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Source filename or CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "maparray": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Pattern based on $(this.k) and $(this.v) as original text", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON, the array variable to map", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "mapdata": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Conversion to apply to the mapped string", + "range": "none,canonify,json,json_pipe", + "type": "option" + }, + { + "description": "Pattern based on $(this.k) and $(this.v) as original text", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "maplist": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Pattern based on $(this) as original text", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "max": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Sorting method: lex or int or real (floating point) or IPv4/IPv6 or MAC address", + "range": "lex,int,real,IP,ip,MAC,mac", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "mean": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "real", + "status": "normal", + "variadic": false + }, + "mergedata": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "min": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Sorting method: lex or int or real (floating point) or IPv4/IPv6 or MAC address", + "range": "lex,int,real,IP,ip,MAC,mac", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "network_connections": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "none": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Regular expression or string", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "not": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Class value", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "now": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "nth": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Offset or key of element to return", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "on": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Year", + "range": "1970,3000", + "type": "int" + }, + { + "description": "Month (January = 0)", + "range": "0,1000", + "type": "int" + }, + { + "description": "Day (First day of month = 0)", + "range": "0,1000", + "type": "int" + }, + { + "description": "Hour", + "range": "0,1000", + "type": "int" + }, + { + "description": "Minute", + "range": "0,1000", + "type": "int" + }, + { + "description": "Second", + "range": "0,1000", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "or": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "packagesmatching": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Regular expression (unanchored) to match package name", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package version", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package architecture", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package method", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "packageupdatesmatching": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Regular expression (unanchored) to match package name", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package version", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package architecture", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression (unanchored) to match package method", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "parseintarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "A string to parse for input data", + "range": ".*", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "parsejson": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "JSON string to parse", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "parserealarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "A string to parse for input data", + "range": ".*", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "parsestringarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "A string to parse for input data", + "range": ".*", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "parsestringarrayidx": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "A string to parse for input data", + "range": ".*", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "parseyaml": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "JSON string to parse", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "peerleader": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "File name of host list", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Comment regex pattern", + "range": ".*", + "type": "string" + }, + { + "description": "Peer group size", + "range": "2,64", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "peerleaders": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "File name of host list", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Comment regex pattern", + "range": ".*", + "type": "string" + }, + { + "description": "Peer group size", + "range": "2,64", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "peers": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "File name of host list", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Comment regex pattern", + "range": ".*", + "type": "string" + }, + { + "description": "Peer group size", + "range": "2,64", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "processexists": { + "cached": true, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Regular expression to match process name", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "product": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "real", + "status": "normal", + "variadic": false + }, + "randomint": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Lower inclusive bound", + "range": "-99999999999,99999999999", + "type": "int" + }, + { + "description": "Upper exclusive bound", + "range": "-99999999999,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "read_module_protocol": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read and parse from", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "readcsv": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "readdata": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Type of data to read", + "range": "CSV,YAML,JSON,ENV,auto", + "type": "option" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "readenvfile": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "readfile": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "readintarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "readintlist": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "ilist", + "status": "normal", + "variadic": false + }, + "readjson": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "readrealarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "readreallist": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "rlist", + "status": "normal", + "variadic": false + }, + "readstringarray": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "readstringarrayidx": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Array identifier to populate", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "readstringlist": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name to read", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Regex matching comments", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split data", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of entries to read", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Maximum bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "readtcp": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Host name or IP address of server socket", + "range": ".*", + "type": "string" + }, + { + "description": "Port number or service name", + "range": ".*", + "type": "string" + }, + { + "description": "Protocol query string", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "readyaml": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "File name", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Maximum number of bytes to read", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "regarray": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "regcmp": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Match string", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "regex_replace": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Source string", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression pattern", + "range": ".*", + "type": "string" + }, + { + "description": "Replacement string", + "range": ".*", + "type": "string" + }, + { + "description": "sed/Perl-style options: gmsixUT", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "regextract": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Match string", + "range": ".*", + "type": "string" + }, + { + "description": "Identifier for back-references", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "registryvalue": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "Windows registry key", + "range": ".*", + "type": "string" + }, + { + "description": "Windows registry value-id", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "regldap": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "URI", + "range": ".*", + "type": "string" + }, + { + "description": "Distinguished name", + "range": ".*", + "type": "string" + }, + { + "description": "Filter", + "range": ".*", + "type": "string" + }, + { + "description": "Record name", + "range": ".*", + "type": "string" + }, + { + "description": "Search scope policy", + "range": "subtree,onelevel,base", + "type": "option" + }, + { + "description": "Regex to match results", + "range": ".*", + "type": "string" + }, + { + "description": "Security level", + "range": "none,ssl,sasl", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "regline": { + "cached": false, + "category": "io", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Filename to search", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "reglist": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Regular expression", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "remoteclassesmatching": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Regular expression", + "range": ".*", + "type": "string" + }, + { + "description": "Server name or address", + "range": ".*", + "type": "string" + }, + { + "description": "Use encryption", + "range": "true,false,yes,no,on,off", + "type": "option" + }, + { + "description": "Return class prefix", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "remotescalar": { + "cached": true, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + }, + { + "description": "Hostname or IP address of server", + "range": ".*", + "type": "string" + }, + { + "description": "Use encryption", + "range": "true,false,yes,no,on,off", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "returnszero": { + "cached": true, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Command path", + "range": ".+", + "type": "string" + }, + { + "description": "Shell encapsulation option", + "range": "noshell,useshell,powershell", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "reverse": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "rrange": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Real number, start of range", + "range": "-9.99999E100,9.99999E100", + "type": "real" + }, + { + "description": "Real number, end of range", + "range": "-9.99999E100,9.99999E100", + "type": "real" + } + ], + "returnType": "rrange", + "status": "normal", + "variadic": false + }, + "search_up": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Path to search from", + "range": "\"?(/.*)", + "type": "string" + }, + { + "description": "Glob pattern to match files", + "range": ".+", + "type": "string" + }, + { + "description": "Number of levels to search", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "selectservers": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "CFEngine list identifier, the list of hosts or addresses to contact", + "range": "@[(][a-zA-Z0-9_$(){}\\[\\].:]+[)]", + "type": "string" + }, + { + "description": "Port number or service name.", + "range": ".*", + "type": "string" + }, + { + "description": "A query string", + "range": ".*", + "type": "string" + }, + { + "description": "A regular expression to match success", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of bytes to read from server", + "range": "0,99999999999", + "type": "int" + }, + { + "description": "Name for array of results", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "shuffle": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Any seed string", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "some": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "Regular expression or string", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "sort": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Sorting method: lex or int or real (floating point) or IPv4/IPv6 or MAC address", + "range": "lex,int,real,IP,ip,MAC,mac", + "type": "option" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "splayclass": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Input string for classification", + "range": ".*", + "type": "string" + }, + { + "description": "Splay time policy", + "range": "daily,hourly", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "splitstring": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "A data string", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split on", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of pieces", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "deprecated", + "variadic": false + }, + "storejson": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "strcmp": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String", + "range": ".*", + "type": "string" + }, + { + "description": "String", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "strftime": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Use GMT or local time", + "range": "gmtime,localtime", + "type": "option" + }, + { + "description": "A format string", + "range": ".*", + "type": "string" + }, + { + "description": "The time as a Unix epoch offset", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Convert argument to string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_downcase": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_head": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of characters to return", + "range": "-99999999999,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_length": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "int", + "status": "normal", + "variadic": false + }, + "string_mustache": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "string_replace": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Source string", + "range": ".*", + "type": "string" + }, + { + "description": "String to replace", + "range": ".*", + "type": "string" + }, + { + "description": "Replacement string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_reverse": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_split": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "A data string", + "range": ".*", + "type": "string" + }, + { + "description": "Regex to split on", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of pieces", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "string_tail": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + }, + { + "description": "Maximum number of characters to return", + "range": "-99999999999,99999999999", + "type": "int" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_trim": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "string_upcase": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Input string", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "sublist": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Whether to return elements from the head or from the tail of the list", + "range": "head,tail", + "type": "option" + }, + { + "description": "Maximum number of elements to return", + "range": "0,99999999999", + "type": "int" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "sum": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "real", + "status": "normal", + "variadic": false + }, + "sysctlvalue": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "sysctl key", + "range": ".*", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "translatepath": { + "cached": false, + "category": "files", + "collecting": false, + "parameters": [ + { + "description": "Unix style path", + "range": "\"?(/.*)", + "type": "string" + } + ], + "returnType": "string", + "status": "normal", + "variadic": false + }, + "type": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "Variable identifier", + "range": ".*", + "type": "string" + }, + { + "description": "Enable detailed type decription", + "range": "true,false,yes,no,on,off", + "type": "option" + } + ], + "returnType": "string", + "status": "normal", + "variadic": true + }, + "unique": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "slist", + "status": "normal", + "variadic": false + }, + "url_get": { + "cached": false, + "category": "communication", + "collecting": false, + "parameters": [ + { + "description": "URL to retrieve", + "range": ".*", + "type": "string" + }, + { + "description": "CFEngine variable identifier or inline JSON, can be blank", + "range": ".*", + "type": "string" + } + ], + "returnType": "data", + "status": "normal", + "variadic": false + }, + "usemodule": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "Name of module command", + "range": ".*", + "type": "string" + }, + { + "description": "Argument string for the module", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "userexists": { + "cached": false, + "category": "system", + "collecting": false, + "parameters": [ + { + "description": "User name or identifier", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "useringroup": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "User name", + "range": ".*", + "type": "string" + }, + { + "description": "Group name", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + }, + "validdata": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String to validate as JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Type of data to validate", + "range": "JSON", + "type": "option" + }, + { + "description": "Enable more strict validation, requiring the result to be a valid data container, matching the requirements of parsejson().", + "range": "true,false,yes,no,on,off", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "validjson": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [ + { + "description": "String to validate as JSON", + "range": ".*", + "type": "string" + }, + { + "description": "Enable more strict validation, requiring the result to be a valid data container, matching the requirements of parsejson().", + "range": "true,false,yes,no,on,off", + "type": "option" + } + ], + "returnType": "context", + "status": "normal", + "variadic": true + }, + "variablesmatching": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "slist", + "status": "normal", + "variadic": true + }, + "variablesmatching_as_data": { + "cached": false, + "category": "data", + "collecting": false, + "parameters": [], + "returnType": "data", + "status": "normal", + "variadic": true + }, + "variance": { + "cached": false, + "category": "data", + "collecting": true, + "parameters": [ + { + "description": "CFEngine variable identifier or inline JSON", + "range": ".*", + "type": "string" + } + ], + "returnType": "real", + "status": "normal", + "variadic": false + }, + "version_compare": { + "cached": false, + "category": "utils", + "collecting": false, + "parameters": [ + { + "description": "First version to compare", + "range": ".*", + "type": "string" + }, + { + "description": "Operator to use in comparison", + "range": "=,==,!=,>,<,>=,<=", + "type": "option" + }, + { + "description": "Second version to compare", + "range": ".*", + "type": "string" + } + ], + "returnType": "context", + "status": "normal", + "variadic": false + } + }, + "promiseTypes": { + "access": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "admit": { + "attribute": "admit", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "admit_hostnames": { + "attribute": "admit_hostnames", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "admit_ips": { + "attribute": "admit_ips", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "admit_keys": { + "attribute": "admit_keys", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "deny": { + "attribute": "deny", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "deny_hostnames": { + "attribute": "deny_hostnames", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "deny_ips": { + "attribute": "deny_ips", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "deny_keys": { + "attribute": "deny_keys", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifencrypted": { + "attribute": "ifencrypted", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "maproot": { + "attribute": "maproot", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "report_data_select": { + "attribute": "report_data_select", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "resource_type": { + "attribute": "resource_type", + "range": "path,literal,context,query,variable,bundle", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "shortcut": { + "attribute": "shortcut", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "build_xpath": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "classes": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "and": { + "attribute": "and", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "clist", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "dist": { + "attribute": "dist", + "range": "-9.99999E100,9.99999E100", + "status": "normal", + "type": "rlist", + "visibility": "promiseType" + }, + "expression": { + "attribute": "expression", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "context", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "not": { + "attribute": "not", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "context", + "visibility": "promiseType" + }, + "or": { + "attribute": "or", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "clist", + "visibility": "promiseType" + }, + "persistence": { + "attribute": "persistence", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "promiseType" + }, + "scope": { + "attribute": "scope", + "range": "namespace,bundle", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "select_class": { + "attribute": "select_class", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "clist", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "xor": { + "attribute": "xor", + "range": "[a-zA-Z0-9_!&@@$|.()\\[\\]{}:]+", + "status": "normal", + "type": "clist", + "visibility": "promiseType" + } + }, + "status": "normal" + }, + "commands": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "arglist": { + "attribute": "arglist", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "args": { + "attribute": "args", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "contain": { + "attribute": "contain", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "inform": { + "attribute": "inform", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "module": { + "attribute": "module", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "databases": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "database_columns": { + "attribute": "database_columns", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "database_operation": { + "attribute": "database_operation", + "range": "create,delete,drop,cache,verify,restore", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "database_rows": { + "attribute": "database_rows", + "range": ".*,.*", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "database_server": { + "attribute": "database_server", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "database_type": { + "attribute": "database_type", + "range": "sql,ms_registry", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "registry_exclude": { + "attribute": "registry_exclude", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "defaults": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if_match_regex": { + "attribute": "if_match_regex", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "slist": { + "attribute": "slist", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "string": { + "attribute": "string", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "delete_attribute": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "delete_lines": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "delete_select": { + "attribute": "delete_select", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "not_matching": { + "attribute": "not_matching", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "select_region": { + "attribute": "select_region", + "status": "normal", + "type": "body", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "delete_text": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "delete_tree": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "field_edits": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "edit_field": { + "attribute": "edit_field", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_region": { + "attribute": "select_region", + "status": "normal", + "type": "body", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "files": { + "attributes": { + "acl": { + "attribute": "acl", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "changes": { + "attribute": "changes", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "content": { + "attribute": "content", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "copy_from": { + "attribute": "copy_from", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "create": { + "attribute": "create", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "delete": { + "attribute": "delete", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "depth_search": { + "attribute": "depth_search", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "edit_defaults": { + "attribute": "edit_defaults", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "edit_line": { + "attribute": "edit_line", + "status": "normal", + "type": "bundle", + "visibility": "promiseType" + }, + "edit_template": { + "attribute": "edit_template", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "edit_template_string": { + "attribute": "edit_template_string", + "range": ".*", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "edit_xml": { + "attribute": "edit_xml", + "status": "normal", + "type": "bundle", + "visibility": "promiseType" + }, + "file_select": { + "attribute": "file_select", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "file_type": { + "attribute": "file_type", + "range": "regular,fifo", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "fsattrs": { + "attribute": "fsattrs", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "link_from": { + "attribute": "link_from", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "move_obstructions": { + "attribute": "move_obstructions", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "pathtype": { + "attribute": "pathtype", + "range": "literal,regex,guess", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "perms": { + "attribute": "perms", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "rename": { + "attribute": "rename", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "repository": { + "attribute": "repository", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "template_data": { + "attribute": "template_data", + "range": "", + "status": "normal", + "type": "data", + "visibility": "promiseType" + }, + "template_method": { + "attribute": "template_method", + "range": "cfengine,inline_mustache,mustache", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "touch": { + "attribute": "touch", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "transformer": { + "attribute": "transformer", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "guest_environments": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "environment_host": { + "attribute": "environment_host", + "range": "[a-zA-Z0-9_]+", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "environment_interface": { + "attribute": "environment_interface", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "environment_resources": { + "attribute": "environment_resources", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "environment_state": { + "attribute": "environment_state", + "range": "create,delete,running,suspended,down", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "environment_type": { + "attribute": "environment_type", + "range": "xen,kvm,esx,vbox,test,xen_net,kvm_net,esx_net,test_net,zone,ec2,eucalyptus", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "insert_lines": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "expand_scalars": { + "attribute": "expand_scalars", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "insert_select": { + "attribute": "insert_select", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "insert_type": { + "attribute": "insert_type", + "range": "literal,string,file,file_preserve_block,preserve_block,preserve_all_lines", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "location": { + "attribute": "location", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_region": { + "attribute": "select_region", + "status": "normal", + "type": "body", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "whitespace_policy": { + "attribute": "whitespace_policy", + "range": "ignore_leading,ignore_trailing,ignore_embedded,exact_match", + "status": "normal", + "type": "olist", + "visibility": "promiseType" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "insert_text": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "insert_tree": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "measurements": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "data_type": { + "attribute": "data_type", + "range": "counter,int,real,string,slist", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "history_type": { + "attribute": "history_type", + "range": "weekly,scalar,static,log", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "match_value": { + "attribute": "match_value", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "stream_type": { + "attribute": "stream_type", + "range": "pipe,file", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "units": { + "attribute": "units", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "meta": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "data": { + "attribute": "data", + "range": "", + "status": "normal", + "type": "data", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "slist": { + "attribute": "slist", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "string": { + "attribute": "string", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "methods": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "inherit": { + "attribute": "inherit", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "usebundle": { + "attribute": "usebundle", + "status": "normal", + "type": "bundle", + "visibility": "promiseType" + }, + "useresult": { + "attribute": "useresult", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "packages": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "additional_packages": { + "attribute": "additional_packages", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "architecture": { + "attribute": "architecture", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "options": { + "attribute": "options", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "package_architectures": { + "attribute": "package_architectures", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "package_method": { + "attribute": "package_method", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "package_module": { + "attribute": "package_module", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "package_policy": { + "attribute": "package_policy", + "range": "add,delete,reinstall,update,addupdate,patch,verify", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "package_select": { + "attribute": "package_select", + "range": ">,<,==,!=,>=,<=", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "package_version": { + "attribute": "package_version", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "policy": { + "attribute": "policy", + "range": "absent,present", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "version": { + "attribute": "version", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "processes": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "process_count": { + "attribute": "process_count", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "process_select": { + "attribute": "process_select", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "process_stop": { + "attribute": "process_stop", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "restart_class": { + "attribute": "restart_class", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "signals": { + "attribute": "signals", + "range": "(hup|int|trap|kill|pipe|cont|abrt|stop|quit|term|child|usr1|usr2|bus|segv|[0-9]+s?)", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "replace_patterns": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "allow_non_convergent": { + "attribute": "allow_non_convergent", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "replace_with": { + "attribute": "replace_with", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "select_region": { + "attribute": "select_region", + "status": "normal", + "type": "body", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "reports": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "bundle_return_value_index": { + "attribute": "bundle_return_value_index", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "friend_pattern": { + "attribute": "friend_pattern", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "intermittency": { + "attribute": "intermittency", + "range": "0,1", + "status": "normal", + "type": "real", + "visibility": "promiseType" + }, + "lastseen": { + "attribute": "lastseen", + "range": "0,99999999999", + "status": "normal", + "type": "int", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "printfile": { + "attribute": "printfile", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "report_to_file": { + "attribute": "report_to_file", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "showstate": { + "attribute": "showstate", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "roles": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "authorize": { + "attribute": "authorize", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "services": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "service_dependencies": { + "attribute": "service_dependencies", + "range": "[a-zA-Z0-9_$(){}\\[\\].:]+", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "service_method": { + "attribute": "service_method", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "service_policy": { + "attribute": "service_policy", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "set_attribute": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "attribute_value": { + "attribute": "attribute_value", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "set_text": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "build_xpath": { + "attribute": "build_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "select_xpath": { + "attribute": "select_xpath", + "range": "", + "status": "normal", + "type": "string", + "visibility": "bundle" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "storage": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "mount": { + "attribute": "mount", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "volume": { + "attribute": "volume", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "users": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "description": { + "attribute": "description", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "group_primary": { + "attribute": "group_primary", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "groups_secondary": { + "attribute": "groups_secondary", + "range": ".*", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "home_bundle": { + "attribute": "home_bundle", + "status": "normal", + "type": "bundle", + "visibility": "promiseType" + }, + "home_bundle_inherit": { + "attribute": "home_bundle_inherit", + "range": "true,false,yes,no,on,off", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "home_dir": { + "attribute": "home_dir", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "password": { + "attribute": "password", + "status": "normal", + "type": "body", + "visibility": "promiseType" + }, + "policy": { + "attribute": "policy", + "range": "present,absent,locked", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "shell": { + "attribute": "shell", + "range": "\"?(/.*)", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "uid": { + "attribute": "uid", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + }, + "vars": { + "attributes": { + "action": { + "attribute": "action", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "classes": { + "attribute": "classes", + "status": "normal", + "type": "body", + "visibility": "global" + }, + "comment": { + "attribute": "comment", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "data": { + "attribute": "data", + "range": "", + "status": "normal", + "type": "data", + "visibility": "promiseType" + }, + "depends_on": { + "attribute": "depends_on", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "handle": { + "attribute": "handle", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "if": { + "attribute": "if", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ifvarclass": { + "attribute": "ifvarclass", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "ilist": { + "attribute": "ilist", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "ilist", + "visibility": "promiseType" + }, + "int": { + "attribute": "int", + "range": "-99999999999,99999999999", + "status": "normal", + "type": "int", + "visibility": "promiseType" + }, + "meta": { + "attribute": "meta", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "global" + }, + "policy": { + "attribute": "policy", + "range": "free,overridable,constant,ifdefined", + "status": "normal", + "type": "option", + "visibility": "promiseType" + }, + "real": { + "attribute": "real", + "range": "-9.99999E100,9.99999E100", + "status": "normal", + "type": "real", + "visibility": "promiseType" + }, + "rlist": { + "attribute": "rlist", + "range": "-9.99999E100,9.99999E100", + "status": "normal", + "type": "rlist", + "visibility": "promiseType" + }, + "slist": { + "attribute": "slist", + "range": "", + "status": "normal", + "type": "slist", + "visibility": "promiseType" + }, + "string": { + "attribute": "string", + "range": "", + "status": "normal", + "type": "string", + "visibility": "promiseType" + }, + "unless": { + "attribute": "unless", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + }, + "with": { + "attribute": "with", + "range": "", + "status": "normal", + "type": "string", + "visibility": "global" + } + }, + "status": "normal" + } + } +} diff --git a/tests/lint/005_bundle_type.expected.txt b/tests/lint/005_bundle_type.expected.txt index 89b1b44..cfaa2bc 100644 --- a/tests/lint/005_bundle_type.expected.txt +++ b/tests/lint/005_bundle_type.expected.txt @@ -1,6 +1,6 @@ bundle notavalidtype my_bundle ^-----------^ -Error: Bundle type must be one of (agent, common, monitor, server, edit_line, edit_xml), not 'notavalidtype' at tests/lint/005_bundle_type.x.cf:1:8 +Error: Bundle type must be one of (agent, common, edit_line, edit_xml, monitor, server), not 'notavalidtype' at tests/lint/005_bundle_type.x.cf:1:8 FAIL: tests/lint/005_bundle_type.x.cf (1 error) Failure, 1 error in total.