forked from ungleich-public/cdist
		
	Merge remote-tracking branch 'ungleich/master' into support-ipv6
This commit is contained in:
		
				commit
				
					
						e663aaee08
					
				
			
		
					 16 changed files with 156 additions and 7 deletions
				
			
		
							
								
								
									
										27
									
								
								cdist/conf/type/__apt_mark/explorer/state
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								cdist/conf/type/__apt_mark/explorer/state
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,27 @@
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 2016 Ander Punnar (cdist at kvlt.ee)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 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/>.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -f "$__object/parameter/name" ]; then
 | 
				
			||||||
 | 
					    name="$(cat "$__object/parameter/name")"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    name="$__object_id"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					apt-mark showhold | grep -q $name && echo hold || echo unhold
 | 
				
			||||||
							
								
								
									
										43
									
								
								cdist/conf/type/__apt_mark/gencode-remote
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								cdist/conf/type/__apt_mark/gencode-remote
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 2016 Ander Punnar (cdist at kvlt.ee)
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 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/>.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ -f "$__object/parameter/name" ]; then
 | 
				
			||||||
 | 
					    name="$(cat "$__object/parameter/name")"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    name="$__object_id"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					state_should="$(cat "$__object/parameter/state")"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					state_is="$(cat "$__object/explorer/state")"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ "$state_should" = "$state_is" ]; then
 | 
				
			||||||
 | 
					    exit 0
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					case "$state_should" in
 | 
				
			||||||
 | 
					    hold|unhold)
 | 
				
			||||||
 | 
					        echo "apt-mark $state_should $name > /dev/null"
 | 
				
			||||||
 | 
					    ;;
 | 
				
			||||||
 | 
					    *)
 | 
				
			||||||
 | 
					        echo "Unknown state: $state_should" >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					    ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
							
								
								
									
										47
									
								
								cdist/conf/type/__apt_mark/man.rst
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								cdist/conf/type/__apt_mark/man.rst
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,47 @@
 | 
				
			||||||
 | 
					cdist-type__apt_mark(7)
 | 
				
			||||||
 | 
					=======================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NAME
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					cdist-type__apt_mark - set package state as 'hold' or 'unhold'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DESCRIPTION
 | 
				
			||||||
 | 
					-----------
 | 
				
			||||||
 | 
					See apt-mark(8) for details.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					REQUIRED PARAMETERS
 | 
				
			||||||
 | 
					-------------------
 | 
				
			||||||
 | 
					state
 | 
				
			||||||
 | 
					   Either "hold" or "unhold".
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OPTIONAL PARAMETERS
 | 
				
			||||||
 | 
					-------------------
 | 
				
			||||||
 | 
					name
 | 
				
			||||||
 | 
					   If supplied, use the name and not the object id as the package name.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EXAMPLES
 | 
				
			||||||
 | 
					--------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. code-block:: sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # hold package
 | 
				
			||||||
 | 
					    __apt_mark quagga --state hold
 | 
				
			||||||
 | 
					    # unhold package
 | 
				
			||||||
 | 
					    __apt_mark quagga --state unhold
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					AUTHORS
 | 
				
			||||||
 | 
					-------
 | 
				
			||||||
 | 
					Ander Punnar <cdist--@--kvlt.ee>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					COPYING
 | 
				
			||||||
 | 
					-------
 | 
				
			||||||
 | 
					Copyright \(C) 2016 Ander Punnar. 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.
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__apt_mark/parameter/optional
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__apt_mark/parameter/optional
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					name
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__apt_mark/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__apt_mark/parameter/required
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					state
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.0/cksum
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.0/cksum
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					695240564 24003648 consul
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.0/source
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.0/source
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					https://releases.hashicorp.com/consul/0.7.0/consul_0.7.0_linux_amd64.zip
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.1/cksum
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.1/cksum
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					3128343188 28402769 consul
 | 
				
			||||||
							
								
								
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.1/source
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								cdist/conf/type/__consul/files/versions/0.7.1/source
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					https://releases.hashicorp.com/consul/0.7.1/consul_0.7.1_linux_amd64.zip
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,10 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type="$__object/parameter/type"
 | 
					type="$__object/parameter/type"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					apt_clean="$__object/parameter/apt-clean"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					apt_dist_upgrade="$__object/parameter/apt-dist-upgrade"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ -f "$type" ]; then
 | 
					if [ -f "$type" ]; then
 | 
				
			||||||
    type="$(cat "$type")"
 | 
					    type="$(cat "$type")"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
| 
						 | 
					@ -48,8 +52,15 @@ case "$type" in
 | 
				
			||||||
        echo "yum --quiet clean all"
 | 
					        echo "yum --quiet clean all"
 | 
				
			||||||
        ;;
 | 
					        ;;
 | 
				
			||||||
    apt)
 | 
					    apt)
 | 
				
			||||||
        echo $aptget dist-upgrade
 | 
					        if [ -f "$apt_dist_upgrade" ]
 | 
				
			||||||
        echo "apt-get --quiet autoclean"
 | 
					        then echo $aptget dist-upgrade
 | 
				
			||||||
 | 
					        else echo $aptget upgrade
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if [ -f "$apt_clean" ]
 | 
				
			||||||
 | 
					        then echo "apt-get --quiet clean"
 | 
				
			||||||
 | 
					        else echo "apt-get --quiet autoclean"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
        ;;
 | 
					        ;;
 | 
				
			||||||
    pacman)
 | 
					    pacman)
 | 
				
			||||||
        echo "pacman --noprogressbar --noconfirm --sync --sysupgrade"
 | 
					        echo "pacman --noprogressbar --noconfirm --sync --sysupgrade"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,6 +28,15 @@ type
 | 
				
			||||||
    * pacman for Arch Linux
 | 
					    * pacman for Arch Linux
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOLEAN PARAMETERS
 | 
				
			||||||
 | 
					------------------
 | 
				
			||||||
 | 
					apt-dist-upgrade
 | 
				
			||||||
 | 
					    Do dist-upgrade instead of upgrade.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					apt-clean
 | 
				
			||||||
 | 
					    Clean out the local repository of retrieved package files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EXAMPLES
 | 
					EXAMPLES
 | 
				
			||||||
--------
 | 
					--------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										2
									
								
								cdist/conf/type/__package_upgrade_all/parameter/boolean
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								cdist/conf/type/__package_upgrade_all/parameter/boolean
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,2 @@
 | 
				
			||||||
 | 
					apt-clean
 | 
				
			||||||
 | 
					apt-dist-upgrade
 | 
				
			||||||
| 
						 | 
					@ -104,7 +104,7 @@ if [ "$state" = "present" ]; then
 | 
				
			||||||
       if [ $# -gt 0 ]; then
 | 
					       if [ $# -gt 0 ]; then
 | 
				
			||||||
          echo mod >> "$__messages_out"
 | 
					          echo mod >> "$__messages_out"
 | 
				
			||||||
          if [ "$os" = "freebsd" ]; then
 | 
					          if [ "$os" = "freebsd" ]; then
 | 
				
			||||||
             echo pw usermod "$@" "$name"
 | 
					             echo pw usermod "$@" -n "$name"
 | 
				
			||||||
          else
 | 
					          else
 | 
				
			||||||
             echo usermod "$@" "$name"
 | 
					             echo usermod "$@" "$name"
 | 
				
			||||||
          fi
 | 
					          fi
 | 
				
			||||||
| 
						 | 
					@ -125,7 +125,7 @@ if [ "$state" = "present" ]; then
 | 
				
			||||||
        done
 | 
					        done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
       if [ "$os" = "freebsd" ]; then
 | 
					       if [ "$os" = "freebsd" ]; then
 | 
				
			||||||
          echo pw useradd "$@" "$name"
 | 
					          echo pw useradd "$@" -n "$name"
 | 
				
			||||||
       else
 | 
					       else
 | 
				
			||||||
          echo useradd "$@" "$name"
 | 
					          echo useradd "$@" "$name"
 | 
				
			||||||
       fi
 | 
					       fi
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -285,6 +285,7 @@ class Config(object):
 | 
				
			||||||
                host_fqdn = ''
 | 
					                host_fqdn = ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            target_host = (host, host_name, host_fqdn)
 | 
					            target_host = (host, host_name, host_fqdn)
 | 
				
			||||||
 | 
					            log.debug("target_host: {}".format(target_host))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            local = cdist.exec.local.Local(
 | 
					            local = cdist.exec.local.Local(
 | 
				
			||||||
                target_host=target_host,
 | 
					                target_host=target_host,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -100,9 +100,7 @@ class Code(object):
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    # target_host is tuple (target_host, target_hostname, target_fqdn)
 | 
					    # target_host is tuple (target_host, target_hostname, target_fqdn)
 | 
				
			||||||
    def __init__(self, target_host, local, remote):
 | 
					    def __init__(self, target_host, local, remote):
 | 
				
			||||||
        self.target_host = target_host[0]
 | 
					        self.target_host = target_host
 | 
				
			||||||
        self.target_hostname = target_host[1]
 | 
					 | 
				
			||||||
        self.target_fqdn = target_host[2]
 | 
					 | 
				
			||||||
        self.local = local
 | 
					        self.local = local
 | 
				
			||||||
        self.remote = remote
 | 
					        self.remote = remote
 | 
				
			||||||
        self.env = {
 | 
					        self.env = {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,6 +2,11 @@ Changelog
 | 
				
			||||||
---------
 | 
					---------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
next:
 | 
					next:
 | 
				
			||||||
 | 
						* Type __consul: add source and cksum files for Consul 0.7.0 and 0.7.1 (Carlos Ortigoza)
 | 
				
			||||||
 | 
						* Type __user: FreeBSD fix (Kamila Součková)
 | 
				
			||||||
 | 
						* 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)
 | 
				
			||||||
	* All: Merge install feature from 4.0-pre-not-stable (Darko Poljak)
 | 
						* All: Merge install feature from 4.0-pre-not-stable (Darko Poljak)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
4.3.2: 2016-10-13
 | 
					4.3.2: 2016-10-13
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue