From dbf0767c4e0631364d4de909e3eb630c095a27f2 Mon Sep 17 00:00:00 2001 From: "phrawzty (dan)" Date: Fri, 6 Jan 2012 16:58:58 +0100 Subject: [PATCH] Add type __cdistmarker. --- conf/type/__cdistmarker/gencode-remote | 37 +++++++++++++++ conf/type/__cdistmarker/man.text | 55 ++++++++++++++++++++++ conf/type/__cdistmarker/parameter/optional | 2 + conf/type/__cdistmarker/singleton | 0 4 files changed, 94 insertions(+) create mode 100755 conf/type/__cdistmarker/gencode-remote create mode 100644 conf/type/__cdistmarker/man.text create mode 100644 conf/type/__cdistmarker/parameter/optional create mode 100644 conf/type/__cdistmarker/singleton diff --git a/conf/type/__cdistmarker/gencode-remote b/conf/type/__cdistmarker/gencode-remote new file mode 100755 index 00000000..e332df38 --- /dev/null +++ b/conf/type/__cdistmarker/gencode-remote @@ -0,0 +1,37 @@ +#!/bin/sh +# +# Copyright (C) 2011 Daniel Maher (phrawzty+cdist at gmail.com) +# +# This file is part of cdist (https://github.com/telmich/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 . +# + +# The marker file is established in the docs, but it isn't obligatory. +if [ -f "$__object/parameter/destination" ]; then + destination="$(cat "$__object/parameter/destination")" +else + destination='/etc/cdist-configured' +fi + +# The basic output of date is usually good enough, but variety is the +# spice of life... +if [ -f "$__object/parameter/format" ]; then + format="$(cat "$__object/parameter/format")" +else + format='-u' +fi + +# Dump the timestamp in UTC to the marker +echo "date $format > $destination" diff --git a/conf/type/__cdistmarker/man.text b/conf/type/__cdistmarker/man.text new file mode 100644 index 00000000..360598d8 --- /dev/null +++ b/conf/type/__cdistmarker/man.text @@ -0,0 +1,55 @@ +cdist-type__cdistmarker(7) +========================== +Daniel Maher + + +NAME +---- +cdist-type__cdistmarker - Add a timestamped cdist marker. + + +DESCRIPTION +----------- +This type is used to add a common marker file which indicates that a given +machine is being managed by cdist. The contents of this file consist of a +timestamp, which can be used to determine the most recent time at which cdist +was run against the machine in question. + + +REQUIRED PARAMETERS +------------------- +None. + + +OPTIONAL PARAMETERS +------------------- +destination:: + The path and filename of the marker. + Default: /etc/cdist-configured + +format:: + The format of the timestamp. This is passed directly to system 'date'. + Default: -u + + +EXAMPLES +-------- + +-------------------------------------------------------------------------------- +# Creates the marker as normal. +__cdistmarker + +# Creates the marker differently. +__cdistmarker --file /tmp/cdist_marker --format '+%s' +-------------------------------------------------------------------------------- + + +SEE ALSO +-------- +- cdist-type(7) + + +COPYING +------- +Copyright \(C) 2011 Daniel Maher. Free use of this software is granted under +the terms of the GNU General Public License version 3 (GPLv3). diff --git a/conf/type/__cdistmarker/parameter/optional b/conf/type/__cdistmarker/parameter/optional new file mode 100644 index 00000000..c8e637c0 --- /dev/null +++ b/conf/type/__cdistmarker/parameter/optional @@ -0,0 +1,2 @@ +destination +format diff --git a/conf/type/__cdistmarker/singleton b/conf/type/__cdistmarker/singleton new file mode 100644 index 00000000..e69de29b