GitHub Secrets — quick-ref
Propósito
Recordatorio mínimo para listar/usar secrets y resolver el clásico “Bad credentials”.
Hechos clave
- Los valores de los secrets no se pueden ver una vez seteados (solo los nombres). Gestión desde Settings → Secrets and variables → Actions, o por CLI.
Listar nombres de secrets
Vía GitHub CLI
brew install gh # macOS
sudo apt install gh # Linux
gh auth login
gh secret list
Muestra nombres (no valores).
Desde un workflow (solo nombres)
name: List Secrets
on: [push]
jobs:
list-secrets:
runs-on: ubuntu-latest
steps:
- name: Display secret names
run: |
echo "Available secrets:"
echo ${{ toJSON(secrets) }} | jq 'keys[]'
Imprime las keys disponibles. Útil para auditar naming.
Uso correcto en YAML (dispatch a otro repo)
- name: Send repository dispatch event
run: |
curl -X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token ${{ secrets.gh-auth-token }}" \
https://api.github.com/repos/<owner>/<repo>/dispatches \
-d '{"event_type":"models-updated"}'
Asegurate de referenciar el nombre real del secret (no placeholders).
“Bad credentials” — mini-runbook
- Nombre del secret en YAML coincide con Settings.
- Scopes del PAT:
repo
,workflow
. - Regenerar PAT si hay dudas y volver a guardarlo como secret.
- Espacios extra al copiar/pegar → eliminar.
- URL del repo destino exacta.
Si el problema persiste, migrar a Octokit para mejor manejo de errores o usar
workflow_dispatch
según ownership/permisos.
QA mínimo
- Job de prueba que liste solo nombres (sin exponer valores).
- Acción de
dispatch
deja green en origen y evento recibido en destino (logs de ambos).