name: Deploy HTML + release on: push: branches: [main] jobs: deploy: runs-on: ubuntu-22.04 container: image: catthehacker/ubuntu:act-22.04 volumes: - /srv/devops/data/apache/htdocs:/output steps: - name: Checkout uses: actions/checkout@v4 - name: Convertir y desplegar shell: bash run: | chmod +x convertir.sh ./convertir.sh - name: Obtener última tag id: get_tag run: | TAG=$(git describe --tags --abbrev=0) echo "Última tag encontrada: $TAG" echo "TAG=$TAG" >> $GITHUB_ENV - name: Crear release env: TOKEN: ${{ secrets.RELEASE_TOKEN }} FORGEJO_API: ${{ github.api_url }} REPO: ${{ github.repository }} TAG: ${{ env.TAG }} run: | RESPONSE=$(curl -s -X POST \ -H "Authorization: token ${TOKEN}" \ -H "Content-Type: application/json" \ -d "${JSON_PAYLOAD}" \ "${FORGEJO_API}/repos/${REPO}/releases") echo "Respuesta: ${RESPONSE}" RELEASE_ID=$(echo "${RESPONSE}" | jq -r '.id') if [ "${RELEASE_ID}" = "null" ] || [ -z "${RELEASE_ID}" ]; then echo "Error creando release" exit 1 fi echo "Release creado con ID: ${RELEASE_ID}" for FILE in release-dir/*; do [ -e "$FILE" ] || continue FILENAME=$(basename "${FILE}") echo "Subiendo ${FILENAME}..." curl -s -X POST \ -H "Authorization: token ${TOKEN}" \ -H "Content-Type: application/octet-stream" \ --data-binary @"${FILE}" \ "${FORGEJO_API}/repos/${REPO}/releases/${RELEASE_ID}/assets?name=${FILENAME}" done echo "Release completado correctamente"