feat: implementar script de rescate para pull requests y corregir entorno
Some checks failed
Release con IA Local / release-please (push) Failing after 19s
Some checks failed
Release con IA Local / release-please (push) Failing after 19s
This commit is contained in:
@@ -16,15 +16,57 @@ jobs:
|
|||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
# 1. Usar PAT, que ya tiene todos los permisos
|
# 1. Ejecutar Release Please (Con inyección de entorno)
|
||||||
- name: Release Please
|
- name: Release Please
|
||||||
id: release
|
id: release
|
||||||
uses: https://repo.eldiaservicios.com/dmolinari/gitea-release-please-action@main
|
uses: https://repo.eldiaservicios.com/dmolinari/gitea-release-please-action@main
|
||||||
|
# Le pasamos el token por entorno para evitar el 401 de Octokit
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
||||||
release-type: simple
|
release-type: simple
|
||||||
|
|
||||||
# 2. Generar notas con IA Local
|
# 2. Si Release Please falla al hacer el PR (Error 401), lo hacemos nosotros nativamente
|
||||||
|
- name: Rescate - Crear Pull Request Manualmente
|
||||||
|
if: failure()
|
||||||
|
env:
|
||||||
|
GITEA_TOKEN: ${{ secrets.RELEASE_PLEASE_TOKEN }}
|
||||||
|
REPO: ${{ github.repository }}
|
||||||
|
run: |
|
||||||
|
node -e '
|
||||||
|
async function run() {
|
||||||
|
const giteaUrl = "https://repo.eldiaservicios.com/api/v1";
|
||||||
|
const repo = process.env.REPO;
|
||||||
|
const token = process.env.GITEA_TOKEN;
|
||||||
|
|
||||||
|
console.log("Intentando rescatar el proceso y crear el PR nativamente...");
|
||||||
|
|
||||||
|
const prRes = await fetch(`${giteaUrl}/repos/${repo}/pulls`, {
|
||||||
|
method: "POST",
|
||||||
|
headers: {
|
||||||
|
"Authorization": `token ${token}`,
|
||||||
|
"Content-Type": "application/json"
|
||||||
|
},
|
||||||
|
body: JSON.stringify({
|
||||||
|
head: "release-please--branches--main",
|
||||||
|
base: "main",
|
||||||
|
title: "chore(main): release",
|
||||||
|
body: "🤖 Pull Request generado automáticamente por el sistema de CI/CD. (Rescatado por script)"
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
if (prRes.ok) {
|
||||||
|
console.log("✅ ¡Pull Request creado exitosamente por el script de rescate!");
|
||||||
|
} else {
|
||||||
|
console.log("❌ Falló el rescate:", await prRes.text());
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
run().catch(err => { console.error(err); process.exit(1); });
|
||||||
|
'
|
||||||
|
|
||||||
|
# 3. Generar notas con IA Local
|
||||||
- name: Generar notas con IA Local
|
- name: Generar notas con IA Local
|
||||||
if: ${{ steps.release.outputs.release_created }}
|
if: ${{ steps.release.outputs.release_created }}
|
||||||
env:
|
env:
|
||||||
|
|||||||
Reference in New Issue
Block a user