#!/bin/sh
#
# 2011-2014 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/>.
#
#
# Get the current state of the apt key.
#

if [ -f "$__object/parameter/keyid" ]; then
   keyid="$(cat "$__object/parameter/keyid")"
else
   keyid="$__object_id"
fi

# From apt-key(8):
#   Use of apt-key is deprecated, except for the use of apt-key del in
#   maintainer scripts to remove existing keys from the main keyring.
#   If such usage of apt-key is desired the additional installation of
#   the GNU Privacy Guard suite (packaged in gnupg) is required.
if [ -f "${__object}/parameter/use-deprecated-apt-key" ]; then
   if apt-key export "$keyid" | head -n 1 | grep -Fqe "BEGIN PGP PUBLIC KEY BLOCK"
      then echo present
      else echo absent
   fi
   exit
fi

keydir="$(cat "$__object/parameter/keydir")"
keyfile="$keydir/$__object_id.gpg"

if [ -f "$keyfile" ]
then
   echo present
   exit
fi
echo absent
