#!/bin/bash

build() {
    add_checked_modules -f 'dm-' 'drivers/md/*'

    # check if a custom mdadm.conf exists
    if grep -qw ^ARRAY '/etc/mdadm.conf'; then
        echo "Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays."
        add_file "/etc/mdadm.conf"
    fi

    map add_udev_rule \
        '63-md-raid-arrays.rules' \
        '64-md-raid-assembly.rules'

    # For external metadata arrays (e.g. IMSM)
    add_binary mdmon
    if declare -F add_systemd_unit &>/dev/null; then
        add_systemd_unit 'mdmon@.service'
    fi
}

help() {
  cat <<HELPEOF
This hook loads the necessary modules for a RAID array and uses incremental
assembly via udev at runtime to create the devices. This hook will NOT work
without the udev hook included on the image.
HELPEOF
}

# vim: set ft=sh ts=4 sw=4 et:
