#!/usr/bin/env bash
#
# Copyright (c) 2019-2020 Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#

# Generate a YAML file in order to dispatch Juno runs on LAVA. Note that this
# script would produce a meaningful output when run via. Jenkins
#
# $bin_mode must be set. This script outputs to STDOUT

ci_root="$(readlink -f "$(dirname "$0")/..")"
source "$ci_root/utils.sh"
source "$ci_root/juno_utils.sh"

get_recovery_image_url() {
	local build_job="tf-build"
	local bin_mode="${bin_mode:?}"

	if upon "$jenkins_run"; then
		echo "$jenkins_url/job/$JOB_NAME/$BUILD_NUMBER/artifact/artefacts/$bin_mode/juno_recovery.zip"
	else
		echo "file://$workspace/artefacts/$bin_mode/juno_recovery.zip"
	fi
}

bootloader_prompt="${bootloader_prompt:-juno#}"
recovery_img_url="${recovery_img_url:-$(get_recovery_image_url)}"
nfs_rootfs="${nfs_rootfs:-$juno_rootfs_url}"
linux_prompt="${linux_prompt:-root@(.*):~#}"

# Allow running juno tests on specific revision(r0/r1/r2).
juno_revision="${juno_revision:-}"
if [ ! -z "$juno_revision" ]; then
        tags="tags:"
        juno_revision="- ${juno_revision}"
else
        tags=""
fi

cat <<EOF
device_type: juno
job_name: tf-juno

context:
  bootloader_prompt: $bootloader_prompt

$tags
$juno_revision

timeouts:
  # Global timeout value for the whole job.
  job:
    minutes: 30
  # Unless explicitly overwritten, no single action should take more than
  # 10 minutes to complete.
  action:
    minutes: 10

priority: medium
visibility: public

actions:

- deploy:
    namespace: recovery
    to: vemsd
    recovery_image:
      url: $recovery_img_url
      compression: zip

- deploy:
    namespace: target
    to: nfs
    os: debian
    nfsrootfs:
      url: $nfs_rootfs
      compression: gz

- boot:
    # Drastically increase the timeout for the boot action because of the udev
    # issues when using TF build config "juno-all-cpu-reset-ops".
    # TODO: Should increase the timeout only for this TF build config, not all!
    timeout:
      minutes: 15
    namespace: target
    connection-namespace: recovery
    method: u-boot
    commands: norflash
    auto-login:
      login_prompt: 'login:'
      username: root
    prompts:
    - $linux_prompt
EOF
