Commit graph

7174 commits

Author SHA1 Message Date
Dennis Camera
e7369a1f99 [type/__uci_commit] Abort if uncommited changes are present on the target 2020-11-01 13:32:00 +01:00
Dennis Camera
3a3be36310 [type/__uci_commit] Send message on commit of a transaction 2020-11-01 11:01:25 +01:00
Dennis Camera
d3574b2d3e [type/__uci] Send messages when options are set to be altered 2020-11-01 11:01:25 +01:00
Dennis Camera
d8f20a6a20 [type/__uci] Implement "real" transactions using batch files 2020-11-01 11:01:25 +01:00
Dennis Camera
a09120977f [type/__uci] Allow omission of --value parameter if --state absent 2020-11-01 11:01:25 +01:00
Dennis Camera
55e7b32449 [type/__uci] Only generate __uci_commit if changes are required 2020-11-01 11:01:25 +01:00
Dennis Camera
e30ecdda53 Add __uci and __uci_commit types 2020-11-01 11:01:25 +01:00
Nico Schottelius
09dfcfe81e [scanner] add to beta commands 2020-10-29 23:16:08 +01:00
Nico Schottelius
91d99bf08a [RFC] scanner documentation 2020-10-29 21:22:36 +01:00
Nico Schottelius
87b46a6224 [scanner] finish prototype
ping @poljakowski - it's your turn now
2020-10-29 18:49:20 +01:00
Nico Schottelius
b9ad22595f [scanner] begin scanner implementation - non invasive 2020-10-29 18:03:27 +01:00
Dennis Camera
82a9aa7902 [type/__apt_norecommends] Use 00InstallRecommends file as debian-installer does
debian-installer can be preseeded with `base-installer/install-recommends` to
disable installation of recommended packages already during OS installation.
d-i will then create the file `/etc/apt/apt.conf.d/00InstallRecommends`
(cf. https://salsa.debian.org/installer-team/base-installer/-/blob/master/library.sh).

__apt_norecommends should use the same file to avoid having two config files
effectively doing the same thing.
2020-10-29 10:45:18 +01:00
Darko Poljak
9277e0ba19 ++changelog 2020-10-29 09:30:58 +01:00
eda96a06a0 Merge branch 'fix/type/__file/pre-exists-dryrun' into 'master'
__file: Fix --state pre-exists

See merge request ungleich-public/cdist!944
2020-10-29 09:29:41 +01:00
Dennis Camera
367da4b77e [type/__file] Fix --state pre-exists 2020-10-28 18:18:24 +01:00
aa5e882fce Merge branch 'master' into reorg 2020-10-21 20:26:51 +03:00
Darko Poljak
687c1d2dd9 ++changelog 2020-10-19 06:57:00 +02:00
b139ba2a5c Merge branch '__update_alternatives_improvements' into 'master'
[__update_alternatives] rewrite and support --install

See merge request ungleich-public/cdist!936
2020-10-19 06:55:35 +02:00
f96f23e970 Merge branch '__acl_remove_deprecated' into 'master'
[__acl] remove deprecated parameters, fix some bugs and improve manual

Closes #823

See merge request ungleich-public/cdist!933
2020-10-19 06:54:13 +02:00
716cd37281 [__update_alternatives] rewrite and support --install 2020-10-18 23:57:25 +03:00
e3d906a85f [__acl] remove deprecated parameters, fix some bugs and improve manual 2020-10-18 23:54:01 +03:00
6964070282 s/build-helper/cdist-build-helper/ 2020-10-18 17:13:22 +03:00
Darko Poljak
955b847276 ++changelog 2020-10-18 15:55:14 +02:00
112fb984c7 Merge branch 'fix/__download/manpage' into 'master'
__download: fix non-existent parameter of __unpack in manpage

See merge request ungleich-public/cdist!943
2020-10-18 15:51:58 +02:00
b2e6afb57e __download: adapt download+unpack example in manpage 2020-10-17 23:01:36 +02:00
d20fb74324 use os.path.realpath instead, because it eliminates any symbolic links encountered in the path 2020-10-17 23:16:42 +03:00
507fa6fa93 __download: fix non-existent parameter of __unpack
Probably happened due to renaming .. guess it's correct now.
2020-10-17 17:09:41 +02:00
54d83a6211 there is no single author anymore, also remove www. 2020-10-16 15:50:50 +03:00
e55db1b427 use check_output for git describe execution and define fallback VERSION earlier 2020-10-16 15:41:38 +03:00
b41d80075a update paths in setup.py 2020-10-16 14:16:04 +03:00
42d5d6c3e2 redundant str() 2020-10-16 14:12:39 +03:00
65c8af4ba3 overengineered version discovery 2020-10-16 14:11:12 +03:00
174aa77280 __file__ already is absolute 2020-10-16 14:11:00 +03:00
1614b62f70 fallback VERSION to "unknown version" 2020-10-16 13:48:28 +03:00
fd04c03613 add parent dir to module search path only when importing fails 2020-10-16 13:42:16 +03:00
86057cef19 don't die if there is no version.py 2020-10-14 02:20:58 +03:00
fdc1ab93e9 move scripts/* to bin/ 2020-10-14 02:20:58 +03:00
3f1939716f enable running scripts/cdist directly and symlinked 2020-10-14 02:20:30 +03:00
45d51c0e15 rename build-helper -> cdist-build-helper 2020-10-14 02:18:25 +03:00
8ecae42199 remove bin/cdist script 2020-10-14 02:18:25 +03:00
Darko Poljak
4df5c91912 ++changelog 2020-10-09 06:52:52 +02:00
1057ceef01 Merge branch 'line-replace' into 'master'
[__line] Add support for '--state replace'

See merge request ungleich-public/cdist!939
2020-10-09 06:51:45 +02:00
c030deea3d [__line] Add support for '--state replace'
It is currently counter-intuitive that something like:

    # File '/thing' contents
    #SomeSetting WrongValue

    # Manifest
    __line '/thing' \
           --line 'SomeSeting GoodValue' \
           --regex '^(#[[:space:]]*)?SomeSetting[[:space:]]'

Produces:

    # Resulting '/thing' contents
    #SomeSetting WrongValue

This makes sense given the implementation, but it masks a very common use-case.

Changing the default behaviour for such a base type is not really an option, so
instead we add a `replace` as a valid value for `--state`, which would result
in:

    # Resulting '/thing' contents with: --state replace
    SomeSetting GoodValue

For compatibility, if the regex is missing, `--state replace` behaves just as
`--state present`.
2020-10-09 06:51:44 +02:00
68a280d51a Merge branch '__service-fix' into 'master'
Fixed calling of __systemd_service type with correct arguments.

See merge request ungleich-public/cdist!941
2020-10-09 06:47:54 +02:00
Mark Verboom
5aeed14b1b Fixed calling of __systemd_service type with correct arguments. 2020-10-08 16:15:20 +02:00
Darko Poljak
3fa74b454a Fix typo 2020-09-30 15:43:32 +02:00
Darko Poljak
52b5f05163 ++changelog 2020-09-30 08:56:31 +02:00
34a7d8c280 Merge branch 'pkgng_freebsd-bootstrap' into 'master'
[__package_pkgng_freebsd] Bootstrap pkg if necessary

See merge request ungleich-public/cdist!940
2020-09-30 08:42:43 +02:00
f994226d0e [__package_pkgng_freebsd] Bootstrap pkg if necessary
In a pristine FreeBSD base installation, pkg is really a bootstrapper utility,
in such cases the type used to fail instead of automatically bootstrapping pkg.
2020-09-29 19:47:59 +02:00
Darko Poljak
652c891858 ++changelog 2020-09-29 05:57:54 +02:00