Развёртывание в тестовой среде
Настройте рабочий процесс для автоматического развёртывания приложения в тестовую среду перед выпуском в эксплуатацию.
«Развёртывание в тестовой среде» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Что такое промежуточная среда
Представьте, что вы создали новую функцию для приложения. Прежде чем показать ее всем пользователям в рабочей среде, вы хотите протестировать ее в безопасных и реалистичных условиях. Здесь на помощь приходит промежуточная среда!
Промежуточная среда — это копия рабочей среды. Она используется для финального тестирования перед выпуском, позволяя выявить проблемы и обеспечить качество, не затрагивая пользователей рабочей версии.
Промежуточная и рабочая среды
Хотя промежуточная среда воспроизводит рабочую, их назначение различается:
- Промежуточная среда: Используется для обеспечения качества (QA), приемочного тестирования пользователями (UAT) и финальных проверок. С ней взаимодействует только ограниченная аудитория (тестировщики и заинтересованные стороны).
- Рабочая среда: Это активная среда, которой пользуются все конечные пользователи. Любые проблемы в ней напрямую влияют на ваших клиентов.
Развертывание сначала в промежуточной среде — важный шаг для минимизации рисков в рабочей среде.
Функция сред GitHub
GitHub предоставляет мощную функцию под названием Среды. Она позволяет определять логические среды (например, staging или production) внутри репозитория.
Среды помогают:
- Применять правила защиты (ручные подтверждения и таймеры ожидания).
- Управлять секретами, относящимися к конкретной среде.
- Отслеживать развертывания в определенных средах.
Объявление промежуточной среды
Чтобы использовать среду в рабочем процессе, сначала определите ее в настройках репозитория:
- Перейдите в репозиторий GitHub.
- Нажмите Настройки > Среды.
- Нажмите Новая среда и задайте ей имя, например
staging.
Здесь можно добавить правила защиты, например требование, чтобы развертывание подтверждал проверяющий.
Базовая структура рабочего процесса развертывания
Теперь рассмотрим, как указать GitHub развертывать приложение в среду staging. Среда указывается внутри задачи:
name: Deploy to Staging
on: push
jobs:
deploy-to-staging:
runs-on: ubuntu-latest
environment: staging # This links to your 'staging' environment
steps:
- name: Say Hello
run: echo "Deploying to staging!"Настройка защиты среды
Строка environment: staging в рабочем процессе не просто обозначает развертывание. Если вы настроили правила защиты для среды staging в параметрах репозитория, они применятся автоматически.
Например, если требуется ручное подтверждение, эта задача приостановится, пока уполномоченный пользователь не проверит и не подтвердит развертывание.
Сборка приложения
Перед развертыванием обычно необходимо собрать приложение. Это может включать компиляцию кода, запуск тестов или упаковку ресурсов. Добавим эти шаги в нашу задачу:
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js (Example build step)
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Build application
run: npm run buildРазвертывание собранных артефактов
После сборки следующим шагом будет передача файлов приложения на сервер промежуточной среды. Для этого часто используются SSH, FTP или специальный инструмент развертывания для облачной платформы.
Ниже приведен концептуальный шаг. В реальном случае вместо echo следует использовать фактическую команду развертывания:
- name: Deploy to Staging Server
run: |
echo "Simulating deployment to staging..."
# scp -r ./dist user@staging.example.com:/var/www/html
# Or use a specific deployment action for AWS, Azure, etc.Собираем рабочий процесс промежуточной среды
Этот полный рабочий процесс запускается при отправке изменений в ветку develop. Он получает код, собирает приложение, а затем условно развертывает его в среде staging, соблюдая заданные вами правила защиты.
name: Deploy to Staging Environment
on:
push:
branches:
- develop # Trigger only on pushes to the 'develop' branch
jobs:
deploy:
runs-on: ubuntu-latest
environment: staging # Link this job to the 'staging' environment
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js (Example)
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Build application
run: npm run build
- name: Deploy to Staging Server
run: echo "Deployment to staging completed!"Проверка развертывания в промежуточной среде
Вы узнали, как настроить рабочий процесс GitHub для развертывания в промежуточную среду. Проверьте свои знания!
Повторение: развертывание в промежуточной среде
Отличная работа! Вы узнали, как настроить рабочие процессы GitHub для развертывания в промежуточную среду.
- Промежуточная среда похожа на рабочую и предназначена для тестирования перед выпуском.
- Среды GitHub помогают управлять безопасностью развертывания и секретами.
- Рабочие процессы используют ключ
environment, чтобы указать конкретные среды. - Этот процесс минимизирует риски и обеспечивает более плавный переход в рабочую среду.
Далее мы рассмотрим управление конфиденциальной информацией с помощью переменных среды и секретов!
Часто задаваемые вопросы
Урок «Развёртывание в тестовой среде» бесплатный?
Да — полный текст урока «Развёртывание в тестовой среде» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Развёртывание в тестовой среде»?
Настройте рабочий процесс для автоматического развёртывания приложения в тестовую среду перед выпуском в эксплуатацию. Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Развёртывание в тестовой среде»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в непрерывное развёртывание
- Развёртывание в тестовой среде
- Переменные среды и секреты
- Развёртывание в рабочей среде с этапами утверждения