Files
HomeAssistantAddons/ci/scripts/git_push_repo.sh
Martin Tahiraj c8dbd399ce refactor(ci): extract inline scripts to ci/scripts/
- ci/scripts/read_meta.py     legge version|build_from da config.yaml/json
- ci/scripts/update_repo.py   upserta repository.json
- ci/scripts/lint_addon.sh    hadolint + yaml/json + shellcheck
- ci/scripts/git_push_repo.sh  commit e push di repository.json

Rimuove writeFile /tmp/ dal Jenkinsfile

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-02 14:46:17 +02:00

37 lines
1.1 KiB
Bash

#!/usr/bin/env bash
# git_push_repo.sh <gitea_user> <gitea_base_url>
#
# Committa repository.json (se modificato) e lo pusha su main.
# Il messaggio include [skip ci] per evitare loop webhook.
#
# Variabili d'ambiente richieste:
# GITEA_PUSH_PSW — password/token Gitea (iniettata da withCredentials)
set -euo pipefail
GITEA_USER=${1:?Uso: git_push_repo.sh <gitea_user> <gitea_base_url>}
GITEA_BASE_URL=${2:?Uso: git_push_repo.sh <gitea_user> <gitea_base_url>}
GITEA_PSW=${GITEA_PUSH_PSW:?GITEA_PUSH_PSW non impostata}
git config user.email "jenkins@pipelines.mt-home.uk"
git config user.name "Jenkins CI"
git add repository.json
if git diff --staged --quiet; then
echo "[INFO] Nessuna modifica a repository.json — niente da committare"
exit 0
fi
git commit -m "chore: update repository.json [skip ci]"
# Rimuove schema (https://) per costruire l'URL con credenziali
GITEA_HOST=${GITEA_BASE_URL#https://}
GITEA_HOST=${GITEA_HOST#http://}
git push \
"https://oauth2:${GITEA_PSW}@${GITEA_HOST}/${GITEA_USER}/HomeAssistantAddons.git" \
HEAD:main
echo "[OK] repository.json pushato su main"