- name: Crear release con debug env: RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }} run: | echo "=== Debug de token ===" if [ -z "$RELEASE_TOKEN" ]; then echo "❌ ERROR: RELEASE_TOKEN está vacío" exit 1 else echo "✅ Token presente (longitud: ${#RELEASE_TOKEN})" fi tag="${GITHUB_REF_NAME}" echo "=== Creando release ===" release_response=$(curl -s -w "\nHTTP:%{http_code}" -X POST \ -H "Authorization: token ${RELEASE_TOKEN}" \ -H "Content-Type: application/json" \ "${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/releases" \ -d "{ \"tag_name\": \"${tag}\", \"name\": \"Release ${tag}\", \"body\": \"Release automático\", \"draft\": false, \"prerelease\": false }") echo "$release_response" http_code=$(echo "$release_response" | grep "HTTP:" | cut -d: -f2) echo "Status HTTP: $http_code" if [ "$http_code" = "201" ]; then release_id=$(echo "$release_response" | grep -v "HTTP:" | jq -r '.id') echo "✅ Release ID: $release_id" for file in release-dir/*; do filename=$(basename "$file") echo "Subiendo $filename..." curl -X POST \ -H "Authorization: token ${RELEASE_TOKEN}" \ -H "Content-Type: application/octet-stream" \ --data-binary @"$file" \ "${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/releases/${release_id}/assets?name=${filename}" done else echo "❌ Error creando release" exit 1 fi