Merge remote-tracking branch 'ungleich/master' into the-good-the-bad-and-the-ugly
This commit is contained in:
		
				commit
				
					
						e79519afce
					
				
			
		
					 13 changed files with 260 additions and 13 deletions
				
			
		| 
						 | 
				
			
			@ -67,13 +67,13 @@ class CdistBetaRequired(cdist.Error):
 | 
			
		|||
        if self.arg is None:
 | 
			
		||||
            err_msg = ("\'{}\' command is beta, but beta is "
 | 
			
		||||
                       "not enabled. If you want to use it please enable beta "
 | 
			
		||||
                       "functionalities by using the -b/--enable-beta command "
 | 
			
		||||
                       "functionalities by using the -b/--beta command "
 | 
			
		||||
                       "line flag or setting CDIST_BETA env var.")
 | 
			
		||||
            fmt_args = [self.command, ]
 | 
			
		||||
        else:
 | 
			
		||||
            err_msg = ("\'{}\' argument of \'{}\' command is beta, but beta "
 | 
			
		||||
                       "is not enabled. If you want to use it please enable "
 | 
			
		||||
                       "beta functionalities by using the -b/--enable-beta "
 | 
			
		||||
                       "beta functionalities by using the -b/--beta "
 | 
			
		||||
                       "command line flag or setting CDIST_BETA env var.")
 | 
			
		||||
            fmt_args = [self.arg, self.command, ]
 | 
			
		||||
        return err_msg.format(*fmt_args)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										49
									
								
								cdist/conf/type/__docker/man.rst
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								cdist/conf/type/__docker/man.rst
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,49 @@
 | 
			
		|||
cdist-type__docker(7)
 | 
			
		||||
=====================
 | 
			
		||||
 | 
			
		||||
NAME
 | 
			
		||||
----
 | 
			
		||||
cdist-type__docker - install docker-engine
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DESCRIPTION
 | 
			
		||||
-----------
 | 
			
		||||
Installs latest docker-engine package from dockerproject.org.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
REQUIRED PARAMETERS
 | 
			
		||||
-------------------
 | 
			
		||||
None.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
OPTIONAL PARAMETERS
 | 
			
		||||
-------------------
 | 
			
		||||
None.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
BOOLEAN PARAMETERS
 | 
			
		||||
------------------
 | 
			
		||||
experimental
 | 
			
		||||
   Install the experimental docker-engine package instead of the latest stable release.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
EXAMPLES
 | 
			
		||||
--------
 | 
			
		||||
 | 
			
		||||
.. code-block:: sh
 | 
			
		||||
 | 
			
		||||
    __docker
 | 
			
		||||
 | 
			
		||||
    # experimental
 | 
			
		||||
    __docker --experimental
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
AUTHORS
 | 
			
		||||
-------
 | 
			
		||||
Steven Armstrong <steven-cdist--@--armstrong.cc>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
COPYING
 | 
			
		||||
-------
 | 
			
		||||
Copyright \(C) 2016 Steven Armstrong. Free use of this software is
 | 
			
		||||
granted under the terms of the GNU General Public License version 3 (GPLv3).
 | 
			
		||||
							
								
								
									
										81
									
								
								cdist/conf/type/__docker/manifest
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										81
									
								
								cdist/conf/type/__docker/manifest
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,81 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# 2016 Steven Armstrong (steven-cdist at armstrong.cc)
 | 
			
		||||
#
 | 
			
		||||
# This file is part of cdist.
 | 
			
		||||
#
 | 
			
		||||
# cdist is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
#
 | 
			
		||||
# cdist is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
os=$(cat "$__global/explorer/os")
 | 
			
		||||
 | 
			
		||||
case "$os" in
 | 
			
		||||
   centos)
 | 
			
		||||
      component="main"
 | 
			
		||||
      if [ -f "$__object/parameter/experimental" ]; then
 | 
			
		||||
         component="experimental"
 | 
			
		||||
      fi
 | 
			
		||||
      export CDIST_ORDER_DEPENDENCY=on
 | 
			
		||||
      __yum_repo docker \
 | 
			
		||||
         --name 'Docker Repository' \
 | 
			
		||||
         --baseurl "https://yum.dockerproject.org/repo/$component/centos/\$releasever/" \
 | 
			
		||||
         --enabled \
 | 
			
		||||
         --gpgcheck \
 | 
			
		||||
         --gpgkey 'https://yum.dockerproject.org/gpg'
 | 
			
		||||
      __package docker-engine
 | 
			
		||||
      unset CDIST_ORDER_DEPENDENCY
 | 
			
		||||
   ;;
 | 
			
		||||
   ubuntu)
 | 
			
		||||
      component="main"
 | 
			
		||||
      if [ -f "$__object/parameter/experimental" ]; then
 | 
			
		||||
         component="experimental"
 | 
			
		||||
      fi
 | 
			
		||||
      __package apparmor
 | 
			
		||||
      __package ca-certificates
 | 
			
		||||
      __package apt-transport-https
 | 
			
		||||
      __apt_key docker --keyid 58118E89F3A912897C070ADBF76221572C52609D
 | 
			
		||||
      export CDIST_ORDER_DEPENDENCY=on
 | 
			
		||||
      __apt_source docker \
 | 
			
		||||
         --uri https://apt.dockerproject.org/repo \
 | 
			
		||||
         --distribution "ubuntu-$(cat "$__global/explorer/lsb_codename")" \
 | 
			
		||||
         --component "$component"
 | 
			
		||||
      __package docker-engine
 | 
			
		||||
      unset CDIST_ORDER_DEPENDENCY
 | 
			
		||||
   ;;
 | 
			
		||||
   debian)
 | 
			
		||||
       component="main"
 | 
			
		||||
      if [ -f "$__object/parameter/experimental" ]; then
 | 
			
		||||
         component="experimental"
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
      __package apt-transport-https
 | 
			
		||||
      __package ca-certificates
 | 
			
		||||
      __package gnupg2
 | 
			
		||||
      __apt_key docker --keyid 58118E89F3A912897C070ADBF76221572C52609D
 | 
			
		||||
      export CDIST_ORDER_DEPENDENCY=on
 | 
			
		||||
      __apt_source docker \
 | 
			
		||||
          --uri https://apt.dockerproject.org/repo \
 | 
			
		||||
          --distribution "debian-$(cat "$__global/explorer/lsb_codename")" \
 | 
			
		||||
          --component "$component"
 | 
			
		||||
      __package docker-engine
 | 
			
		||||
      unset CDIST_ORDER_DEPENDENCY
 | 
			
		||||
 | 
			
		||||
   ;;
 | 
			
		||||
   *)
 | 
			
		||||
      echo "Your operating system ($os) is currently not supported by this type (${__type##*/})." >&2
 | 
			
		||||
      echo "Please contribute an implementation for it if you can." >&2
 | 
			
		||||
      exit 1
 | 
			
		||||
   ;;
 | 
			
		||||
esac
 | 
			
		||||
							
								
								
									
										1
									
								
								cdist/conf/type/__docker/parameter/boolean
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__docker/parameter/boolean
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
experimental
 | 
			
		||||
							
								
								
									
										0
									
								
								cdist/conf/type/__docker/singleton
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								cdist/conf/type/__docker/singleton
									
										
									
									
									
										Normal file
									
								
							
							
								
								
									
										30
									
								
								cdist/conf/type/__package_dpkg/gencode-remote
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										30
									
								
								cdist/conf/type/__package_dpkg/gencode-remote
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,30 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# 2013 Tomas Pospisek (tpo_deb sourcepole.ch)
 | 
			
		||||
#
 | 
			
		||||
# This file is based on cdist's __file/gencode-local and part of cdist.
 | 
			
		||||
#
 | 
			
		||||
# cdist is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
#
 | 
			
		||||
# cdist is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
# This __package_dpkg type does not check whether a *.deb package is
 | 
			
		||||
# allready installed. It just copies the *.deb package over to the
 | 
			
		||||
# destination and installs it. We could use __package_apt to check
 | 
			
		||||
# whether a *.deb package is allready installed and only install it
 | 
			
		||||
# if we're given a --force argument or similar (would be clever not
 | 
			
		||||
# to conflict with dpkg's --force options). But currently we don't
 | 
			
		||||
# do any checks or --force'ing.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
echo "dpkg -i /var/cache/apt/archives/$__object_id"
 | 
			
		||||
							
								
								
									
										46
									
								
								cdist/conf/type/__package_dpkg/man.rst
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								cdist/conf/type/__package_dpkg/man.rst
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,46 @@
 | 
			
		|||
cdist-type__package_dpkg(7)
 | 
			
		||||
===========================
 | 
			
		||||
 | 
			
		||||
NAME
 | 
			
		||||
----
 | 
			
		||||
cdist-type__package_dpkg - Manage packages with dpkg
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DESCRIPTION
 | 
			
		||||
-----------
 | 
			
		||||
__package_dpkg is used on Debian and variants (like Ubuntu) to
 | 
			
		||||
install packages that are provided locally as *.deb files.
 | 
			
		||||
 | 
			
		||||
The object given to __package_dpkg must be the name of the deb package.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
REQUIRED PARAMETERS
 | 
			
		||||
-------------------
 | 
			
		||||
source
 | 
			
		||||
    path to the *.deb package
 | 
			
		||||
 | 
			
		||||
EXAMPLES
 | 
			
		||||
--------
 | 
			
		||||
 | 
			
		||||
.. code-block:: sh
 | 
			
		||||
 | 
			
		||||
    # Install foo and bar packages
 | 
			
		||||
    __package_dpkg --source /tmp/foo_0.1_all.deb foo_0.1_all.deb
 | 
			
		||||
    __package_dpkg --source $__type/files/bar_1.4.deb bar_1.4.deb
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
SEE ALSO
 | 
			
		||||
--------
 | 
			
		||||
:strong:`cdist-type__package`\ (7)
 | 
			
		||||
 | 
			
		||||
AUTHORS
 | 
			
		||||
-------
 | 
			
		||||
Tomas Pospisek <tpo_deb--@--sourcepole.ch>
 | 
			
		||||
 | 
			
		||||
COPYING
 | 
			
		||||
-------
 | 
			
		||||
Copyright \(C) 2013 Tomas Pospisek. You can redistribute it
 | 
			
		||||
and/or modify it under the terms of the GNU General Public License as
 | 
			
		||||
published by the Free Software Foundation, either version 3 of the
 | 
			
		||||
License, or (at your option) any later version.
 | 
			
		||||
This type is based on __package_apt.
 | 
			
		||||
							
								
								
									
										34
									
								
								cdist/conf/type/__package_dpkg/manifest
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								cdist/conf/type/__package_dpkg/manifest
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,34 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# 2013 Tomas Pospisek (tpo_deb sourcepole.ch)
 | 
			
		||||
#
 | 
			
		||||
# cdist is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
#
 | 
			
		||||
# cdist is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
#
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
# This __package_dpkg type does not check whether a *.deb package is
 | 
			
		||||
# allready installed. It just copies the *.deb package over to the
 | 
			
		||||
# destination and installs it. We could use __package_apt to check
 | 
			
		||||
# whether a *.deb package is allready installed and only install it
 | 
			
		||||
# if we're given a --force argument or similar (would be clever not
 | 
			
		||||
# to conflict with dpkg's --force options). But currently we don't
 | 
			
		||||
# do any checks or --force'ing.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
package_path=$( cat "$__object/parameter/source" )
 | 
			
		||||
package=$( basename "$__object_id" )
 | 
			
		||||
 | 
			
		||||
__file "/var/cache/apt/archives/$package" \
 | 
			
		||||
       --source "$package_path"           \
 | 
			
		||||
       --state  present
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										1
									
								
								cdist/conf/type/__package_dpkg/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__package_dpkg/parameter/required
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
source
 | 
			
		||||
| 
						 | 
				
			
			@ -36,7 +36,7 @@ _cdist()
 | 
			
		|||
            return 0
 | 
			
		||||
            ;;
 | 
			
		||||
        config|install)
 | 
			
		||||
            opts="-h --help -d --debug -v --verbose -b --enable-beta \
 | 
			
		||||
            opts="-h --help -d --debug -v --verbose -b --beta \
 | 
			
		||||
                -c --conf-dir -f --file -i --initial-manifest -j --jobs \
 | 
			
		||||
                -n --dry-run -o --out-dir -p --parallel -s --sequential \
 | 
			
		||||
                --remote-copy --remote-exec"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -36,7 +36,7 @@ _cdist()
 | 
			
		|||
                    esac
 | 
			
		||||
                    ;;
 | 
			
		||||
                config|install)
 | 
			
		||||
                    opts=(-h --help -d --debug -v --verbose -b --enable-beta -c --conf-dir -f --file -i --initial-manifest -j --jobs -n --dry-run -o --out-dir -p --parallel -s --sequential --remote-copy --remote-exec)
 | 
			
		||||
                    opts=(-h --help -d --debug -v --verbose -b --beta -c --conf-dir -f --file -i --initial-manifest -j --jobs -n --dry-run -o --out-dir -p --parallel -s --sequential --remote-copy --remote-exec)
 | 
			
		||||
                    compadd "$@" -- $opts
 | 
			
		||||
                    ;;
 | 
			
		||||
               *)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,15 +1,19 @@
 | 
			
		|||
Changelog
 | 
			
		||||
---------
 | 
			
		||||
 | 
			
		||||
next:
 | 
			
		||||
	* 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)
 | 
			
		||||
	* 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)
 | 
			
		||||
	* 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: fix target_host vars (Darko Poljak)
 | 
			
		||||
	* 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
 | 
			
		||||
| 
						 | 
				
			
			@ -20,7 +24,7 @@ Changelog
 | 
			
		|||
	* 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)
 | 
			
		||||
	* 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)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,10 +69,11 @@ 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
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue