Agama uses this code to initialize iSCSI and iBFT. It looks quite reasonable.
def activate
start_services
Yast::IscsiClientLib.getiBFT
# Check initiator name, creating one if missing.
return false unless Yast::IscsiClientLib.checkInitiatorName(silent: true)
# Why we need to sleep here? This was copied from yast2-iscsi-client.
