name: Build debugd
description: Build the Constellation debugd binary

inputs:
  outputPath:
    description: "Output path of the binary"
    default: "./build/debugd"
    required: true

# Linux runner only (homedir trick does not work on macOS, required for private runner)
runs:
  using: "composite"
  steps:
    - name: Build debugd
      shell: bash
      env:
        OUTPUT_PATH: ${{ inputs.outputPath }}
      run: |
        echo "::group::Build debugd"
        mkdir -p "$(dirname "${OUTPUT_PATH}")"
        label=//debugd/cmd/debugd:debugd_linux_amd64
        bazel build "${label}"
        repository_root=$(git rev-parse --show-toplevel)
        out_rel=$(bazel cquery --output=files "${label}")
        out_loc="$(realpath "${repository_root}/${out_rel}")"
        cp "${out_loc}" "${OUTPUT_PATH}"
        chmod +w "${OUTPUT_PATH}"
        echo "::endgroup::"