cfengine 0.20.0__tar.gz → 0.22.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/pypi-publish.yml +1 -1
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/renovate.yml +1 -1
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/stale.yml +1 -1
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/update-syntax-description.yml +1 -0
- cfengine-0.22.0/CHEATSHEET.md +120 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/PKG-INFO +4 -2
- {cfengine-0.20.0 → cfengine-0.22.0}/README.md +2 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/pyproject.toml +1 -1
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/PKG-INFO +4 -2
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/SOURCES.txt +2 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/requires.txt +1 -1
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/scm_file_list.json +136 -134
- cfengine-0.22.0/src/cfengine.egg-info/scm_version.json +8 -0
- cfengine-0.22.0/src/cfengine_cli/cfengine_wrapper/arg_parse.py +232 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/cfengine_wrapper/cfengine_commands.py +151 -55
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/cfengine_wrapper/cfengine_objects.py +2 -2
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/cfengine_wrapper/cfengine_utils.py +63 -19
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/commands.py +20 -0
- cfengine-0.22.0/src/cfengine_cli/initialize_project.py +432 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/main.py +79 -57
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/syntax-description.json +61 -5
- {cfengine-0.20.0 → cfengine-0.22.0}/uv.lock +5 -5
- cfengine-0.20.0/src/cfengine.egg-info/scm_version.json +0 -8
- cfengine-0.20.0/src/cfengine_cli/cfengine_wrapper/arg_parse.py +0 -261
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/renovate-config.js +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/lint-policy-in-other-repos.yml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/.github/workflows/make-check.yml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/.gitignore +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/.python-version +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/CLAUDE.md +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/HACKING.md +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/LICENSE +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/Makefile +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/ci/01-install.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/ci/02-safe-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/ci/03-unsafe-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/renovate.json +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/setup.cfg +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/dependency_links.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/entry_points.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine.egg-info/top_level.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/__init__.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/__main__.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/cfengine_wrapper/__init__.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/changelog.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/deptool-README.md +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/deptool.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/dev.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/docs.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/format.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/lint.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/lint_csv.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/lint_yml.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/__init__.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/analyze.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/check_download_matches_git.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/download.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/generate_git_tags.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/generate_release_information.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/generate_vcf_download.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/masterfiles/generate_vcf_git_checkout.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/paths.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/profile.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/shell.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/syntax_tree.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/up.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/utils.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/validate.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/src/cfengine_cli/version.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/README.md +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/001_hello_world.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/001_hello_world.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/002_basics.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/002_basics.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/003_wrapping.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/003_wrapping.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/004_comments.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/004_comments.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/005_bundle_comments.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/005_bundle_comments.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/006_remove_empty_comments.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/006_remove_empty_comments.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/007_class_guarded_empty_lines.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/007_class_guarded_empty_lines.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/008_long_string.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/008_long_string.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/009_single_line.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/009_single_line.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/010_stakeholder.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/010_stakeholder.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/011_macros.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/011_macros.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/011_promises.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/011_promises.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/012_sameline_comments.expected.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/format/012_sameline_comments.input.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/001_hello_world.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/002_deprecations.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/002_deprecations.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/003_name_lowercase.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/003_name_lowercase.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/003_name_lowercase.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/004_block_type.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/004_block_type.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/004_block_type.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/005_syntax_error.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/005_syntax_error.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/005_syntax_error.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/006_empty_file.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/006_empty_file.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/007_namespace.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/007_namespace.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/007_namespace.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/008_bundle_shadows_function.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/008_bundle_shadows_function.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/008_bundle_shadows_function.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/009_unknown_function_inside_vars.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/009_unknown_function_inside_vars.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/009_unknown_function_inside_vars.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/010_mutually_exclusive_types_vars.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/010_mutually_exclusive_types_vars.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/010_mutually_exclusive_types_vars.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/011_invalid_attributes.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/011_invalid_attributes.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/012_function_call_arg_count.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/012_function_call_arg_count.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/012_function_call_arg_count.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/013_num_args_body.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/013_num_args_body.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/013_num_args_bundle.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/013_num_args_bundle.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/013_num_args_bundle_body.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/014_variadic_func_arg_count.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/014_variadic_func_arg_count.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/014_variadic_func_arg_count.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/015_macro_multi_def_bundle.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/015_macro_multi_def_bundle.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/015_macro_multi_def_bundle.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/016_half_promises.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/016_half_promises.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/016_half_promises.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/017_implies_body.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/017_implies_body.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/017_implies_body.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/018_nested_calls.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/018_nested_calls.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/018_nested_calls.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/019_bundle_name_expansion.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/020_missing_braces.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/020_missing_braces.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/020_missing_semicolon.expected.txt +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/lint/020_missing_semicolon.x.cf +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/run-format-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/run-lint-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/run-shell-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/run-up-validate-tests.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/shell/001-help.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/shell/002-version.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/shell/003-format.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/shell/004-format-check.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/shell/005-lint.sh +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/__init__.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_changelog.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_deps.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_format.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_lint_csv.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_lint_yml.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_paths.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_utils.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/unit/test_version.py +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/001_complex_config.yaml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/002_version.x.yaml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/003_box.x.yaml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/004_count.x.yaml +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/mocks/cloud_config.json +0 -0
- {cfengine-0.20.0 → cfengine-0.22.0}/tests/up-validate/mocks/vagrant +0 -0
|
@@ -12,7 +12,7 @@ jobs:
|
|
|
12
12
|
- name: Checkout
|
|
13
13
|
uses: actions/checkout@v7.0.1
|
|
14
14
|
- name: Self-hosted Renovate
|
|
15
|
-
uses: renovatebot/github-action@v46.
|
|
15
|
+
uses: renovatebot/github-action@v46.2.0
|
|
16
16
|
with:
|
|
17
17
|
configurationFile: .github/renovate-config.js
|
|
18
18
|
token: ${{ secrets.RENOVATE_TOKEN }}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# CFEngine CLI cheatsheet
|
|
2
|
+
|
|
3
|
+
Quick reference for `cfengine COMMANDS`
|
|
4
|
+
For the full command list, run `cfengine help` or `cfengine COMMAND --help`.
|
|
5
|
+
|
|
6
|
+
## Managing hosts
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
# Save one or more hosts under a group name, for reuse in other commands
|
|
10
|
+
cfengine save --hosts 192.168.56.90 --role hub --name myhub
|
|
11
|
+
|
|
12
|
+
# List all saved host-groups
|
|
13
|
+
cfengine show
|
|
14
|
+
|
|
15
|
+
# Show details about a specific saved host (or group)
|
|
16
|
+
cfengine show --host myhub
|
|
17
|
+
|
|
18
|
+
# Open an interactive SSH session to a saved host
|
|
19
|
+
cfengine connect --hosts myhub
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Managing cfbs modules
|
|
23
|
+
|
|
24
|
+
These are thin wrappers around the equivalent `cfbs` subcommands, usable from anywhere inside a cfbs project.
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# Search the build-index for a module
|
|
28
|
+
cfengine search promise-type-git
|
|
29
|
+
|
|
30
|
+
# Add module(s) to the current cfbs project
|
|
31
|
+
cfengine add promise-type-git
|
|
32
|
+
|
|
33
|
+
# Set/update input.json for a module that takes input
|
|
34
|
+
cfengine input promise-type-git
|
|
35
|
+
|
|
36
|
+
# Remove module(s) from the current cfbs project
|
|
37
|
+
cfengine remove promise-type-git
|
|
38
|
+
|
|
39
|
+
# Update the current cfbs project (or specific modules)
|
|
40
|
+
cfengine update
|
|
41
|
+
cfengine update promise-type-git
|
|
42
|
+
|
|
43
|
+
# Show status of the current cfbs project
|
|
44
|
+
cfengine moduleinfo
|
|
45
|
+
|
|
46
|
+
# Show info about specific module(s) (does not require being inside a project)
|
|
47
|
+
cfengine moduleinfo promise-type-git
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Building and deploying policy sets
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Build the policy set from a cfbs project (equivalent to `cfbs build`)
|
|
54
|
+
cfengine build
|
|
55
|
+
|
|
56
|
+
# build -> deploy -> run on the given hub without extra prompts
|
|
57
|
+
cfengine build --hub myhub --non-interactive
|
|
58
|
+
|
|
59
|
+
# Deploy an already-built policy set to a hub
|
|
60
|
+
cfengine deploy --hub myhub
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Running the CFEngine agent
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Default: cf-agent -KIf update.cf && cf-agent -KIf
|
|
67
|
+
# If there is a local installation, this will be used
|
|
68
|
+
cfengine run
|
|
69
|
+
|
|
70
|
+
# Run a specific policy file (resolved locally, or uploaded if not found remotely)
|
|
71
|
+
cfengine run /tmp/some_policy.cf
|
|
72
|
+
|
|
73
|
+
# Run against a specific saved host, instead of being prompted
|
|
74
|
+
cfengine run --host myhub
|
|
75
|
+
|
|
76
|
+
# Chain multiple commands, executed in sequence
|
|
77
|
+
cfengine run /tmp/some_policy.cf /tmp/other_policy.cf
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Initializing new projects
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# Build project on top of the default masterfiles (default, same as `cfbs init`)
|
|
84
|
+
cfengine init --policy-set
|
|
85
|
+
|
|
86
|
+
# Initialize an example build project for working on a custom promise type (python)
|
|
87
|
+
cfengine init --promise-type
|
|
88
|
+
|
|
89
|
+
# Initialize an exapmlte module project for build.cfengine.com (or internal use)
|
|
90
|
+
cfengine init --policy-module
|
|
91
|
+
|
|
92
|
+
# Initialize an example policy module that takes input data
|
|
93
|
+
cfengine init --policy-module --with-input
|
|
94
|
+
|
|
95
|
+
# Skip interactive prompts
|
|
96
|
+
cfengine init --promise-module --non-interactive
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Formatting and linting
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
cfengine format
|
|
103
|
+
cfengine lint
|
|
104
|
+
cfengine lint main.cf
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Reporting
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
# Refresh reporting data on all known hubs/clients (capped at 25 hosts), optional flag to run agent first.
|
|
111
|
+
cfengine report [--run-agent]
|
|
112
|
+
|
|
113
|
+
# Only refresh a specific hub (and its clients, capped at 25), running the agent first
|
|
114
|
+
cfengine report --hub myhub --run-agent
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
See [README.md](./README.md) for installation and general usage, and [HACKING.md](./HACKING.md) for
|
|
120
|
+
contributing/development info.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cfengine
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.22.0
|
|
4
4
|
Summary: Human-oriented CLI for interacting with CFEngine policy language, projects, and other CFEngine tools
|
|
5
5
|
License: GNU GENERAL PUBLIC LICENSE
|
|
6
6
|
Version 3, 29 June 2007
|
|
@@ -694,7 +694,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
694
694
|
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
695
695
|
Requires-Python: >=3.10
|
|
696
696
|
Description-Content-Type: text/markdown
|
|
697
|
-
Requires-Dist: cf-remote>=0.
|
|
697
|
+
Requires-Dist: cf-remote>=0.9.4
|
|
698
698
|
Requires-Dist: cfbs>=5.5.0
|
|
699
699
|
Requires-Dist: tree-sitter-cfengine>=1.1.12
|
|
700
700
|
Requires-Dist: tree-sitter>=0.25
|
|
@@ -825,6 +825,8 @@ To ignore the previously saved configuration and apply the current configuration
|
|
|
825
825
|
cfengine up --reset config.yaml
|
|
826
826
|
```
|
|
827
827
|
|
|
828
|
+
See [CHEATSHEET.md](./CHEATSHEET.md) for a fuller command reference.
|
|
829
|
+
|
|
828
830
|
## Supported platforms and versions
|
|
829
831
|
|
|
830
832
|
This tool will only support a limited number of platforms, it is not intended to run everywhere CFEngine runs.
|
|
@@ -121,6 +121,8 @@ To ignore the previously saved configuration and apply the current configuration
|
|
|
121
121
|
cfengine up --reset config.yaml
|
|
122
122
|
```
|
|
123
123
|
|
|
124
|
+
See [CHEATSHEET.md](./CHEATSHEET.md) for a fuller command reference.
|
|
125
|
+
|
|
124
126
|
## Supported platforms and versions
|
|
125
127
|
|
|
126
128
|
This tool will only support a limited number of platforms, it is not intended to run everywhere CFEngine runs.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cfengine
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.22.0
|
|
4
4
|
Summary: Human-oriented CLI for interacting with CFEngine policy language, projects, and other CFEngine tools
|
|
5
5
|
License: GNU GENERAL PUBLIC LICENSE
|
|
6
6
|
Version 3, 29 June 2007
|
|
@@ -694,7 +694,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
694
694
|
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
695
695
|
Requires-Python: >=3.10
|
|
696
696
|
Description-Content-Type: text/markdown
|
|
697
|
-
Requires-Dist: cf-remote>=0.
|
|
697
|
+
Requires-Dist: cf-remote>=0.9.4
|
|
698
698
|
Requires-Dist: cfbs>=5.5.0
|
|
699
699
|
Requires-Dist: tree-sitter-cfengine>=1.1.12
|
|
700
700
|
Requires-Dist: tree-sitter>=0.25
|
|
@@ -825,6 +825,8 @@ To ignore the previously saved configuration and apply the current configuration
|
|
|
825
825
|
cfengine up --reset config.yaml
|
|
826
826
|
```
|
|
827
827
|
|
|
828
|
+
See [CHEATSHEET.md](./CHEATSHEET.md) for a fuller command reference.
|
|
829
|
+
|
|
828
830
|
## Supported platforms and versions
|
|
829
831
|
|
|
830
832
|
This tool will only support a limited number of platforms, it is not intended to run everywhere CFEngine runs.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
.gitignore
|
|
2
2
|
.python-version
|
|
3
|
+
CHEATSHEET.md
|
|
3
4
|
CLAUDE.md
|
|
4
5
|
HACKING.md
|
|
5
6
|
LICENSE
|
|
@@ -35,6 +36,7 @@ src/cfengine_cli/deptool.py
|
|
|
35
36
|
src/cfengine_cli/dev.py
|
|
36
37
|
src/cfengine_cli/docs.py
|
|
37
38
|
src/cfengine_cli/format.py
|
|
39
|
+
src/cfengine_cli/initialize_project.py
|
|
38
40
|
src/cfengine_cli/lint.py
|
|
39
41
|
src/cfengine_cli/lint_csv.py
|
|
40
42
|
src/cfengine_cli/lint_yml.py
|
|
@@ -1,166 +1,168 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": [
|
|
3
|
-
"HACKING.md",
|
|
4
|
-
"Makefile",
|
|
5
|
-
".python-version",
|
|
6
|
-
"pyproject.toml",
|
|
7
|
-
"renovate.json",
|
|
8
|
-
"LICENSE",
|
|
9
|
-
"CLAUDE.md",
|
|
10
|
-
"README.md",
|
|
11
|
-
"uv.lock",
|
|
12
|
-
".gitignore",
|
|
13
3
|
".github/renovate-config.js",
|
|
14
|
-
".github/workflows/renovate.yml",
|
|
15
|
-
".github/workflows/pypi-publish.yml",
|
|
16
4
|
".github/workflows/lint-policy-in-other-repos.yml",
|
|
17
|
-
".github/workflows/update-syntax-description.yml",
|
|
18
5
|
".github/workflows/make-check.yml",
|
|
6
|
+
".github/workflows/pypi-publish.yml",
|
|
7
|
+
".github/workflows/renovate.yml",
|
|
19
8
|
".github/workflows/stale.yml",
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
9
|
+
".github/workflows/update-syntax-description.yml",
|
|
10
|
+
".gitignore",
|
|
11
|
+
".python-version",
|
|
12
|
+
"CHEATSHEET.md",
|
|
13
|
+
"CLAUDE.md",
|
|
14
|
+
"HACKING.md",
|
|
15
|
+
"LICENSE",
|
|
16
|
+
"Makefile",
|
|
17
|
+
"README.md",
|
|
18
|
+
"ci/01-install.sh",
|
|
19
|
+
"ci/02-safe-tests.sh",
|
|
20
|
+
"ci/03-unsafe-tests.sh",
|
|
21
|
+
"pyproject.toml",
|
|
22
|
+
"renovate.json",
|
|
23
|
+
"src/cfengine_cli/__init__.py",
|
|
24
|
+
"src/cfengine_cli/__main__.py",
|
|
25
|
+
"src/cfengine_cli/cfengine_wrapper/__init__.py",
|
|
26
|
+
"src/cfengine_cli/cfengine_wrapper/arg_parse.py",
|
|
27
|
+
"src/cfengine_cli/cfengine_wrapper/cfengine_commands.py",
|
|
28
|
+
"src/cfengine_cli/cfengine_wrapper/cfengine_objects.py",
|
|
29
|
+
"src/cfengine_cli/cfengine_wrapper/cfengine_utils.py",
|
|
30
|
+
"src/cfengine_cli/changelog.py",
|
|
31
|
+
"src/cfengine_cli/commands.py",
|
|
32
|
+
"src/cfengine_cli/deptool-README.md",
|
|
33
|
+
"src/cfengine_cli/deptool.py",
|
|
34
|
+
"src/cfengine_cli/dev.py",
|
|
35
|
+
"src/cfengine_cli/docs.py",
|
|
36
|
+
"src/cfengine_cli/format.py",
|
|
37
|
+
"src/cfengine_cli/initialize_project.py",
|
|
38
|
+
"src/cfengine_cli/lint.py",
|
|
39
|
+
"src/cfengine_cli/lint_csv.py",
|
|
40
|
+
"src/cfengine_cli/lint_yml.py",
|
|
41
|
+
"src/cfengine_cli/main.py",
|
|
42
|
+
"src/cfengine_cli/masterfiles/__init__.py",
|
|
43
|
+
"src/cfengine_cli/masterfiles/analyze.py",
|
|
44
|
+
"src/cfengine_cli/masterfiles/check_download_matches_git.py",
|
|
45
|
+
"src/cfengine_cli/masterfiles/download.py",
|
|
46
|
+
"src/cfengine_cli/masterfiles/generate_git_tags.py",
|
|
47
|
+
"src/cfengine_cli/masterfiles/generate_release_information.py",
|
|
48
|
+
"src/cfengine_cli/masterfiles/generate_vcf_download.py",
|
|
49
|
+
"src/cfengine_cli/masterfiles/generate_vcf_git_checkout.py",
|
|
50
|
+
"src/cfengine_cli/paths.py",
|
|
51
|
+
"src/cfengine_cli/profile.py",
|
|
52
|
+
"src/cfengine_cli/shell.py",
|
|
53
|
+
"src/cfengine_cli/syntax-description.json",
|
|
54
|
+
"src/cfengine_cli/syntax_tree.py",
|
|
55
|
+
"src/cfengine_cli/up.py",
|
|
56
|
+
"src/cfengine_cli/utils.py",
|
|
57
|
+
"src/cfengine_cli/validate.py",
|
|
58
|
+
"src/cfengine_cli/version.py",
|
|
24
59
|
"tests/README.md",
|
|
25
|
-
"tests/up-validate/002_version.x.yaml",
|
|
26
|
-
"tests/up-validate/001_complex_config.yaml",
|
|
27
|
-
"tests/up-validate/004_count.x.yaml",
|
|
28
|
-
"tests/up-validate/003_box.x.yaml",
|
|
29
|
-
"tests/up-validate/mocks/cloud_config.json",
|
|
30
|
-
"tests/up-validate/mocks/vagrant",
|
|
31
|
-
"tests/shell/002-version.sh",
|
|
32
|
-
"tests/shell/003-format.sh",
|
|
33
|
-
"tests/shell/005-lint.sh",
|
|
34
|
-
"tests/shell/004-format-check.sh",
|
|
35
|
-
"tests/shell/001-help.sh",
|
|
36
|
-
"tests/format/006_remove_empty_comments.input.cf",
|
|
37
|
-
"tests/format/006_remove_empty_comments.expected.cf",
|
|
38
|
-
"tests/format/008_long_string.expected.cf",
|
|
39
|
-
"tests/format/012_sameline_comments.expected.cf",
|
|
40
|
-
"tests/format/007_class_guarded_empty_lines.input.cf",
|
|
41
|
-
"tests/format/011_promises.expected.cf",
|
|
42
|
-
"tests/format/012_sameline_comments.input.cf",
|
|
43
|
-
"tests/format/011_macros.input.cf",
|
|
44
|
-
"tests/format/008_long_string.input.cf",
|
|
45
|
-
"tests/format/005_bundle_comments.input.cf",
|
|
46
|
-
"tests/format/002_basics.expected.cf",
|
|
47
|
-
"tests/format/009_single_line.expected.cf",
|
|
48
|
-
"tests/format/007_class_guarded_empty_lines.expected.cf",
|
|
49
60
|
"tests/format/001_hello_world.expected.cf",
|
|
50
61
|
"tests/format/001_hello_world.input.cf",
|
|
62
|
+
"tests/format/002_basics.expected.cf",
|
|
63
|
+
"tests/format/002_basics.input.cf",
|
|
64
|
+
"tests/format/003_wrapping.expected.cf",
|
|
51
65
|
"tests/format/003_wrapping.input.cf",
|
|
52
|
-
"tests/format/010_stakeholder.expected.cf",
|
|
53
|
-
"tests/format/011_macros.expected.cf",
|
|
54
66
|
"tests/format/004_comments.expected.cf",
|
|
55
67
|
"tests/format/004_comments.input.cf",
|
|
56
|
-
"tests/format/
|
|
68
|
+
"tests/format/005_bundle_comments.expected.cf",
|
|
69
|
+
"tests/format/005_bundle_comments.input.cf",
|
|
70
|
+
"tests/format/006_remove_empty_comments.expected.cf",
|
|
71
|
+
"tests/format/006_remove_empty_comments.input.cf",
|
|
72
|
+
"tests/format/007_class_guarded_empty_lines.expected.cf",
|
|
73
|
+
"tests/format/007_class_guarded_empty_lines.input.cf",
|
|
74
|
+
"tests/format/008_long_string.expected.cf",
|
|
75
|
+
"tests/format/008_long_string.input.cf",
|
|
76
|
+
"tests/format/009_single_line.expected.cf",
|
|
57
77
|
"tests/format/009_single_line.input.cf",
|
|
58
|
-
"tests/format/
|
|
59
|
-
"tests/format/
|
|
78
|
+
"tests/format/010_stakeholder.expected.cf",
|
|
79
|
+
"tests/format/010_stakeholder.input.cf",
|
|
80
|
+
"tests/format/011_macros.expected.cf",
|
|
81
|
+
"tests/format/011_macros.input.cf",
|
|
82
|
+
"tests/format/011_promises.expected.cf",
|
|
60
83
|
"tests/format/011_promises.input.cf",
|
|
61
|
-
"tests/format/
|
|
84
|
+
"tests/format/012_sameline_comments.expected.cf",
|
|
85
|
+
"tests/format/012_sameline_comments.input.cf",
|
|
86
|
+
"tests/lint/001_hello_world.cf",
|
|
87
|
+
"tests/lint/002_deprecations.expected.txt",
|
|
62
88
|
"tests/lint/002_deprecations.x.cf",
|
|
63
|
-
"tests/lint/018_nested_calls.cf",
|
|
64
|
-
"tests/lint/012_function_call_arg_count.x.cf",
|
|
65
|
-
"tests/lint/004_block_type.expected.txt",
|
|
66
|
-
"tests/lint/009_unknown_function_inside_vars.cf",
|
|
67
|
-
"tests/lint/010_mutually_exclusive_types_vars.x.cf",
|
|
68
|
-
"tests/lint/014_variadic_func_arg_count.cf",
|
|
69
|
-
"tests/lint/013_num_args_bundle.expected.txt",
|
|
70
|
-
"tests/lint/017_implies_body.expected.txt",
|
|
71
89
|
"tests/lint/003_name_lowercase.cf",
|
|
72
|
-
"tests/lint/
|
|
73
|
-
"tests/lint/013_num_args_bundle.x.cf",
|
|
74
|
-
"tests/lint/011_invalid_attributes.expected.txt",
|
|
90
|
+
"tests/lint/003_name_lowercase.expected.txt",
|
|
75
91
|
"tests/lint/003_name_lowercase.x.cf",
|
|
76
|
-
"tests/lint/007_namespace.expected.txt",
|
|
77
|
-
"tests/lint/010_mutually_exclusive_types_vars.cf",
|
|
78
|
-
"tests/lint/020_missing_semicolon.x.cf",
|
|
79
|
-
"tests/lint/014_variadic_func_arg_count.expected.txt",
|
|
80
|
-
"tests/lint/018_nested_calls.expected.txt",
|
|
81
|
-
"tests/lint/015_macro_multi_def_bundle.cf",
|
|
82
|
-
"tests/lint/020_missing_braces.expected.txt",
|
|
83
|
-
"tests/lint/008_bundle_shadows_function.x.cf",
|
|
84
|
-
"tests/lint/002_deprecations.expected.txt",
|
|
85
|
-
"tests/lint/013_num_args_bundle_body.cf",
|
|
86
|
-
"tests/lint/012_function_call_arg_count.cf",
|
|
87
|
-
"tests/lint/015_macro_multi_def_bundle.x.cf",
|
|
88
|
-
"tests/lint/006_empty_file.x.cf",
|
|
89
|
-
"tests/lint/005_syntax_error.x.cf",
|
|
90
|
-
"tests/lint/020_missing_braces.x.cf",
|
|
91
|
-
"tests/lint/015_macro_multi_def_bundle.expected.txt",
|
|
92
|
-
"tests/lint/007_namespace.x.cf",
|
|
93
|
-
"tests/lint/017_implies_body.cf",
|
|
94
|
-
"tests/lint/020_missing_semicolon.expected.txt",
|
|
95
|
-
"tests/lint/007_namespace.cf",
|
|
96
|
-
"tests/lint/014_variadic_func_arg_count.x.cf",
|
|
97
|
-
"tests/lint/009_unknown_function_inside_vars.x.cf",
|
|
98
|
-
"tests/lint/008_bundle_shadows_function.expected.txt",
|
|
99
|
-
"tests/lint/012_function_call_arg_count.expected.txt",
|
|
100
|
-
"tests/lint/005_syntax_error.cf",
|
|
101
92
|
"tests/lint/004_block_type.cf",
|
|
102
|
-
"tests/lint/
|
|
103
|
-
"tests/lint/003_name_lowercase.expected.txt",
|
|
104
|
-
"tests/lint/013_num_args_body.expected.txt",
|
|
105
|
-
"tests/lint/009_unknown_function_inside_vars.expected.txt",
|
|
106
|
-
"tests/lint/016_half_promises.x.cf",
|
|
93
|
+
"tests/lint/004_block_type.expected.txt",
|
|
107
94
|
"tests/lint/004_block_type.x.cf",
|
|
108
|
-
"tests/lint/
|
|
95
|
+
"tests/lint/005_syntax_error.cf",
|
|
109
96
|
"tests/lint/005_syntax_error.expected.txt",
|
|
97
|
+
"tests/lint/005_syntax_error.x.cf",
|
|
110
98
|
"tests/lint/006_empty_file.expected.txt",
|
|
99
|
+
"tests/lint/006_empty_file.x.cf",
|
|
100
|
+
"tests/lint/007_namespace.cf",
|
|
101
|
+
"tests/lint/007_namespace.expected.txt",
|
|
102
|
+
"tests/lint/007_namespace.x.cf",
|
|
103
|
+
"tests/lint/008_bundle_shadows_function.cf",
|
|
104
|
+
"tests/lint/008_bundle_shadows_function.expected.txt",
|
|
105
|
+
"tests/lint/008_bundle_shadows_function.x.cf",
|
|
106
|
+
"tests/lint/009_unknown_function_inside_vars.cf",
|
|
107
|
+
"tests/lint/009_unknown_function_inside_vars.expected.txt",
|
|
108
|
+
"tests/lint/009_unknown_function_inside_vars.x.cf",
|
|
109
|
+
"tests/lint/010_mutually_exclusive_types_vars.cf",
|
|
111
110
|
"tests/lint/010_mutually_exclusive_types_vars.expected.txt",
|
|
111
|
+
"tests/lint/010_mutually_exclusive_types_vars.x.cf",
|
|
112
|
+
"tests/lint/011_invalid_attributes.expected.txt",
|
|
112
113
|
"tests/lint/011_invalid_attributes.x.cf",
|
|
114
|
+
"tests/lint/012_function_call_arg_count.cf",
|
|
115
|
+
"tests/lint/012_function_call_arg_count.expected.txt",
|
|
116
|
+
"tests/lint/012_function_call_arg_count.x.cf",
|
|
117
|
+
"tests/lint/013_num_args_body.expected.txt",
|
|
113
118
|
"tests/lint/013_num_args_body.x.cf",
|
|
114
|
-
"tests/lint/
|
|
115
|
-
"tests/lint/
|
|
119
|
+
"tests/lint/013_num_args_bundle.expected.txt",
|
|
120
|
+
"tests/lint/013_num_args_bundle.x.cf",
|
|
121
|
+
"tests/lint/013_num_args_bundle_body.cf",
|
|
122
|
+
"tests/lint/014_variadic_func_arg_count.cf",
|
|
123
|
+
"tests/lint/014_variadic_func_arg_count.expected.txt",
|
|
124
|
+
"tests/lint/014_variadic_func_arg_count.x.cf",
|
|
125
|
+
"tests/lint/015_macro_multi_def_bundle.cf",
|
|
126
|
+
"tests/lint/015_macro_multi_def_bundle.expected.txt",
|
|
127
|
+
"tests/lint/015_macro_multi_def_bundle.x.cf",
|
|
116
128
|
"tests/lint/016_half_promises.cf",
|
|
117
129
|
"tests/lint/016_half_promises.expected.txt",
|
|
118
|
-
"tests/
|
|
119
|
-
"tests/
|
|
120
|
-
"tests/
|
|
130
|
+
"tests/lint/016_half_promises.x.cf",
|
|
131
|
+
"tests/lint/017_implies_body.cf",
|
|
132
|
+
"tests/lint/017_implies_body.expected.txt",
|
|
133
|
+
"tests/lint/017_implies_body.x.cf",
|
|
134
|
+
"tests/lint/018_nested_calls.cf",
|
|
135
|
+
"tests/lint/018_nested_calls.expected.txt",
|
|
136
|
+
"tests/lint/018_nested_calls.x.cf",
|
|
137
|
+
"tests/lint/019_bundle_name_expansion.cf",
|
|
138
|
+
"tests/lint/020_missing_braces.expected.txt",
|
|
139
|
+
"tests/lint/020_missing_braces.x.cf",
|
|
140
|
+
"tests/lint/020_missing_semicolon.expected.txt",
|
|
141
|
+
"tests/lint/020_missing_semicolon.x.cf",
|
|
142
|
+
"tests/run-format-tests.sh",
|
|
143
|
+
"tests/run-lint-tests.sh",
|
|
144
|
+
"tests/run-shell-tests.sh",
|
|
145
|
+
"tests/run-up-validate-tests.sh",
|
|
146
|
+
"tests/shell/001-help.sh",
|
|
147
|
+
"tests/shell/002-version.sh",
|
|
148
|
+
"tests/shell/003-format.sh",
|
|
149
|
+
"tests/shell/004-format-check.sh",
|
|
150
|
+
"tests/shell/005-lint.sh",
|
|
121
151
|
"tests/unit/__init__.py",
|
|
122
|
-
"tests/unit/
|
|
123
|
-
"tests/unit/test_format.py",
|
|
152
|
+
"tests/unit/test_changelog.py",
|
|
124
153
|
"tests/unit/test_deps.py",
|
|
154
|
+
"tests/unit/test_format.py",
|
|
155
|
+
"tests/unit/test_lint_csv.py",
|
|
156
|
+
"tests/unit/test_lint_yml.py",
|
|
125
157
|
"tests/unit/test_paths.py",
|
|
126
158
|
"tests/unit/test_utils.py",
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"
|
|
132
|
-
"
|
|
133
|
-
"
|
|
134
|
-
"
|
|
135
|
-
"src/cfengine_cli/profile.py",
|
|
136
|
-
"src/cfengine_cli/deptool-README.md",
|
|
137
|
-
"src/cfengine_cli/lint.py",
|
|
138
|
-
"src/cfengine_cli/__init__.py",
|
|
139
|
-
"src/cfengine_cli/shell.py",
|
|
140
|
-
"src/cfengine_cli/deptool.py",
|
|
141
|
-
"src/cfengine_cli/changelog.py",
|
|
142
|
-
"src/cfengine_cli/validate.py",
|
|
143
|
-
"src/cfengine_cli/commands.py",
|
|
144
|
-
"src/cfengine_cli/up.py",
|
|
145
|
-
"src/cfengine_cli/version.py",
|
|
146
|
-
"src/cfengine_cli/__main__.py",
|
|
147
|
-
"src/cfengine_cli/syntax-description.json",
|
|
148
|
-
"src/cfengine_cli/lint_yml.py",
|
|
149
|
-
"src/cfengine_cli/format.py",
|
|
150
|
-
"src/cfengine_cli/paths.py",
|
|
151
|
-
"src/cfengine_cli/utils.py",
|
|
152
|
-
"src/cfengine_cli/masterfiles/generate_git_tags.py",
|
|
153
|
-
"src/cfengine_cli/masterfiles/generate_release_information.py",
|
|
154
|
-
"src/cfengine_cli/masterfiles/download.py",
|
|
155
|
-
"src/cfengine_cli/masterfiles/__init__.py",
|
|
156
|
-
"src/cfengine_cli/masterfiles/generate_vcf_git_checkout.py",
|
|
157
|
-
"src/cfengine_cli/masterfiles/generate_vcf_download.py",
|
|
158
|
-
"src/cfengine_cli/masterfiles/analyze.py",
|
|
159
|
-
"src/cfengine_cli/masterfiles/check_download_matches_git.py",
|
|
160
|
-
"src/cfengine_cli/cfengine_wrapper/cfengine_utils.py",
|
|
161
|
-
"src/cfengine_cli/cfengine_wrapper/__init__.py",
|
|
162
|
-
"src/cfengine_cli/cfengine_wrapper/arg_parse.py",
|
|
163
|
-
"src/cfengine_cli/cfengine_wrapper/cfengine_objects.py",
|
|
164
|
-
"src/cfengine_cli/cfengine_wrapper/cfengine_commands.py"
|
|
159
|
+
"tests/unit/test_version.py",
|
|
160
|
+
"tests/up-validate/001_complex_config.yaml",
|
|
161
|
+
"tests/up-validate/002_version.x.yaml",
|
|
162
|
+
"tests/up-validate/003_box.x.yaml",
|
|
163
|
+
"tests/up-validate/004_count.x.yaml",
|
|
164
|
+
"tests/up-validate/mocks/cloud_config.json",
|
|
165
|
+
"tests/up-validate/mocks/vagrant",
|
|
166
|
+
"uv.lock"
|
|
165
167
|
]
|
|
166
168
|
}
|