Создание CICD конвейера Salesforce с использованием Azure DevOps

Вопрос или проблема

У клиента есть подписка на Azure DevOps, и они хотят использовать ее для автоматизированной сборки и развертывания с их приложением Salesforce. Предыдущая команда разработчиков использовала только Azure Repos в качестве своего репозитория кода, а клиент использовал Boards для отслеживания тикетов. Я полагаю, что предыдущая команда использовала Salesforce DX/CLI для развертывания с использованием VS Code, поэтому пайплайны не существуют, и их нужно будет создать с нуля.

Я наткнулся на несколько статей (не очень много) с инструкциями по настройке пайплайнов сборки и развертывания в Azure DevOps, но меня беспокоит вопрос, возможно ли это только с Scratch Org или Sandbox окружениями? У меня нет опыта работы с Salesforce и ограниченный опыт в создании пайплайнов сборки и развертывания.

Любая помощь будет appreciated!

Чтобы создать CI/CD пайплайн для Salesforce с использованием Azure DevOps, выполните следующие шаги:

  1. Настройка репозиториев: Создайте Git-репозиторий в Azure DevOps для хранения вашего кода Salesforce.

  2. Настройка пайплайна сборки:

    • Перейдите в раздел Pipelines > Builds > New Pipeline.
    • Выберите ваш репозиторий и выберите подходящую YAML конфигурацию или используйте классический редактор.
    • Используйте команды Salesforce CLI (например, sfdx force:source:convert), чтобы конвертировать ваш исходный код и запускать тесты.
  3. Добавить переменные окружения: Храните учетные данные Salesforce в пайплайнах Azure DevOps в качестве секретных переменных.

  4. Настройка пайплайна развертывания:

    • Перейдите в раздел Pipelines > Releases > New Pipeline.
    • Создайте этапы для разных окружений (например, Dev, QA, Prod).
    • Используйте задачи для развертывания кода с помощью команд Salesforce CLI (например, sfdx force:source:deploy).
  5. Запуск пайплайна: Установите триггеры для автоматической сборки и развертывания на основе политик веток или запросов на слияние.

  6. Мониторинг и управление: Используйте панели мониторинга и журналы Azure DevOps для отслеживания состояния пайплайна и устранения неполадок при необходимости.

Следуя этим шагам, вы сможете эффективно управлять инсайтами Salesforce с использованием Azure DevOps.

Ответ или решение

Создание CI/CD пайплайна Salesforce с использованием Azure DevOps

Для эффективного управления развертыванием и автоматизированными сборками приложения Salesforce в Azure DevOps, необходимо выполнить несколько шагов, которые обеспечат корректную интеграцию и использование всех доступных инструментов. Шаги будут разбиты на несколько ключевых этапов: настройка репозиториев, конфигурация пайплайнов сборки и релиза, управление переменными среды и автоматизация триггеров.

1. Настройка репозиториев

Первым шагом в процессе создания CI/CD пайплайна является создание Git-репозитория в Azure DevOps. Этот репозиторий будет служить местом хранения кода Salesforce:

  • Перейдите в Azure DevOps и создайте новый проект, если он еще не был создан.
  • В разделе "Repos" создайте новый Git-репозиторий. Убедитесь, что структура папок в репозитории соответствует стандартам Salesforce DX.

2. Конфигурация пайплайна сборки

Следующий шаг заключается в создании пайплайна сборки, который будет автоматически собирать и проверять код. Используйте следующие инструкции:

  • Перейдите в раздел Pipelines > Builds и нажмите New Pipeline.
  • Выберите созданный вами репозиторий и выберите подходящий шаблон YAML или используйте классический редактор.
  • В файле конфигурации YAML добавьте задания для выполнения команд Salesforce CLI. Пример команды для конвертации исходного кода:
- script: sfdx force:source:convert -d mdapi-output
  displayName: 'Конвертация исходного кода'
  • Также добавьте команды для запуска тестов, чтобы убедиться, что код работает корректно:
- script: sfdx force:apex:test:run --resultformat=runresults --outputdir=test-results --wait=10
  displayName: 'Запуск тестов Apex'

3. Добавление переменных среды

Рост безопасности процесса развертывания можно обеспечить, добавив переменные среды:

  • В настройках пайплайна добавьте переменные для хранения учетных данных Salesforce (например, SF_USERNAME, SF_PASSWORD, SF_CLIENT_ID). Убедитесь, что они отмечены как секретные для безопасности.

4. Настройка пайплайна релиза

Следующий шаг — создание пайплайна релиза, который будет использоваться для развертывания кода на различных окружениях (разработка, тестирование, продакшн):

  • Перейдите в Pipelines > Releases и создайте новый пайплайн.
  • Создайте этапы для каждого окружения (например, Dev, QA, Prod).
  • В каждом этапе добавьте задачи для развертывания кода с помощью команд Salesforce CLI:
- script: sfdx force:source:deploy -p mdapi-output -u $(SF_USERNAME) -w 10
  displayName: 'Развертывание на окружение'

5. Активация триггеров

Для достижения максимальной автоматизации настройте триггеры, чтобы сборка и релиз происходили автоматически:

  • Перейдите в настройки вашего пайплайна сборки и добавьте триггер на основе политик веток или pull-запросов.
  • Это позволит автоматически инициировать сборку при каждом коммите или создании запроса на слияние.

6. Мониторинг и управление

После настройки пайплайнов важно наладить мониторинг и управление:

  • Используйте панели мониторинга Azure DevOps для отслеживания статуса пайплайнов.
  • Ознакомьтесь с логами выполнения для решения возможных проблем и оптимизации процесса.

Заключение

Следуя указанным шагам, вы сможете эффективно настроить CI/CD пайплайн для Salesforce в Azure DevOps. Это обеспечит автоматизированные сборки, тестирование и развертывание в различных окружениях, что значительно повысит производительность и надежность вашего процесса разработки. Интеграция с Azure DevOps также предоставляет вам возможности для лучшего управления задачами и отслеживания прогресса в разработке.

Оцените материал
Добавить комментарий

Капча загружается...