name: '"30 min" IIAB on Debian 12 on RPi 3'
# run-name: ${{ github.actor }} is testing out GitHub Actions 🚀

# https://michaelcurrin.github.io/dev-cheatsheets/cheatsheets/ci-cd/github-actions/triggers.html
on: [push, pull_request, workflow_dispatch]

# on:
#   push:
#
#   pull_request:
#
#   # Allows you to run this workflow manually from the Actions tab
#   workflow_dispatch:
#
#   # Set your workflow to run every day of the week from Monday to Friday at 6:00 UTC
#   schedule:
#     - cron: "0 6 * * 1-5"

jobs:
  test-install:
    runs-on: ubuntu-22.04
    strategy:
      matrix:
        arch: [debian12]
        include:
        - arch: debian12
          cpu: cortex-a7
          cpu_info: cpuinfo/raspberrypi_3b
          base_image: https://raspi.debian.net/daily/raspi_3_bookworm.img.xz
          # source https://raspi.debian.net/daily-images/
    steps:
      #- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
      #- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
      #- name: Dump GitHub context (typically almost 500 lines)
      #  env:
      #    GITHUB_CONTEXT: ${{ toJSON(github) }}
      #  run: echo "$GITHUB_CONTEXT"
      - name: Dump matrix context
        env:
          MATRIX_CONTEXT: ${{ toJSON(matrix) }}
        run: echo "$MATRIX_CONTEXT"
      - uses: actions/checkout@v3.1.0
      - uses: pguyot/arm-runner-action@v2
        with:
          image_additional_mb: 1024
          base_image: ${{ matrix.base_image }}
          cpu: ${{ matrix.cpu }}
          cpu_info: ${{ matrix.cpu_info }}
          copy_repository_path: /opt/iiab/iiab
          commands: |
              echo "🍏 This job's status is ${{ job.status }}."
              grep Model /proc/cpuinfo
              uname -a    # uname -srm
              whoami      # Typically 'root' instead of 'runner'
              pwd         # /home/runner/work/iiab/iiab == $GITHUB_WORKSPACE == ${{ github.workspace }}
              apt-get update -y --allow-releaseinfo-change
              apt-get install --no-install-recommends -y git
              ls /opt/iiab/iiab
              mkdir /etc/iiab
              cp /opt/iiab/iiab/vars/local_vars_none.yml /etc/iiab/local_vars.yml
              /opt/iiab/iiab/scripts/ansible
              ./iiab-install
              cd /opt/iiab/iiab
              iiab-summary
              cat /etc/iiab/iiab_state.yml