Szybki przewodnik po konfigurowaniu środowisk budowania CI/CD i zautomatyzowanych zadań wdrażania w CircleCI.
Etapy cyklu życia potoku (Pipeline)
machine: Konfiguracja bazowego środowiska VM, systemu operacyjnego i wersji języka.checkout: Klonowanie repozytoriów git oraz inicjalizacja submodułów.dependencies: Przywracanie zbuforowanych bibliotek i instalacja zależności języka.database: Tworzenie tabel testowej bazy danych i ładowanie schematów.test: Uruchamianie zestawów testów jednostkowych, funkcjonalnych i integracyjnych.deployment: Wdrażanie poprawnych artefaktów na środowiska testowe (staging) lub produkcyjne.
Przykład konfiguracji
version: 2.1
executors:
node-executor:
docker:
- image: cimg/node:18.16.0
- image: cimg/postgres:14.2
environment:
POSTGRES_USER: ubuntu
POSTGRES_DB: app_test
POSTGRES_PASSWORD: ""
jobs:
build-and-test:
executor: node-executor
steps:
- checkout
- restore_cache:
keys:
- v1-deps-{{ checksum "package-lock.json" }}
- v1-deps-
- run:
name: Instalacja zależności
command: npm ci
- save_cache:
key: v1-deps-{{ checksum "package-lock.json" }}
paths:
- ~/.npm
- run:
name: Uruchomienie testów jednostkowych
command: npm test
workflows:
build-pipeline:
jobs:
- build-and-test