Настройка CI/CD на Github
Создание файла конфигурации.
1. В корне вашего репозитория создайте директорию .github/workflows
, а в ней файл main.yml
.
Пример конфигурационного файла:
name: CI/CD Pipeline
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: 14
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
- name: Deploy to production
if: github.ref == 'refs/heads/main'
run: echo "Add your deployment script here"
2. Настройка скрипта развертывания. Замените echo "Add your deployment script here"
на скрипт, который будет разворачивать ваш проект после успешного прохождения тестов. Например, это может быть скрипт для развертывания на AWS или другой облачной платформе.
Настройка CI/CD на Bitbucket
1. Создание файла конфигурации. В корне вашего репозитория создайте файл bitbucket-pipelines.yml
.
Пример конфигурационного файла:
image: node:14
pipelines:
default:
- step:
name: Build and Test
script:
- npm ci
- npm test
- step:
name: Deploy to production
deployment: production
script:
- echo "Add your deployment script here"
2. Настройка скрипта развертывания. Укажите в этом разделе команды для развертывания вашего приложения в производственной среде после успешного прохождения тестов.
Настройка CI/CD на GitLab
1. Создание файла конфигурации. В корне вашего проекта создайте файл .gitlab-ci.yml
.
Пример конфигурационного файла:
image: node:14
stages:
- build
- test
- deploy
cache:
paths:
- node_modules/
install_dependencies:
stage: build
script:
- npm ci
run_tests:
stage: test
script:
- npm test
deploy_to_production:
stage: deploy
only:
- main
script:
- echo "Add your deployment script here"
2. Настройка скрипта развертывания. Как и в предыдущих примерах, замените плейсхолдер на реальные команды для развертывания вашего проекта.
Дополнительные советы и лучшие практики
- Тестирование в разных средах.
Рассмотрите возможность настройки разных сред тестирования (например, staging и production) для обеспечения дополнительного уровня проверки перед развертыванием.
- Использование Docker.
Если ваш проект использует Docker, включите шаги для сборки и развертывания Docker-образов в вашем CI/CD пайплайне.
- Мониторинг и уведомления.
Настройте уведомления для отслеживания статуса пайплайнов и быстрого реагирования на сбои в процессе сборки или развертывания.
Настройка CI/CD в Github, Bitbucket и Gitlab - ключевой шаг к автоматизации и оптимизации процессов разработки. Следуя этим детальным инструкциям, вы сможете эффективно настроить CI/CD пайплайны, которые повысят качество вашего кода и ускорят его доставку.