cfengine 0.22.0__tar.gz → 0.23.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.23.0/.coveragerc +5 -0
- cfengine-0.23.0/.github/workflows/coverage.yml +35 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/renovate.yml +1 -1
- {cfengine-0.22.0 → cfengine-0.23.0}/.gitignore +3 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/Makefile +14 -1
- {cfengine-0.22.0 → cfengine-0.23.0}/PKG-INFO +3 -3
- {cfengine-0.22.0 → cfengine-0.23.0}/pyproject.toml +3 -2
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/PKG-INFO +3 -3
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/SOURCES.txt +3 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/requires.txt +2 -2
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/scm_file_list.json +3 -0
- cfengine-0.23.0/src/cfengine.egg-info/scm_version.json +8 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/syntax-description.json +141 -12
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/004_block_type.expected.txt +1 -1
- cfengine-0.23.0/tests/lint/021_reactor_strtotime_silence.cf +13 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/uv.lock +139 -9
- cfengine-0.22.0/src/cfengine.egg-info/scm_version.json +0 -8
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/renovate-config.js +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/lint-policy-in-other-repos.yml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/make-check.yml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/pypi-publish.yml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/stale.yml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.github/workflows/update-syntax-description.yml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/.python-version +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/CHEATSHEET.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/CLAUDE.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/HACKING.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/LICENSE +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/README.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/ci/01-install.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/ci/02-safe-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/ci/03-unsafe-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/renovate.json +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/setup.cfg +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/dependency_links.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/entry_points.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine.egg-info/top_level.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/__init__.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/__main__.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/cfengine_wrapper/__init__.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/cfengine_wrapper/arg_parse.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/cfengine_wrapper/cfengine_commands.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/cfengine_wrapper/cfengine_objects.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/cfengine_wrapper/cfengine_utils.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/changelog.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/commands.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/deptool-README.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/deptool.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/dev.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/docs.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/format.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/initialize_project.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/lint.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/lint_csv.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/lint_yml.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/main.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/__init__.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/analyze.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/check_download_matches_git.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/download.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/generate_git_tags.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/generate_release_information.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/generate_vcf_download.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/masterfiles/generate_vcf_git_checkout.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/paths.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/profile.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/shell.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/syntax_tree.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/up.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/utils.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/validate.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/src/cfengine_cli/version.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/README.md +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/001_hello_world.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/001_hello_world.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/002_basics.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/002_basics.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/003_wrapping.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/003_wrapping.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/004_comments.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/004_comments.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/005_bundle_comments.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/005_bundle_comments.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/006_remove_empty_comments.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/006_remove_empty_comments.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/007_class_guarded_empty_lines.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/007_class_guarded_empty_lines.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/008_long_string.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/008_long_string.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/009_single_line.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/009_single_line.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/010_stakeholder.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/010_stakeholder.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/011_macros.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/011_macros.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/011_promises.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/011_promises.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/012_sameline_comments.expected.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/format/012_sameline_comments.input.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/001_hello_world.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/002_deprecations.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/002_deprecations.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/003_name_lowercase.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/003_name_lowercase.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/003_name_lowercase.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/004_block_type.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/004_block_type.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/005_syntax_error.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/005_syntax_error.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/005_syntax_error.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/006_empty_file.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/006_empty_file.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/007_namespace.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/007_namespace.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/007_namespace.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/008_bundle_shadows_function.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/008_bundle_shadows_function.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/008_bundle_shadows_function.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/009_unknown_function_inside_vars.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/009_unknown_function_inside_vars.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/009_unknown_function_inside_vars.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/010_mutually_exclusive_types_vars.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/010_mutually_exclusive_types_vars.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/010_mutually_exclusive_types_vars.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/011_invalid_attributes.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/011_invalid_attributes.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/012_function_call_arg_count.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/012_function_call_arg_count.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/012_function_call_arg_count.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/013_num_args_body.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/013_num_args_body.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/013_num_args_bundle.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/013_num_args_bundle.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/013_num_args_bundle_body.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/014_variadic_func_arg_count.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/014_variadic_func_arg_count.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/014_variadic_func_arg_count.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/015_macro_multi_def_bundle.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/015_macro_multi_def_bundle.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/015_macro_multi_def_bundle.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/016_half_promises.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/016_half_promises.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/016_half_promises.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/017_implies_body.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/017_implies_body.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/017_implies_body.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/018_nested_calls.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/018_nested_calls.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/018_nested_calls.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/019_bundle_name_expansion.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/020_missing_braces.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/020_missing_braces.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/020_missing_semicolon.expected.txt +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/lint/020_missing_semicolon.x.cf +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/run-format-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/run-lint-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/run-shell-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/run-up-validate-tests.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/shell/001-help.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/shell/002-version.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/shell/003-format.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/shell/004-format-check.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/shell/005-lint.sh +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/__init__.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_changelog.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_deps.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_format.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_lint_csv.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_lint_yml.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_paths.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_utils.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/unit/test_version.py +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/001_complex_config.yaml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/002_version.x.yaml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/003_box.x.yaml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/004_count.x.yaml +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/mocks/cloud_config.json +0 -0
- {cfengine-0.22.0 → cfengine-0.23.0}/tests/up-validate/mocks/vagrant +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
name: Fetch and upload coverage
|
|
2
|
+
|
|
3
|
+
permissions:
|
|
4
|
+
id-token: write
|
|
5
|
+
on:
|
|
6
|
+
push:
|
|
7
|
+
branches: [main]
|
|
8
|
+
pull_request:
|
|
9
|
+
branches: [main]
|
|
10
|
+
jobs:
|
|
11
|
+
coverage:
|
|
12
|
+
if: contains(fromJSON('["cfengine","mendersoftware","NorthernTechHQ"]'), github.repository_owner)
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
name: setup-python
|
|
15
|
+
env:
|
|
16
|
+
PYTHON_VERSION: "3.10"
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v7
|
|
19
|
+
- uses: actions/setup-python@v7
|
|
20
|
+
with:
|
|
21
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
22
|
+
- name: Install requirements
|
|
23
|
+
run: |
|
|
24
|
+
python -m pip install --upgrade pip
|
|
25
|
+
python -m pip install uv
|
|
26
|
+
uv lock --check
|
|
27
|
+
uv sync
|
|
28
|
+
- name: Run tests and collect coverage
|
|
29
|
+
run: make coverage
|
|
30
|
+
- name: Upload coverage reports to Codecov with GitHub Action
|
|
31
|
+
uses: codecov/codecov-action@v7
|
|
32
|
+
with:
|
|
33
|
+
use_oidc: true
|
|
34
|
+
env:
|
|
35
|
+
fail_ci_if_error: true
|
|
@@ -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.2.
|
|
15
|
+
uses: renovatebot/github-action@v46.2.4
|
|
16
16
|
with:
|
|
17
17
|
configurationFile: .github/renovate-config.js
|
|
18
18
|
token: ${{ secrets.RENOVATE_TOKEN }}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.PHONY: default format lint install check venv
|
|
1
|
+
.PHONY: default format lint install check venv coverage
|
|
2
2
|
|
|
3
3
|
default: check
|
|
4
4
|
|
|
@@ -22,6 +22,19 @@ lint: venv
|
|
|
22
22
|
install:
|
|
23
23
|
pipx install --force --editable .
|
|
24
24
|
|
|
25
|
+
|
|
26
|
+
export COVERAGE_PROCESS_START = $(PWD)/.coveragerc
|
|
27
|
+
coverage:
|
|
28
|
+
uv run coverage erase
|
|
29
|
+
uv run coverage run --parallel-mode -m pytest
|
|
30
|
+
uv run bash tests/run-lint-tests.sh
|
|
31
|
+
uv run bash tests/run-format-tests.sh
|
|
32
|
+
uv run bash tests/run-shell-tests.sh
|
|
33
|
+
uv run bash tests/run-up-validate-tests.sh
|
|
34
|
+
uv run coverage combine
|
|
35
|
+
uv run coverage report --fail-under=50
|
|
36
|
+
uv run coverage xml
|
|
37
|
+
|
|
25
38
|
check: venv format lint
|
|
26
39
|
uv run pytest
|
|
27
40
|
uv run bash tests/run-lint-tests.sh
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cfengine
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.23.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,8 +694,8 @@ 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.9.
|
|
698
|
-
Requires-Dist: cfbs>=5.
|
|
697
|
+
Requires-Dist: cf-remote>=0.9.5
|
|
698
|
+
Requires-Dist: cfbs>=5.7.0
|
|
699
699
|
Requires-Dist: tree-sitter-cfengine>=1.1.12
|
|
700
700
|
Requires-Dist: tree-sitter>=0.25
|
|
701
701
|
Requires-Dist: markdown-it-py>=3.0.0
|
|
@@ -10,8 +10,8 @@ readme = "README.md"
|
|
|
10
10
|
license = {file = "LICENSE"}
|
|
11
11
|
requires-python = ">=3.10"
|
|
12
12
|
dependencies = [
|
|
13
|
-
"cf-remote>=0.9.
|
|
14
|
-
"cfbs>=5.
|
|
13
|
+
"cf-remote>=0.9.5",
|
|
14
|
+
"cfbs>=5.7.0",
|
|
15
15
|
"tree-sitter-cfengine>=1.1.12",
|
|
16
16
|
"tree-sitter>=0.25",
|
|
17
17
|
"markdown-it-py>=3.0.0",
|
|
@@ -56,4 +56,5 @@ venv = ".venv"
|
|
|
56
56
|
dev = [
|
|
57
57
|
"flake8>=7.1.2",
|
|
58
58
|
"pytest>=8.3.4",
|
|
59
|
+
"coverage; python_version >= '3.10'",
|
|
59
60
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cfengine
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.23.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,8 +694,8 @@ 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.9.
|
|
698
|
-
Requires-Dist: cfbs>=5.
|
|
697
|
+
Requires-Dist: cf-remote>=0.9.5
|
|
698
|
+
Requires-Dist: cfbs>=5.7.0
|
|
699
699
|
Requires-Dist: tree-sitter-cfengine>=1.1.12
|
|
700
700
|
Requires-Dist: tree-sitter>=0.25
|
|
701
701
|
Requires-Dist: markdown-it-py>=3.0.0
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
.coveragerc
|
|
1
2
|
.gitignore
|
|
2
3
|
.python-version
|
|
3
4
|
CHEATSHEET.md
|
|
@@ -10,6 +11,7 @@ pyproject.toml
|
|
|
10
11
|
renovate.json
|
|
11
12
|
uv.lock
|
|
12
13
|
.github/renovate-config.js
|
|
14
|
+
.github/workflows/coverage.yml
|
|
13
15
|
.github/workflows/lint-policy-in-other-repos.yml
|
|
14
16
|
.github/workflows/make-check.yml
|
|
15
17
|
.github/workflows/pypi-publish.yml
|
|
@@ -150,6 +152,7 @@ tests/lint/020_missing_braces.expected.txt
|
|
|
150
152
|
tests/lint/020_missing_braces.x.cf
|
|
151
153
|
tests/lint/020_missing_semicolon.expected.txt
|
|
152
154
|
tests/lint/020_missing_semicolon.x.cf
|
|
155
|
+
tests/lint/021_reactor_strtotime_silence.cf
|
|
153
156
|
tests/shell/001-help.sh
|
|
154
157
|
tests/shell/002-version.sh
|
|
155
158
|
tests/shell/003-format.sh
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": [
|
|
3
|
+
".coveragerc",
|
|
3
4
|
".github/renovate-config.js",
|
|
5
|
+
".github/workflows/coverage.yml",
|
|
4
6
|
".github/workflows/lint-policy-in-other-repos.yml",
|
|
5
7
|
".github/workflows/make-check.yml",
|
|
6
8
|
".github/workflows/pypi-publish.yml",
|
|
@@ -139,6 +141,7 @@
|
|
|
139
141
|
"tests/lint/020_missing_braces.x.cf",
|
|
140
142
|
"tests/lint/020_missing_semicolon.expected.txt",
|
|
141
143
|
"tests/lint/020_missing_semicolon.x.cf",
|
|
144
|
+
"tests/lint/021_reactor_strtotime_silence.cf",
|
|
142
145
|
"tests/run-format-tests.sh",
|
|
143
146
|
"tests/run-lint-tests.sh",
|
|
144
147
|
"tests/run-shell-tests.sh",
|
|
@@ -525,6 +525,13 @@
|
|
|
525
525
|
"type": "option",
|
|
526
526
|
"visibility": "body"
|
|
527
527
|
},
|
|
528
|
+
"silence": {
|
|
529
|
+
"attribute": "silence",
|
|
530
|
+
"range": "content|add|remove|owner|group|perms|device|mtime|inode|stats|all",
|
|
531
|
+
"status": "normal",
|
|
532
|
+
"type": "slist",
|
|
533
|
+
"visibility": "body"
|
|
534
|
+
},
|
|
528
535
|
"update_hashes": {
|
|
529
536
|
"attribute": "update_hashes",
|
|
530
537
|
"range": "true,false,yes,no,on,off",
|
|
@@ -3357,6 +3364,17 @@
|
|
|
3357
3364
|
],
|
|
3358
3365
|
"status": "normal"
|
|
3359
3366
|
},
|
|
3367
|
+
"reactor": {
|
|
3368
|
+
"promiseTypes": [
|
|
3369
|
+
"events",
|
|
3370
|
+
"classes",
|
|
3371
|
+
"defaults",
|
|
3372
|
+
"meta",
|
|
3373
|
+
"reports",
|
|
3374
|
+
"vars"
|
|
3375
|
+
],
|
|
3376
|
+
"status": "normal"
|
|
3377
|
+
},
|
|
3360
3378
|
"server": {
|
|
3361
3379
|
"promiseTypes": [
|
|
3362
3380
|
"access",
|
|
@@ -3439,7 +3457,9 @@
|
|
|
3439
3457
|
"category": "data",
|
|
3440
3458
|
"collecting": false,
|
|
3441
3459
|
"minArgs": 0,
|
|
3442
|
-
"parameters": [
|
|
3460
|
+
"parameters": [
|
|
3461
|
+
{ "description": "Class expression", "range": ".*", "type": "string" }
|
|
3462
|
+
],
|
|
3443
3463
|
"returnType": "context",
|
|
3444
3464
|
"status": "normal",
|
|
3445
3465
|
"variadic": true
|
|
@@ -3653,7 +3673,18 @@
|
|
|
3653
3673
|
"category": "utils",
|
|
3654
3674
|
"collecting": false,
|
|
3655
3675
|
"minArgs": 1,
|
|
3656
|
-
"parameters": [
|
|
3676
|
+
"parameters": [
|
|
3677
|
+
{
|
|
3678
|
+
"description": "Regular expression",
|
|
3679
|
+
"range": ".*",
|
|
3680
|
+
"type": "string"
|
|
3681
|
+
},
|
|
3682
|
+
{
|
|
3683
|
+
"description": "Tag regular expression",
|
|
3684
|
+
"range": ".*",
|
|
3685
|
+
"type": "string"
|
|
3686
|
+
}
|
|
3687
|
+
],
|
|
3657
3688
|
"returnType": "slist",
|
|
3658
3689
|
"status": "normal",
|
|
3659
3690
|
"variadic": true
|
|
@@ -3729,7 +3760,18 @@
|
|
|
3729
3760
|
"category": "utils",
|
|
3730
3761
|
"collecting": false,
|
|
3731
3762
|
"minArgs": 1,
|
|
3732
|
-
"parameters": [
|
|
3763
|
+
"parameters": [
|
|
3764
|
+
{
|
|
3765
|
+
"description": "Regular expression",
|
|
3766
|
+
"range": ".*",
|
|
3767
|
+
"type": "string"
|
|
3768
|
+
},
|
|
3769
|
+
{
|
|
3770
|
+
"description": "Tag regular expression",
|
|
3771
|
+
"range": ".*",
|
|
3772
|
+
"type": "string"
|
|
3773
|
+
}
|
|
3774
|
+
],
|
|
3733
3775
|
"returnType": "context",
|
|
3734
3776
|
"status": "normal",
|
|
3735
3777
|
"variadic": true
|
|
@@ -3739,7 +3781,13 @@
|
|
|
3739
3781
|
"category": "data",
|
|
3740
3782
|
"collecting": false,
|
|
3741
3783
|
"minArgs": 0,
|
|
3742
|
-
"parameters": [
|
|
3784
|
+
"parameters": [
|
|
3785
|
+
{
|
|
3786
|
+
"description": "String to concatenate",
|
|
3787
|
+
"range": ".*",
|
|
3788
|
+
"type": "string"
|
|
3789
|
+
}
|
|
3790
|
+
],
|
|
3743
3791
|
"returnType": "string",
|
|
3744
3792
|
"status": "normal",
|
|
3745
3793
|
"variadic": true
|
|
@@ -3749,7 +3797,18 @@
|
|
|
3749
3797
|
"category": "utils",
|
|
3750
3798
|
"collecting": false,
|
|
3751
3799
|
"minArgs": 1,
|
|
3752
|
-
"parameters": [
|
|
3800
|
+
"parameters": [
|
|
3801
|
+
{
|
|
3802
|
+
"description": "Regular expression",
|
|
3803
|
+
"range": ".*",
|
|
3804
|
+
"type": "string"
|
|
3805
|
+
},
|
|
3806
|
+
{
|
|
3807
|
+
"description": "Tag regular expression",
|
|
3808
|
+
"range": ".*",
|
|
3809
|
+
"type": "string"
|
|
3810
|
+
}
|
|
3811
|
+
],
|
|
3753
3812
|
"returnType": "int",
|
|
3754
3813
|
"status": "normal",
|
|
3755
3814
|
"variadic": true
|
|
@@ -4192,7 +4251,13 @@
|
|
|
4192
4251
|
"category": "files",
|
|
4193
4252
|
"collecting": false,
|
|
4194
4253
|
"minArgs": 1,
|
|
4195
|
-
"parameters": [
|
|
4254
|
+
"parameters": [
|
|
4255
|
+
{
|
|
4256
|
+
"description": "Glob pattern to match files",
|
|
4257
|
+
"range": ".*",
|
|
4258
|
+
"type": "string"
|
|
4259
|
+
}
|
|
4260
|
+
],
|
|
4196
4261
|
"returnType": "slist",
|
|
4197
4262
|
"status": "normal",
|
|
4198
4263
|
"variadic": true
|
|
@@ -4737,7 +4802,14 @@
|
|
|
4737
4802
|
"category": "data",
|
|
4738
4803
|
"collecting": false,
|
|
4739
4804
|
"minArgs": 1,
|
|
4740
|
-
"parameters": [
|
|
4805
|
+
"parameters": [
|
|
4806
|
+
{ "description": "Class expression", "range": ".*", "type": "string" },
|
|
4807
|
+
{
|
|
4808
|
+
"description": "Value if the preceding class expression is true",
|
|
4809
|
+
"range": ".*",
|
|
4810
|
+
"type": "string"
|
|
4811
|
+
}
|
|
4812
|
+
],
|
|
4741
4813
|
"returnType": "string",
|
|
4742
4814
|
"status": "normal",
|
|
4743
4815
|
"variadic": true
|
|
@@ -5353,7 +5425,18 @@
|
|
|
5353
5425
|
"category": "data",
|
|
5354
5426
|
"collecting": true,
|
|
5355
5427
|
"minArgs": 1,
|
|
5356
|
-
"parameters": [
|
|
5428
|
+
"parameters": [
|
|
5429
|
+
{
|
|
5430
|
+
"description": "CFEngine variable identifier or inline JSON",
|
|
5431
|
+
"range": ".*",
|
|
5432
|
+
"type": "string"
|
|
5433
|
+
},
|
|
5434
|
+
{
|
|
5435
|
+
"description": "CFEngine variable identifier or inline JSON",
|
|
5436
|
+
"range": ".*",
|
|
5437
|
+
"type": "string"
|
|
5438
|
+
}
|
|
5439
|
+
],
|
|
5357
5440
|
"returnType": "data",
|
|
5358
5441
|
"status": "normal",
|
|
5359
5442
|
"variadic": true
|
|
@@ -5476,7 +5559,9 @@
|
|
|
5476
5559
|
"category": "data",
|
|
5477
5560
|
"collecting": false,
|
|
5478
5561
|
"minArgs": 0,
|
|
5479
|
-
"parameters": [
|
|
5562
|
+
"parameters": [
|
|
5563
|
+
{ "description": "Class expression", "range": ".*", "type": "string" }
|
|
5564
|
+
],
|
|
5480
5565
|
"returnType": "context",
|
|
5481
5566
|
"status": "normal",
|
|
5482
5567
|
"variadic": true
|
|
@@ -6799,7 +6884,18 @@
|
|
|
6799
6884
|
"collecting": true,
|
|
6800
6885
|
"maxArgs": 2,
|
|
6801
6886
|
"minArgs": 1,
|
|
6802
|
-
"parameters": [
|
|
6887
|
+
"parameters": [
|
|
6888
|
+
{
|
|
6889
|
+
"description": "Mustache template string",
|
|
6890
|
+
"range": ".*",
|
|
6891
|
+
"type": "string"
|
|
6892
|
+
},
|
|
6893
|
+
{
|
|
6894
|
+
"description": "CFEngine variable identifier or inline JSON, can be blank",
|
|
6895
|
+
"range": ".*",
|
|
6896
|
+
"type": "string"
|
|
6897
|
+
}
|
|
6898
|
+
],
|
|
6803
6899
|
"returnType": "string",
|
|
6804
6900
|
"status": "normal",
|
|
6805
6901
|
"variadic": true
|
|
@@ -6898,6 +6994,17 @@
|
|
|
6898
6994
|
"status": "normal",
|
|
6899
6995
|
"variadic": false
|
|
6900
6996
|
},
|
|
6997
|
+
"strtotime": {
|
|
6998
|
+
"cached": false,
|
|
6999
|
+
"category": "data",
|
|
7000
|
+
"collecting": false,
|
|
7001
|
+
"parameters": [
|
|
7002
|
+
{ "description": "String to parse", "range": ".*", "type": "string" }
|
|
7003
|
+
],
|
|
7004
|
+
"returnType": "int",
|
|
7005
|
+
"status": "normal",
|
|
7006
|
+
"variadic": false
|
|
7007
|
+
},
|
|
6901
7008
|
"sublist": {
|
|
6902
7009
|
"cached": false,
|
|
6903
7010
|
"category": "data",
|
|
@@ -7138,7 +7245,18 @@
|
|
|
7138
7245
|
"category": "data",
|
|
7139
7246
|
"collecting": false,
|
|
7140
7247
|
"minArgs": 1,
|
|
7141
|
-
"parameters": [
|
|
7248
|
+
"parameters": [
|
|
7249
|
+
{
|
|
7250
|
+
"description": "Regular expression",
|
|
7251
|
+
"range": ".*",
|
|
7252
|
+
"type": "string"
|
|
7253
|
+
},
|
|
7254
|
+
{
|
|
7255
|
+
"description": "Tag regular expression",
|
|
7256
|
+
"range": ".*",
|
|
7257
|
+
"type": "string"
|
|
7258
|
+
}
|
|
7259
|
+
],
|
|
7142
7260
|
"returnType": "slist",
|
|
7143
7261
|
"status": "normal",
|
|
7144
7262
|
"variadic": true
|
|
@@ -7148,7 +7266,18 @@
|
|
|
7148
7266
|
"category": "data",
|
|
7149
7267
|
"collecting": false,
|
|
7150
7268
|
"minArgs": 1,
|
|
7151
|
-
"parameters": [
|
|
7269
|
+
"parameters": [
|
|
7270
|
+
{
|
|
7271
|
+
"description": "Regular expression",
|
|
7272
|
+
"range": ".*",
|
|
7273
|
+
"type": "string"
|
|
7274
|
+
},
|
|
7275
|
+
{
|
|
7276
|
+
"description": "Tag regular expression",
|
|
7277
|
+
"range": ".*",
|
|
7278
|
+
"type": "string"
|
|
7279
|
+
}
|
|
7280
|
+
],
|
|
7152
7281
|
"returnType": "data",
|
|
7153
7282
|
"status": "normal",
|
|
7154
7283
|
"variadic": true
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
bundle notavalidtype my_bundle
|
|
3
3
|
^-----------^
|
|
4
|
-
Error: Bundle type must be one of (agent, common, edit_line, edit_xml, monitor, server, watch), not 'notavalidtype' at tests/lint/004_block_type.x.cf:1:8
|
|
4
|
+
Error: Bundle type must be one of (agent, common, edit_line, edit_xml, monitor, reactor, server, watch), not 'notavalidtype' at tests/lint/004_block_type.x.cf:1:8
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
promise server my_promise_type
|