Commit graph

244 commits

Author SHA1 Message Date
f56f076765
Update CHANGELOG 2026-06-28 17:43:28 +10:00
f5b85d29d3
Better protection against symlink traversal in flatpak. Other hardening 2026-06-28 17:03:24 +10:00
903125976d
Remove 'enroll diff --enforce' option. Tighten yaml data re: handlers - use listen: instead of notify: 2026-06-28 16:01:11 +10:00
e9d7d74445
Remove puppet and salt 2026-06-25 16:54:23 +10:00
88e9dba39a
Revert "Byebye Enroll"
This reverts commit 958f8e3aa7.
2026-06-25 16:14:19 +10:00
680d286a20
Revert "So long, etc"
This reverts commit d99ba66951.
2026-06-25 16:14:08 +10:00
8a9fe82461
Revert "Fix typos"
This reverts commit 1d42b2bfb9.
2026-06-25 16:13:50 +10:00
1d42b2bfb9
Fix typos
Some checks failed
CI / test (push) Successful in 52s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Failing after 3m47s
CI / test (debian, docker.io/library/debian:13, python3) (push) Failing after 4m16s
Lint / test (push) Successful in 53s
2026-06-22 20:51:52 +10:00
d99ba66951
So long, etc
Some checks failed
CI / test (push) Successful in 53s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Failing after 3m52s
CI / test (debian, docker.io/library/debian:13, python3) (push) Failing after 4m23s
Lint / test (push) Has been cancelled
2026-06-22 20:40:51 +10:00
958f8e3aa7
Byebye Enroll
Some checks failed
Lint / test (push) Waiting to run
CI / test (push) Successful in 54s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Failing after 3m46s
CI / test (debian, docker.io/library/debian:13, python3) (push) Failing after 4m25s
2026-06-22 20:29:47 +10:00
d96ad3dc02
Some more hardening to not process raw jinja inside salt/ansible cmd. But, I think this is the end of the road
Some checks failed
Lint / test (push) Waiting to run
CI / test (push) Successful in 57s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Has been cancelled
CI / test (debian, docker.io/library/debian:13, python3) (push) Has been cancelled
2026-06-22 20:26:06 +10:00
c3c3608049
Validate state.json is a normal file 2026-06-22 17:47:36 +10:00
5757bf4275
Update DEVELOPMENT.md
All checks were successful
CI / test (push) Successful in 51s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 12m41s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 22m25s
Lint / test (push) Successful in 1m19s
2026-06-22 17:23:31 +10:00
992b8060a5
validation of artifact dir 2026-06-22 17:23:25 +10:00
efb6d7cc15
Be strict about XDG_CACHE_DIR ownership etc 2026-06-22 17:22:27 +10:00
4277e029d0
fix changelog
All checks were successful
CI / test (push) Successful in 52s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m50s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 21m39s
Lint / test (push) Successful in 47s
2026-06-22 15:39:22 +10:00
5930758398
Fix pyproject to make debian build happy 2026-06-22 15:39:17 +10:00
952687e15d
Ensure that --include-path records (but does not traverse) symlinks
Some checks failed
Lint / test (push) Waiting to run
CI / test (push) Failing after 44s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Has been cancelled
CI / test (debian, docker.io/library/debian:13, python3) (push) Has been cancelled
2026-06-22 15:34:44 +10:00
07b07e60c5
Ensure paths are not followed through parent links 2026-06-22 15:32:40 +10:00
e10a3f62b0
Belts and braces: normalise paths before globbing 2026-06-22 15:06:46 +10:00
c4448226c0
Ensure tests run through the poetry env's pytest 2026-06-22 15:05:48 +10:00
00f960d01e
Upgrade to Poetry 2 2026-06-22 15:03:32 +10:00
70525e52d8
Doc updates
All checks were successful
CI / test (push) Successful in 49s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m47s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m32s
Lint / test (push) Successful in 47s
2026-06-22 14:49:56 +10:00
ad019f6b09
normalise control characters in generated manifest scalars 2026-06-22 14:45:12 +10:00
cec6023a40
Ensure that diff also runs through validate()
All checks were successful
CI / test (push) Successful in 48s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m15s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m51s
Lint / test (push) Successful in 46s
2026-06-22 14:14:51 +10:00
1312b7eac2
Add SECURITY.md 2026-06-22 13:33:30 +10:00
a1d7a9e4e6
Add warning about --dangerous mode if sops is not in use
All checks were successful
CI / test (push) Successful in 50s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 12m37s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m21s
Lint / test (push) Successful in 45s
2026-06-22 12:56:21 +10:00
bf1c72c542
CHANGELOG updates 2026-06-22 12:47:39 +10:00
d93de8a8a2
Fix for remote harvest tmp dir 2026-06-22 12:46:45 +10:00
21a3ef3447
More safety about writing output harvests/manifests to safe locations, including SOPS and diff. 2026-06-22 12:21:33 +10:00
3feba9a9f2
More information about use of --dangerous mode 2026-06-22 12:03:48 +10:00
d1e99db2df
Update the cli help info about enroll.ini location 2026-06-22 12:00:48 +10:00
def1c2bbc7
Add note about README.md 2026-06-22 11:59:38 +10:00
e78f61c5ed
Avoid TOCTOU issues, stronger perms on manifest dir, don't allow harvesting to existing dir by default, scan whole file for potential secrets
All checks were successful
CI / test (push) Successful in 48s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m19s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m40s
Lint / test (push) Successful in 48s
2026-06-22 11:41:11 +10:00
c7a6bfe979
Update tests
All checks were successful
CI / test (push) Successful in 51s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m30s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 19m55s
Lint / test (push) Successful in 44s
2026-06-22 11:06:24 +10:00
a0914e1369
Strict validation of PATH when running as root in case it could contain potentially unsafe binaries 2026-06-22 11:06:01 +10:00
205c419a7a
Sanity check on FQDN name to avoid accidental path traversal and similar woes 2026-06-22 10:59:17 +10:00
3e8ad600e2
Use shlex.quote on remote commands 2026-06-22 10:58:20 +10:00
0a0f067111
Add other common strings that could represent sensitive values to ignore unless in --dangerous mode 2026-06-22 10:57:54 +10:00
e2b61bcdf1
Ensure jinjifying an artifact passes through safe_artifact_file just in case 2026-06-22 10:57:08 +10:00
03dc467e32
Updates to DEVELOPMENT.md re: manifest and validate 2026-06-22 10:09:31 +10:00
1e61ae2ff9
Fix tests for deb build
All checks were successful
CI / test (push) Successful in 49s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m32s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m1s
Lint / test (push) Successful in 44s
2026-06-22 10:05:17 +10:00
67b92731f6
Update tests
Some checks failed
Lint / test (push) Waiting to run
CI / test (push) Failing after 49s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Has been cancelled
CI / test (debian, docker.io/library/debian:13, python3) (push) Has been cancelled
2026-06-22 09:58:54 +10:00
0384f8817b
Fail closed on SMTP STARTTLS credential failure before sending creds. Ensure diff's manifest dir works now that we don't remove the target location if it exists (temp dir) 2026-06-22 09:57:56 +10:00
5ffd4ee755
Perform harvest validation before trying to manifest from it 2026-06-22 09:56:55 +10:00
706604df74
Stricter validation of harvests to ensure that they meet the schema and don't contain unsafe artifacts (e.g symlinks pointing outside the artifact tree) 2026-06-22 09:55:38 +10:00
a85e8265f4
Don't allow .enroll.ini in CWD, rely on env var or XDG path 2026-06-22 09:52:33 +10:00
6ee8c60e64
Fix the almalinux tests - skip jinjaturtle and systemd in CI
All checks were successful
CI / test (push) Successful in 46s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Successful in 11m26s
CI / test (debian, docker.io/library/debian:13, python3) (push) Successful in 20m24s
Lint / test (push) Successful in 45s
2026-06-21 17:49:51 +10:00
ce2652a3b3
Handle gracefully debian stuff when testing on rhel-like
Some checks failed
CI / test (push) Has been cancelled
Lint / test (push) Has been cancelled
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Failing after 5m10s
CI / test (debian, docker.io/library/debian:13, python3) (push) Failing after 10m10s
2026-06-21 16:15:33 +10:00
b704a6c80b
Add node before checkout
Some checks failed
Lint / test (push) Waiting to run
CI / test (push) Successful in 46s
CI / test (almalinux, docker.io/library/almalinux:9, python3.11) (push) Failing after 3m14s
CI / test (debian, docker.io/library/debian:13, python3) (push) Failing after 11m33s
2026-06-21 16:07:03 +10:00