Introducció a CircleCI

CircleCI és una eina de CI/CD basada en el núvol que permet als desenvolupadors automatitzar la construcció, prova i desplegament del seu programari. És coneguda per la seva facilitat d'ús, integració amb diverses plataformes i capacitat de personalització.

Característiques Principals de CircleCI

  • Integració amb GitHub i Bitbucket: CircleCI es pot integrar fàcilment amb repositoris de codi font allotjats en GitHub i Bitbucket.
  • Configuració basada en YAML: Els pipelines de CI/CD es configuren mitjançant un fitxer YAML (.circleci/config.yml).
  • Execució en contenidors: Utilitza contenidors Docker per executar les tasques, permetent un entorn consistent i replicable.
  • Escalabilitat: Pot escalar automàticament per gestionar múltiples construccions simultànies.
  • Suport per a múltiples llenguatges: Compatible amb una àmplia gamma de llenguatges de programació i plataformes.

Configuració de CircleCI

Pas 1: Crear un compte

  1. Visita CircleCI i crea un compte. Pots utilitzar el teu compte de GitHub o Bitbucket per registrar-te.

Pas 2: Integrar un Repositori

  1. Un cop registrat, connecta el teu compte de GitHub o Bitbucket amb CircleCI.
  2. Selecciona el repositori que vols integrar amb CircleCI.

Pas 3: Crear el fitxer de configuració

  1. Al directori arrel del teu projecte, crea una carpeta anomenada .circleci.
  2. Dins d'aquesta carpeta, crea un fitxer anomenat config.yml.

Exemple de Configuració Bàsica

A continuació es mostra un exemple bàsic d'un fitxer config.yml per a un projecte Node.js:

version: 2.1

jobs:
  build:
    docker:
      - image: circleci/node:12
    steps:
      - checkout
      - run:
          name: Instal·lar dependències
          command: npm install
      - run:
          name: Executar proves
          command: npm test

workflows:
  version: 2
  build_and_test:
    jobs:
      - build

Explicació del Fitxer de Configuració

  • version: Especifica la versió de configuració de CircleCI.
  • jobs: Defineix les tasques a realitzar. En aquest cas, hi ha una tasca anomenada build.
    • docker: Especifica la imatge Docker a utilitzar per a l'entorn d'execució.
    • steps: Defineix els passos dins de la tasca. Aquí es realitzen tres passos:
      • checkout: Clona el repositori.
      • run: Executa una comanda. En aquest cas, instal·la les dependències i executa les proves.
  • workflows: Defineix el flux de treball. En aquest exemple, hi ha un flux de treball anomenat build_and_test que executa la tasca build.

Exercici Pràctic

Objectiu

Configurar un pipeline bàsic a CircleCI per a un projecte Node.js que inclogui la construcció i execució de proves.

Passos

  1. Crear el fitxer de configuració: Segueix els passos anteriors per crear el fitxer .circleci/config.yml.
  2. Afegir el codi del projecte: Assegura't que el teu projecte Node.js tingui un fitxer package.json amb scripts per a instal·lar dependències (npm install) i executar proves (npm test).
  3. Pujar els canvis: Puja el fitxer de configuració i qualsevol altre canvi al teu repositori.

Solució

version: 2.1

jobs:
  build:
    docker:
      - image: circleci/node:12
    steps:
      - checkout
      - run:
          name: Instal·lar dependències
          command: npm install
      - run:
          name: Executar proves
          command: npm test

workflows:
  version: 2
  build_and_test:
    jobs:
      - build

Verificació

  1. Un cop pujats els canvis, CircleCI detectarà automàticament el fitxer de configuració i iniciarà el pipeline.
  2. Pots verificar l'estat del pipeline a través del tauler de control de CircleCI.

Errors Comuns i Consells

  • Error de sintaxi en el fitxer YAML: Assegura't que el fitxer config.yml està correctament formatat. Utilitza un editor de text que suporti la validació de YAML.
  • Problemes amb les dependències: Si les dependències no s'instal·len correctament, revisa el fitxer package.json i assegura't que totes les dependències necessàries estan especificades.
  • Execució de proves fallida: Si les proves fallen, revisa els logs proporcionats per CircleCI per identificar i corregir els errors.

Resum

En aquesta secció, hem après a configurar un pipeline bàsic a CircleCI per a un projecte Node.js. Hem vist com crear un fitxer de configuració config.yml, definir les tasques i passos necessaris, i verificar l'execució del pipeline. Amb aquesta base, pots començar a explorar funcionalitats més avançades de CircleCI per millorar el teu flux de treball de CI/CD.

© Copyright 2024. Tots els drets reservats