name: Publicar Paquete SigPro (NPM) on: workflow_dispatch: push: tags: - 'v*' permissions: packages: write contents: read jobs: publish: runs-on: ubuntu-latest container: image: node:20-bullseye options: >- --dns 192.168.1.1 --add-host git.natxocc.com:host-gateway --add-host gitea:host-gateway steps: - name: Checkout código uses: actions/checkout@v4 env: GIT_CONFIG_PARAMETERS: "'url.https://git.natxocc.com/.insteadOf=http://gitea:3000/'" - name: Instalar Bun run: | curl -fsSL https://bun.sh/install | bash echo "$HOME/.bun/bin" >> $GITHUB_PATH - name: Instalar dependencias run: | export PATH="$HOME/.bun/bin:$PATH" bun install - name: Ejecutar Build run: | export PATH="$HOME/.bun/bin:$PATH" bun run build - name: Empaquetar y Publicar vía API (CURL) run: | # 1. Crear el archivo .tgz (empaquetado de npm) # Esto generará un archivo llamado sigpro-1.2.12.tgz (o la versión que toque) npm pack # 2. Capturar el nombre del archivo generado TARBALL_NAME=$(ls sigpro-*.tgz | head -n 1) echo "Archivo detectado: $TARBALL_NAME" # 3. Subida directa mediante CURL a la API de Gitea # Usamos el GITEA_TOKEN (PAT) que configuraste como secreto # La URL apunta directamente al endpoint de carga de paquetes de Gitea curl -v -X PUT \ -H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \ -F "package=@${TARBALL_NAME}" \ "https://git.natxocc.com/api/packages/natxocc/npm/"