image: robertcnelson/beagle-devscripts-kernel-debian-12-amd64:latest
# https://openbeagle.org/beagleboard/ci-docker-images

before_script:
  - apt-get update -q
  - apt-get install -yq bc bison bmap-tools cpio debhelper dosfstools flex genimage kmod libelf-dev libssl-dev libyaml-dev lz4 mtools

variables:
  FF_USE_FASTZIP: "true"
  CACHE_COMPRESSION_LEVEL: "fast"

cache:
  key: "$CI_PROJECT_NAME"
  paths:
    - mirror/x86_64-gcc-*-linux.tar.xz
    - ccache.tar.lz4

build:
  tags:
    - docker-amd64
  stage: build
  script:
    - touch .gitlab-runner
    - ./01_git_sync.sh
    - ./02_build_hss.sh
    - ./03_build_u-boot.sh
    - mkdir -p /root/.cache/ccache/ || true
    - time tar --use-compress-program=lz4 -xf ccache.tar.lz4 -C / || true
    - ccache -s
    - ./04_build_linux.sh
    - ccache -s
    - time tar --use-compress-program=lz4 -cf ccache.tar.lz4 /root/.cache/ccache/
    - ./05_generate_payload.bin.sh
    - ./06_generate_ubuntu_console_root.sh
    - ./07_create_sdcard_img.sh
    - xz -vT8 deploy/images/sdcard.img
    - tree -s deploy/
    - cp -v deploy/images/sdcard.img.xz ./deploy/
    - cp -v deploy/images/sdcard.bmap ./deploy/
  artifacts:
    expire_in: 28 days
    name: "$CI_PROJECT_NAME-$CI_JOB_ID"
    paths:
      - "deploy/sdcard.img.xz"
      - "deploy/sdcard.bmap"
      - "deploy/readme.md"