Afegir secrets i variables d’entorn als workflows
En els processos de Integració Contínua (CI) i Desplegament Continu (CD), sovint necessitem utilitzar dades sensibles com claus d’API, tokens, o contrasenyes. Per evitar exposar aquesta informació en el codi, GitHub Actions (i altres plataformes de CI/CD) permeten gestionar secrets i variables d’entorn de forma segura.
Què són els secrets i les variables d’entorn?
- Secrets: Són valors xifrats que es guarden a GitHub (o la plataforma que utilitzis) i només es poden llegir durant l’execució dels workflows. No es mostren en els logs.
- Variables d’entorn: Són variables disponibles per als passos dels workflows, que poden contenir informació no sensible o configuracions generals.
Com afegir secrets a GitHub
Per afegir secrets al teu repositori a GitHub, segueix aquests passos:
- Accedeix al repositori a GitHub.
- Ves a la pestanya Settings (Configuració).
- Al menú lateral, selecciona Secrets and variables > Actions.
- Prem a New repository secret.
- Posa un nom descriptiu (per exemple,
API_KEY) i el valor secret. - Desa el secret.
Utilitzar els secrets i variables d’entorn en el workflow
Un cop definits els secrets, els pots utilitzar al fitxer YAML del workflow de GitHub Actions amb la sintaxi:
echo "El valor de l'secret és ${{ secrets.API_KEY }}"
Per exemple, un fragment d’un workflow que fa servir un secret per executar una comanda podria ser:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Executar script amb secret
run: |
echo "La clau API és ${{ secrets.API_KEY }}"
Variables d’entorn personalitzades
També pots definir variables d’entorn en el mateix workflow, que no són secrets però sí configuracions útils:
jobs:
build:
runs-on: ubuntu-latest
env:
NODE_ENV: production
CUSTOM_URL: https://api.exemple.com
steps:
- name: Mostrar variables
run: |
echo "Entorn: $NODE_ENV"
echo "URL: $CUSTOM_URL"
Consells pràctics
- Mai posis secrets directament al codi o fitxers YAML públics.
- Revisa qui té accés per administrar secrets al repositori.
- Renova els secrets periòdicament per seguretat.
- Utilitza variables d’entorn per paràmetres que no siguin sensibles però sí variables.
—





