#!/usr/bin/env bash
set -e
cd "$(dirname $(dirname "$0"))" || exit
source .env

PACKAGES=(
     "android/${PROJECT}_${VERSION}.apk"
     "debian/${PROJECT}_${VERSION}_all.deb"
     "archive/${PROJECT}_${VERSION}_linux.tar.gz"
     "archive/${PROJECT}_${VERSION}_win.zip"
     "installer/${PROJECT}_${VERSION}.exe"
)

for PACKAGE in "${PACKAGES[@]}"
do
     if [ -f "${PUBLISH_PATH}/${PACKAGE}" ]; then
          PACKAGE_NAME=$(basename "$PACKAGE")
          echo "publish: $PACKAGE"
          curl --user "${PUBLISH_USER}:${PUBLISH_PASSWORD}" -X DELETE \
               "${REPO}/generic/${PROJECT}/${VERSION}/${PACKAGE_NAME}"
          curl --user "${PUBLISH_USER}:${PUBLISH_PASSWORD}" \
               --upload-file "${PUBLISH_PATH}/${PACKAGE}" \
               "${REPO}/generic/${PROJECT}/${VERSION}/${PACKAGE_NAME}"

          if [[ "$PACKAGE" == *.deb ]]; then
               curl --user "${PUBLISH_USER}:${PUBLISH_PASSWORD}" -X DELETE \
                    "${REPO}/debian/pool/noble/main/${PROJECT}/${VERSION}/all"
               curl --user "${PUBLISH_USER}:${PUBLISH_PASSWORD}" \
                    --upload-file "${PUBLISH_PATH}/${PACKAGE}" \
                    "${REPO}/debian/pool/noble/main/upload"
          fi
     fi
done

DOCKER_ACTION=publish ./scripts/docker-action