Merge remote-tracking branch 'ungleich/master' into cdist-type__hosts

This commit is contained in:
Darko Poljak 2017-02-02 19:45:48 +01:00
commit d3b3fef63b
227 changed files with 4524 additions and 427 deletions

View file

@ -3,6 +3,47 @@ Changelog
next:
* New type: __hosts: manage entries in /etc/hosts (Dmitry Bogatov)
* Core: Fix suppression of manifests' outputs (Darko Poljak)
* Type __user_groups: Support FreeBSD (Andres Erbsen)
* Type __cron: Fix filter for new cron on sles12 sp2 (Daniel Heule)
* Type __docker: Support absent state (Dominique Roux)
* Type __docker_compose: Support absent state (Dominique Roux)
4.4.1: 2016-12-17
* Documentation: Update docs for types that used man.rst as symbolic links (Darko Poljak)
* Type __cron: Remove '# marker' for raw_command due to cron security (Daniel Heule)
* New type: __docker_compose (Dominique Roux)
* Type __apt_mark: Check supported apt version and if package is installed (Ander Punnar)
* New type: __docker (Steven Armstrong)
* New type: __package_dpkg (Tomas Pospisek)
4.4.0: 2016-12-03
* Core: Deprecate -d option and make -v option log level counter (Darko Poljak)
* New type: __postgres_extension (Tomas Pospisek)
* Core, types: Support IPv6 (Darko Poljak)
* Type __consul: Add source and cksum files for Consul 0.7.0 and 0.7.1 (Carlos Ortigoza)
* Type __user: FreeBSD fix (Kamila Souckova)
* New type: __apt_mark (Ander Punnar)
* Type __package_upgrade_all: Do not dist-upgrade by default, add apt-clean and apt-dist-upgrade options (Ander Punnar)
* Core: Correct target_host var in code.py (Darko Poljak)
* All: Merge install feature from 4.0-pre-not-stable (Darko Poljak)
4.3.2: 2016-10-13
* Documentation: Update no longer existing links (Simon Walter)
* Core: Add warning message for faulty dependencies case (Darko Poljak)
* Explorer os_version: Use /etc/os-release instead of /etc/SuSE-release (Daniel Heule)
* Type __package: Call __package_pkg_openbsd on openbsd (Andres Erbsen)
* Type __package_pkg_openbsd: Support --version (Andres Erbsen)
* Type __hostname: Support openbsd (Andres Erbsen)
* New type: __firewalld_start: start/stop firewalld and/or enable/disable start on boot (Darko Poljak)
* Bugfix __consul_agent: Config option was misnamed 'syslog' instead of 'enable_syslog' (Steven Armstrong)
4.3.1: 2016-08-22
* Documentation: Spelling fixes (Darko Poljak)
* Type __filesystem: Spelling fixes (Dmitry Bogatov)
* Core: Add target_host file to cache since cache dir name can be hash (Darko Poljak)
* Core: Improve hostfile: support comments, skip empty lines (Darko Poljak)
>>>>>>> ungleich/master
4.3.0: 2016-08-19
* Documentation: Add Parallelization chapter (Darko Poljak)
@ -79,7 +120,7 @@ next:
* Type __consul_agent: Use systemd for Debian 8 (Nico Schottelius)
* Type __firewalld_rule: Ensure firewalld package is present (David Hürlimann)
* Type __locale: Support CentOS (David Hürlimann)
* Type __staged_file: Fix comparision operator (Nico Schottelius)
* Type __staged_file: Fix comparison operator (Nico Schottelius)
* Type __user_groups: Support old Linux versions (Daniel Heule)
3.1.12: 2015-03-19
@ -266,7 +307,7 @@ next:
3.0.1: 2014-01-14
* Core: Copy only files, not directories (Steven Armstrong)
* Core: Allow hostnames to start with / (Nico Schottelius)
* Type __line: Remove unecessary backslash escape (Nico Schottelius)
* Type __line: Remove unnecessary backslash escape (Nico Schottelius)
* Type __directory: Add messaging support (Daniel Heule)
* Type __directory: Do not generate code if mode is 0xxx (Daniel Heule)
* Type __package: Fix typo in optional parameter ptype (Daniel Heule)

View file

@ -0,0 +1,2 @@
- debootstrap for the moment
- add triggers: https://github.com/telmich/cdist/issues/214

View file

@ -0,0 +1,109 @@
- debootstrap
x setup arch
x allow cdist to configure debootstrapped directory using cdist
x include sshd
x configure network (eth0, dhcp)
x various mkfs variants
- various fdisk tools
x add option for different initial manifest
x allow -, stdin usage
x allow to replace current manifest (later)
x trigger
- can be handled in the manifest of the user
- remove /var/cache/apt/archives/* ?
- later, optimisation level
- bug: cdist config als root!
- fix linux-image name (amd64)
- ln -s /sbin/init /init
- blog!
- self configuring
x pxe
/pxe/
- pxelinux.0
- linux
- initramfs
- pxelinux.cfg/
- default
- iso
- later
- usb stick (+efi version)
- later
- add unit tests
- testing with qemu
[22:43] bento:vm-tests% qemu-system-x86_64 -m 2G -boot order=cn -drive file=testhd1,if=virtio -net nic -net user,tftp=$(pwd -P)/tftp,bootfile=/pxelinux.0,hostfwd=tcp::7777-:22 -enable-kvm
- create preos
[22:43] bento:preos-tests% echo __panter_root_ssh_keys | sudo cdist preos -vp /home/users/nico/vm-tests/tftp -c /home/users/nico/preos-tests/preos03/ -i -
--------------------------------------------------------------------------------
[1:16] bento:~% sudo cdist preos -vc ~nico/preos-tests/preos03
INFO: cdist: version 3.0.0-38-gea286c6
INFO: /home/users/nico/preos-tests/preos03: Running global explorers
INFO: /home/users/nico/preos-tests/preos03: Running initial manifest /tmp/tmpxbquwe/manifest
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __file/etc/network/interfaces
INFO: /home/users/nico/preos-tests/preos03: Generating code for __file/etc/network/interfaces
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/xfsprogs
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/reiser4progs
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/jfsutils
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/e2fsprogs
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/btrfs-tools
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/file
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/syslinux
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/openssh-server
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package/linux-image-amd64
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/linux-image-amd64
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/linux-image-amd64
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/openssh-server
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/openssh-server
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/syslinux
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/syslinux
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/file
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/file
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/btrfs-tools
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/btrfs-tools
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/e2fsprogs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/e2fsprogs
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/jfsutils
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/jfsutils
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/reiser4progs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/reiser4progs
INFO: /home/users/nico/preos-tests/preos03: Running manifest and explorers for __package_apt/xfsprogs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package_apt/xfsprogs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/xfsprogs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/reiser4progs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/jfsutils
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/e2fsprogs
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/btrfs-tools
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/file
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/syslinux
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/openssh-server
INFO: /home/users/nico/preos-tests/preos03: Generating code for __package/linux-image-amd64
INFO: /home/users/nico/preos-tests/preos03: Finished successful run in 2.546635866165161 seconds
[1:16] bento:~%
--------------------------------------------------------------------------------
[21:14] bento:vm-tests% qemu-system-x86_64 -m 2G -boot order=cn -drive file=testhd1,if=virtio -net nic -net user,tftp=$(pwd -P)/tftp,bootfile=/pxelinux.0
--------------------------------------------------------------------------------
[21:16] bento:preos-tests% sudo cdist preos -vp /home/users/nico/vm-tests/tftp /home/users/nico/preos-tests/preos03/
INFO: cdist: version 3.0.0-42-g0d78ab3
INFO: cdist.preos: Creating kernel ...
INFO: cdist.preos: Creating initramfs ...
760780 blocks
INFO: cdist.preos: Creating pxe configuration ...
INFO: cdist.preos: Creating pxelinux.0 ...

View file

@ -0,0 +1,49 @@
Objective:
Create a bootable media that contains everything to install and configure a system.
Ideas:
* usb stick
** uefi vs. bios
** contains cdist config
** static ip (?) (if at all)
** hostname setup to localhost
** install and config support
* preos from existing OS?
** requires kernel
** requires initramfs (self build)
** missing tools: cdist preos --config hostname...
* testing with qemu
* syslinux/isolinux?
Program:
- get tools
- get kernel
- provide fallback on cdist page
- archlinux: /boot/vmlinuz-linux
- create initramfs?
- create bootable media
- iso
- uefi-usb
- bios-usb
Tasks:
- Setup test environment
- qemu launcher
/usr/bin/qemu-system-x86_64 -boot d -m 256 -cdrom '/home/users/nico/oeffentlich/rechner/projekte/cdist/cdist/cdist-preos.iso'
- Create bootable image
- Test image
Log:
mkdir iso
cp /boot/vmlinuz-linux iso/
cp /usr/lib/syslinux/bios/isolinux.bin iso/
[22:36] freiheit:cdist% genisoimage -v -V "cdist preos v0.1" -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -b isolinux.bin -c boot.cat -o cdist-preos.iso iso
[22:38] freiheit:cdist% genisoimage -r -V "cdist preos v0.2" -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -b isolinux.bin -c boot.cat -o cdist-preos.iso iso

View file

@ -0,0 +1,32 @@
- basics of config
- wrapping to config
- testbed for CaaS!
- allow to include .cdist
- generate
- pxe
- iso
- package...
- mkfs
- fdisk*
- kernel
- types (?)
- iso?
-
- based on Arch Linux
- new types for iso?
- change __cdistmarker to accept prefix
- ISO / USB
genisoimage -r -V "cdist preos v0.2" -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -b isolinux.bin -c boot.cat -o cdist-preos.iso iso
- have a look at archiso?
http://www.syslinux.org/wiki/index.php/Isohybrid
-> uefi
-> mbr
- PXE

View file

@ -11,7 +11,7 @@ _BUILDDIR = _build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don\'t have Sphinx installed, grab it from http://sphinx-doc.org/)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don\'t have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.

View file

@ -58,7 +58,7 @@ you can clone it multiple times::
machine-b % git clone git://your-git-server/cdist
Seperating work by groups
Separating work by groups
-------------------------
If you are working with different groups on one cdist-configuration,
you can delegate to other manifests and have the groups edit only

View file

@ -7,7 +7,7 @@ Simplicity
There is only one type to extend cdist called **type**
Design
+ Type and core cleanly seperated
+ Type and core cleanly separated
+ Sticks completly to the KISS (keep it simple and stupid) paradigma
+ Meaningful error messages - do not lose time debugging error messages
+ Consistency in behaviour, naming and documentation

View file

@ -50,13 +50,13 @@ work nor kill the authors brain:
the other needs to be improved.
As soon as your work meets these requirements, write a mail
for inclusion to the mailinglist **cdist at cdist -- at -- l.schottelius.org**
or open a pull request at http://github.com/telmich/cdist.
for inclusion to the mailinglist **cdist-configuration-management at googlegroups.com**
or open a pull request at http://github.com/ungleich/cdist.
How to submit a new type
------------------------
For detailled information about types, see `cdist type <cdist-type.html>`_.
For detailed information about types, see `cdist type <cdist-type.html>`_.
Submitting a type works as described above, with the additional requirement
that a corresponding manpage named man.text in asciidoc format with
@ -77,7 +77,7 @@ The following workflow works fine for most developers
.. code-block:: sh
# get latest upstream master branch
git clone https://github.com/telmich/cdist.git
git clone https://github.com/ungleich/cdist.git
# update if already existing
cd cdist; git fetch -v; git merge origin/master

View file

@ -118,7 +118,7 @@ On line 4 you can see that the instantion of a type "\__link" object needs
the object "__file/etc/cdist-configured" to be present, before it can proceed.
This also means that the "\__link" command must make sure, that either
"\__file/etc/cdist-configured" allready is present, or, if it's not, it needs
"\__file/etc/cdist-configured" already is present, or, if it's not, it needs
to be created. The task of cdist is to make sure, that the dependency will be
resolved appropriately and thus "\__file/etc/cdist-configured" be created
if necessary before "__link" proceeds (or to abort execution with an error).
@ -216,7 +216,7 @@ How to override objects:
.. code-block:: sh
# for example in the inital manifest
# for example in the initial manifest
# create user account foobar with some hash for password
__user foobar --password 'some_fancy_hash' --home /home/foobarexample

View file

@ -56,7 +56,7 @@ code into your shell to get started and configure localhost::
# Get cdist
# Mirrors can be found on
# http://www.nico.schottelius.org/software/cdist/install/#index2h4
git clone git://git.schottelius.org/cdist
git clone git://github.com/ungleich/cdist
# Create manifest (maps configuration to host(s)
cd cdist

View file

@ -273,4 +273,7 @@ CDIST_REMOTE_EXEC
CDIST_REMOTE_COPY
Use this command for remote copy (should behave like scp).
CDIST_BETA
Enable beta functionalities.
eof

View file

@ -17,6 +17,11 @@ passing them to cdist with the --remote-exec and/or --remote-copy arguments.
For __remote_exec, the custom implementation must behave as if it where ssh.
For __remote_copy, it must behave like scp.
Please notice, custom implementations should work like ssh/scp so __remote_copy
must support IPv6 addresses enclosed in square brackets. For __remote_exec you
must take into account that for some options (like -L) IPv6 addresses can be
specified by enclosed in square brackets (see :strong:`ssh`\ (1) and
:strong:`scp`\ (1)).
With this simple interface the user can take total control of how cdist
interacts with the target when required, while the default implementation

View file

@ -51,6 +51,19 @@ Example:
__myfancysingleton --colour green
Config types
------------
By default types are used with config command. These are types that are not
flagged by any known command flag. If a type is marked then it will be skipped
with config command.
Install types
-------------
If a type is flagged with 'install' flag then it is used only with install command.
With other commands, i.e. config, these types are skipped if used.
How to write a new type
-----------------------
A type consists of
@ -126,7 +139,7 @@ Example: (e.g. in cdist/conf/type/__nginx_vhost/manifest)
# parameter with multiple values
if [ -f "$__object/parameter/server_alias" ]; then
for alias in $(cat "$__object/parameter/server_alias"); do
echo $alias > /some/where/usefull
echo $alias > /some/where/useful
done
fi
@ -209,6 +222,18 @@ As you can see, the object ID is omitted, because it does not make any sense,
if your type can be used only once.
Install - type with install command
-----------------------------------
If you want a type to be used with install command, you must mark it as
install: create the (empty) file "install" in your type directory:
.. code-block:: sh
touch cdist/conf/type/__install_NAME/install
With other commands, i.e. config, it will be skipped if used.
The type explorers
------------------
If a type needs to explore specific details, it can provide type specific
@ -251,6 +276,12 @@ script, you can write to stderr:
# Output to be saved by cdist for execution on the target
echo "touch /etc/cdist-configured"
Notice: if you use __remote_copy or __remote_exec directly in your scripts
then for IPv6 address with __remote_copy execution you should enclose IPv6
address in square brackets. The same applies to __remote_exec if it behaves
the same as ssh for some options where colon is a delimiter, as for -L ssh
option (see :strong:`ssh`\ (1) and :strong:`scp`\ (1)).
Variable access from the generated scripts
------------------------------------------

View file

@ -85,7 +85,7 @@ Use `messaging </software/cdist/man/3.0.0/man7/cdist-messaging.html>`_ instead.
Updating from 2.2 to 2.3
~~~~~~~~~~~~~~~~~~~~~~~~
No incompatiblities.
No incompatibilities.
Updating from 2.1 to 2.2
~~~~~~~~~~~~~~~~~~~~~~~~
@ -164,7 +164,7 @@ Updating from 1.5 to 1.6
Updating from 1.3 to 1.5
~~~~~~~~~~~~~~~~~~~~~~~~
No incompatiblities.
No incompatibilities.
Updating from 1.2 to 1.3
~~~~~~~~~~~~~~~~~~~~~~~~
@ -174,7 +174,7 @@ Rename **gencode** of every type to **gencode-remote**.
Updating from 1.1 to 1.2
~~~~~~~~~~~~~~~~~~~~~~~~
No incompatiblities.
No incompatibilities.
Updating from 1.0 to 1.1
~~~~~~~~~~~~~~~~~~~~~~~~

View file

@ -11,7 +11,7 @@ SYNOPSIS
::
cdist [-h] [-d] [-v] [-V] {banner,config,shell} ...
cdist [-h] [-d] [-v] [-V] {banner,config,shell,install} ...
cdist banner [-h] [-d] [-v]
@ -20,6 +20,11 @@ SYNOPSIS
[--remote-copy REMOTE_COPY] [--remote-exec REMOTE_EXEC]
[host [host ...]]
cdist install [-h] [-d] [-v] [-b] [-c CONF_DIR] [-f HOSTFILE]
[-i MANIFEST] [-j [JOBS]] [-n] [-o OUT_PATH] [-p] [-s]
[--remote-copy REMOTE_COPY] [--remote-exec REMOTE_EXEC]
[host [host ...]]
cdist shell [-h] [-d] [-v] [-s SHELL]
@ -41,11 +46,14 @@ All commands accept the following options:
.. option:: -d, --debug
Set log level to debug
Set log level to debug (deprecated, use -vvv instead)
.. option:: -v, --verbose
Set log level to info, be more verbose
Increase the verbosity level. Every instance of -v increments the verbosity
level by one. Its default value is 0. There are 4 levels of verbosity. The
order of levels from the lowest to the highest are: ERROR (0), WARNING (1),
INFO (2) and DEBUG (3 or higher).
.. option:: -V, --version
@ -58,14 +66,15 @@ Displays the cdist banner. Useful for printing
cdist posters - a must have for every office.
CONFIG
------
Configure one or more hosts.
CONFIG/INSTALL
--------------
Configure/install one or more hosts.
.. option:: -b, --enable-beta
.. option:: -b, --beta
Enable beta functionalities. Beta functionalities include the
following options: -j/--jobs.
Enable beta functionalities.
Can also be enabled using CDIST_BETA env var.
.. option:: -c CONF_DIR, --conf-dir CONF_DIR
@ -82,7 +91,7 @@ Configure one or more hosts.
Read additional hosts to operate on from specified file
or from stdin if '-' (each host on separate line).
If no host or host file is specified then, by default,
read hosts from stdin.
read hosts from stdin. For the file format see below.
.. option:: -i MANIFEST, --initial-manifest MANIFEST
@ -117,6 +126,20 @@ Configure one or more hosts.
Command to use for remote execution (should behave like ssh)
HOSTFILE FORMAT
~~~~~~~~~~~~~~~
HOSTFILE contains hosts per line.
All characters after and including '#' until the end of line is a comment.
In a line, all leading and trailing whitespace characters are ignored.
Empty lines are ignored/skipped.
Hostfile line is processed like the following. First, all comments are
removed. Then all leading and trailing whitespace characters are stripped.
If such a line results in empty line it is ignored/skipped. Otherwise,
host string is used.
SHELL
-----
This command allows you to spawn a shell that enables access
@ -138,6 +161,12 @@ cdist/conf
The distribution configuration directory. It contains official types and
explorers. This path is relative to cdist installation directory.
NOTES
-----
cdist detects if host is specified by IPv6 address. If so then remote_copy
command is executed with host address enclosed in square brackets
(see :strong:`scp`\ (1)).
EXAMPLES
--------
@ -177,6 +206,8 @@ EXAMPLES
usage: __git --source SOURCE [--state STATE] [--branch BRANCH]
[--group GROUP] [--owner OWNER] [--mode MODE] object_id
# Install ikq05.ethz.ch with debug enabled
% cdist install -d ikq05.ethz.ch
ENVIRONMENT
-----------
@ -193,7 +224,7 @@ CDIST_LOCAL_SHELL
Selects shell for local script execution, defaults to /bin/sh.
CDIST_REMOTE_SHELL
Selects shell for remote scirpt execution, defaults to /bin/sh.
Selects shell for remote script execution, defaults to /bin/sh.
CDIST_OVERRIDE
Allow overwriting type parameters.
@ -207,6 +238,9 @@ CDIST_REMOTE_EXEC
CDIST_REMOTE_COPY
Use this command for remote copy (should behave like scp).
CDIST_BETA
Enable beta functionalities.
EXIT STATUS
-----------
The following exit values shall be returned:
@ -218,7 +252,8 @@ The following exit values shall be returned:
AUTHORS
-------
Nico Schottelius <nico-cdist--@--schottelius.org>
Originally written by Nico Schottelius <nico-cdist--@--schottelius.org>
and Steven Armstrong <steven-cdist--@--armstrong.cc>.
CAVEATS
-------
@ -232,6 +267,35 @@ connection. In this case ssh will disable multiplexing.
This limit is controlled with sshd :strong:`MaxSessions` configuration
options. For more details refer to :strong:`sshd_config`\ (5).
When requirements for the same object are defined in different manifests (see
example below) in init manifest and in some other type manifest and they differs
then dependency resolver cannot detect dependencies right. This happens because
cdist cannot prepare all objects first and then run objects because some
object can depend on the result of type explorer(s) and explorers are executed
during object run. cdist will detect such case and write warning message.
Example for such a case:
.. code-block:: sh
init manifest:
__a a
require="__e/e" __b b
require="__f/f" __c c
__e e
__f f
require="__c/c" __d d
__g g
__h h
type __g manifest:
require="__c/c __d/d" __a a
Warning message:
WARNING: cdisttesthost: Object __a/a already exists with requirements:
/usr/home/darko/ungleich/cdist/cdist/test/config/fixtures/manifest/init-deps-resolver /tmp/tmp.cdist.test.ozagkg54/local/759547ff4356de6e3d9e08522b0d0807/data/conf/type/__g/manifest: set()
/tmp/tmp.cdist.test.ozagkg54/local/759547ff4356de6e3d9e08522b0d0807/data/conf/type/__g/manifest: {'__c/c', '__d/d'}
Dependency resolver could not handle dependencies as expected.
COPYING
-------
Copyright \(C) 2011-2013 Nico Schottelius. Free use of this software is

View file

@ -6,4 +6,7 @@ have a look at [all versions](/software/cdist/man).
You can also view [speeches about cdist](/software/cdist/speeches).
Checking out beta? Find the docs here:
[beta documentation](/software/cdist/man/beta).
[[!tag cdist unix]]

View file

@ -3,7 +3,7 @@ But cdist ticks differently, here is the feature set that makes it unique:
[[!table data="""
Keywords | Description
Simplicity | There is only one type to extend cdist called ***type***
Design | Type and core cleanly seperated
Design | Type and core cleanly separated
Design | Sticks completly to the KISS (keep it simple and stupid) paradigma
Design | Meaningful error messages - do not lose time debugging error messages
Design | Consistency in behaviour, naming and documentation

View file

@ -29,7 +29,7 @@ immediately.
To install cdist, execute the following commands:
git clone https://github.com/telmich/cdist.git
git clone https://github.com/ungleich/cdist.git
cd cdist
export PATH=$PATH:$(pwd -P)/bin

View file

@ -8,7 +8,7 @@ You can join the development ***IRC channel***
### Mailing list
Bug reports, questions, patches, etc. should be send to the
[cdist mailing list](http://l.schottelius.org/mailman/listinfo/cdist).
[cdist mailing list](https://groups.google.com/forum/#!forum/cdist-configuration-management).
### Linkedin
@ -17,6 +17,9 @@ at [Linked in](http://www.linkedin.com/),
you can join the
[cdist group](http://www.linkedin.com/groups/cdist-configuration-management-3952797).
### Chat
Chat with us: [ungleich chat](https://chat.ungleich.ch/channel/cdist).
### Commercial support
You can request commercial support for cdist from

View file

@ -67,7 +67,7 @@ Use [messaging](/software/cdist/man/3.0.0/man7/cdist-messaging.html) instead.
### Updating from 2.2 to 2.3
No incompatiblities.
No incompatibilities.
### Updating from 2.1 to 2.2
@ -134,7 +134,7 @@ Have a look at the update guide for [[2.0 to 2.1|2.0-to-2.1]].
### Updating from 1.3 to 1.5
No incompatiblities.
No incompatibilities.
### Updating from 1.2 to 1.3
@ -142,7 +142,7 @@ Rename **gencode** of every type to **gencode-remote**.
### Updating from 1.1 to 1.2
No incompatiblities.
No incompatibilities.
### Updating from 1.0 to 1.1

View file

@ -10,7 +10,7 @@ explorers and manifest to custom directories.
This document will guide you to a successful update.
## Preperation
## Preparation
As for every software and system you use in production, you should first of
all make a backup of your data. To prevent any breakage, it is
@ -35,7 +35,7 @@ Now try to merge upstream into the new branch.
% git merge origin/2.1
Fix any conflicts that may have been occurred due to local changes
and then **git add** and *git commit** those changes. This should seldomly
and then **git add** and *git commit** those changes. This should seldom
occur and if, it's mostly for people hacking on the cdist core.
## Move "conf" directory