#!/usr/bin/sh

set -e
set -u

VERSION='CICD_VERSION+CICD_IMAGE-rpi-CICD_REVISION'
IMAGE_PATH="/boot/vmlinuz-${VERSION}"

skip_initramfs_gen () {
  if [ -r '/etc/default/raspi-firmware' ]; then
    . /etc/default/raspi-firmware
  fi
  if [ "$(/usr/bin/echo "${SKIP_INITRAMFS_GEN}" | /usr/bin/tr '[:upper:]' '[:lower:]' | /usr/bin/sed 's/true\|1/yes/')" = 'yes' ]; then
    return 0
  fi
  return 1
}

case "${1}" in
  configure)
    depmod "${VERSION}"
    if [ -f "/lib/modules/${VERSION}/.fresh-install" ]; then
      CHANGE='install'
    else
      CHANGE='upgrade'
    fi
    /usr/bin/linux-update-symlinks "${CHANGE}" "${VERSION}" "${IMAGE_PATH}"
    /usr/bin/rm --force "/lib/modules/${VERSION}/.fresh-install"
  ;;
  *)
    exit 0
  ;;
esac

if [ -d '/etc/kernel/postinst.d' ]; then
  if skip_initramfs_gen; then
    export INITRD='No'
  fi
  DEB_MAINT_PARAMS="${*}" run-parts --report --exit-on-error --arg="${VERSION}" \
    --arg="${IMAGE_PATH}" '/etc/kernel/postinst.d'
fi
