Add utility for inspecting puppet module versions

This attempts to determine what versions of which modules are
in place on a system. It can handle both branch and tag checkouts.
It assumes all modules are pulled from git.

Change-Id: Id4100e3c967506e7b244534115185eeeddaac74f
This commit is contained in:
Spencer Krum 2015-04-17 15:17:29 -07:00
parent 9101a71cfa
commit 9b66718b4f

32
tools/module_versions.sh Normal file
View File

@ -0,0 +1,32 @@
#!/bin/bash
# Copyright 2014 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
for mod in $(ls /etc/puppet/modules/); do
echo -n "${mod}: "
cd /etc/puppet/modules/$mod
branch=$(git rev-parse --abbrev-ref HEAD)
if [[ $branch == "HEAD" ]]; then
tag=$(git name-rev --name-only --tags $(git rev-parse HEAD))
version=$tag
else
version=$branch
fi
echo $version
cd - >/dev/null
done