Saltar a contenido

Conectar GitHub a Coolify (organización)

Coolify no se “loguea” en github.com. Se crea una GitHub App, se instala en la organización FADUA-S-A y Coolify guarda App ID, Installation ID, secretos y la clave .pem. Recién ahí puede listar repos privados y desplegar.

Hace falta ser Owner o Admin de FADUA-S-A.

Dos caminos

Camino Cuándo
Automated installation (Register with GitHub) Preferido. Coolify rellena URLs, permisos y secretos.
Manual installation (Continue manually) Si GitHub abre el formulario vacío y hay que pegar cada campo. Es el que usamos al armar esta instancia.

Las dos empiezan igual: crear la Source en Coolify.

Parte 1 — Source en Coolify

  1. Entrá a https://coolify.fadua.ar.
  2. Menú izquierdo → Sources+ Add.
  3. Completá:
  4. Name: por ejemplo coolify-github-app-fadua-sla
  5. Organization: FADUA-S-A
    Exacto, el slug. Vacío = tu usuario personal, no la org.
  6. Continue.

Coolify abre la Source. En la barra de direcciones vas a ver:

https://coolify.fadua.ar/source/github/SOURCE_ID

Anotá el SOURCE_ID (el UUID después de /github/). Lo usa el Setup URL si vas por el camino manual.

Si ves dos tarjetas (Automated installation y Manual installation), todavía no hay App registrada. Elegí un camino abajo.


Parte 2A — Automático (recomendado para la próxima)

  1. En Webhook endpoint elegí https://coolify.fadua.ar, no la IP ni :8000.
  2. Preview deployments: opcional (Read and update pull requests si querés comentarios en PRs).
  3. Register with GitHub.
  4. GitHub abre el alta con los campos ya cargados. Nombre único → Create GitHub App.
  5. GitHub te devuelve a Coolify.
  6. Install repositories → organización FADUA-S-A → repos (por lo menos sla-crp-mkdocs) → Install.

Listo. Saltá a comprobar.


Parte 2B — Manual (lo que hay que hacer si GitHub pide todos los campos)

GitHub muestra un formulario largo (Homepage, Redirect URI, Webhook, Permissions…). Coolify no lo rellenó: hay que copiar los valores a mano y después Continue manually en Coolify para pegar IDs.

Dónde crear la App

No uses https://github.com/settings/apps/new (eso es tu usuario).

Usá:

https://github.com/organizations/FADUA-S-A/settings/apps/new

Si la App ya existe y https://github.com/settings/apps/NOMBRE da 404, es normal: la App es de la org. La URL correcta es:

https://github.com/organizations/FADUA-S-A/settings/apps/coolify-github-app-fadua-sla

Campos del formulario de GitHub

GitHub App name: coolify-github-app-fadua-sla (único en todo GitHub).

Homepage URL

https://coolify.fadua.ar

Redirect URI (Callback)

https://coolify.fadua.ar/webhooks/source/github/redirect
  • Allow wildcard matching → no
  • Expire user authorization tokens → no
  • Request user authorization during installation → no
  • Enable Device Flow → no

Setup URL (reemplazá SOURCE_ID por el UUID de Coolify)

https://coolify.fadua.ar/webhooks/source/github/install?source=SOURCE_ID

Redirect on update → sí

Webhook

  • Active → sí
  • Webhook URL:
https://coolify.fadua.ar/webhooks/source/github/events
  • Secret: una cadena larga al azar. La misma tiene que ir en Coolify. Ejemplo:
openssl rand -hex 32

Si aparece Enable SSL verification, activarlo.

Permissions

Dejá el resto en No access.

Repository permissions

Permiso Valor
Contents Read-only
Metadata Read-only
Pull requests Read and write

Account permissions

Permiso Valor
Email addresses Read-only

Subscribe to events

  • Push (obligatorio para auto-deploy)
  • Pull request (solo si querés preview de PRs)

Where can this GitHub App be installed?

Si creaste la App en la org: Only on this account (FADUA-S-A) está bien.

Si el formulario es de tu usuario (@fpadilla-fadua): tenés que elegir Any account. Si no, no se puede instalar en la org.

Create GitHub App.

Datos que GitHub te da después de crear

En la página de la App (la de la org):

  1. Anotá App ID (número, ej. 4873196).
  2. Anotá Client ID (Iv1.…).
  3. Generate a new client secret → copiá el secret (se ve una sola vez).
  4. Private keysGenerate a private key → se baja un .pem.
  5. El Webhook secret es el que pusiste vos, no uno nuevo.

Instalar en la organización (Installation ID)

El Installation ID no existe hasta que instalás la App. No es el App ID.

  1. En la App: Install App.
  2. Elegí FADUA-S-A, no tu usuario.
  3. Only select repositories → por lo menos sla-crp-mkdocs.
  4. Install.

GitHub deja una URL así:

https://github.com/organizations/FADUA-S-A/settings/installations/160061605

El número final (160061605 en esta instancia) es el Installation ID.

Lista de instalaciones de la org:

https://github.com/organizations/FADUA-S-A/settings/installations

Ahí → la App → Configure → el mismo número en la URL.

App ID ≠ Installation ID

Son dos números distintos. Pegar el App ID en Installation ID, o copiar un Installation ID viejo, termina en el error Failed to get installation token … Repository not found.

En el alta de este sitio Coolify tenía 160061585 y la instalación real era 160061605. Había que corregir el campo y guardar.

Pegar credenciales en Coolify

  1. Coolify → Keys & TokensPrivate Keys+ Add.
  2. Nombre: github-app-coolify-github-app-fadua-sla.
  3. Pegá todo el .pem (BEGINEND).
  4. Save.
  5. Sources → tu Source.
  6. Si todavía ves las dos tarjetas: Manual installationContinue manually.
  7. Completá:
Campo Coolify Valor
Organization FADUA-S-A
HTML URL https://github.com
API URL https://api.github.com
User git
Port 22
App ID el de la App
Installation ID el de .../installations/NUMERO en la org
Client ID el Iv1.…
Client secret el que generaste
Webhook secret el mismo del formulario de GitHub
Private key el .pem que cargaste en Keys
  1. Save. Sync name en verde = Coolify habla con GitHub.

Comprobar que quedó bien

Dónde Qué tenés que ver
Coolify → Source Organization FADUA-S-A, Installation ID de la org
GitHub → instalaciones de la org App instalada, repo sla-crp-mkdocs tildado
Coolify → New Application → GitHub App El repo aparece en el dropdown

Si el repo no aparece: en GitHub, esa instalación → Repository access → sumá el repo. En Coolify, Load repositories / Repositories.

Valores actuales de esta instancia

No copies secretos. IDs públicos de la instalación (se pueden rotar):

Campo Valor
Source en Coolify https://coolify.fadua.ar/source/github/cfhdieqgi58ypc97cqme1nbo
App ID 4873196
Installation ID (org) 160061605
Private key en Coolify github-app-coolify-github-app-fadua-sla

Client secret, webhook secret y .pem viven solo en Coolify y en GitHub. No van en este Markdown.

Siguiente paso

Desplegar una aplicación (ejemplo: este MkDocs).