Управление жизненным циклом программного обеспечения для SAP Cloud Platform ABAP Environment

Управление жизненным циклом программного обеспечения для SAP Cloud Platform ABAP Environment

Управление жизненным циклом программного обеспечения для SAP Cloud Platform ABAP Environment

Среда SAP Cloud Platform ABAP доступна уже год, и в этой среде пользователи запускают все более и более продуктивные приложения. Из-за важности изменений заказчики сначала поддерживают и проверяют изменения пользовательского приложения в системах разработки и/или тестирования/качества, а затем контролируют передачу проверенного контента в производственную систему. Таким образом, управление жизненным циклом программного обеспечения становится критическим аспектом.

 

Учебное пособие по переносу программного компонента между двумя системами ABAP доступно по техническим аспектам управления жизненным циклом программного обеспечения. В текущей статье будет дополнительная информацию по этой теме.

 

Экскурс: abapGit и gCTS

 

Прежде чем мы начнем копаться в деталях управления жизненным циклом программного обеспечения, нужно сказать несколько слов о abapGit и gCTS. Два независимых решения были запущены параллельно для решения проблемы использования Git в ABAP, одно пришло от сообщества открытого исходного кода (abapGit), а другое от самой SAP (gCTS).

 

abapGit - это проект с открытым исходным кодом, основанный сообществом SAP в 2014 году. SAP вносит свой значительный вклад в этот проект с 2018 года. Он доступен для локальной версии платформы SAP ABAP версии 7.02 или выше, а также для среды SAP Cloud Platform ABAP.

 

gCTS является усовершенствованием хорошо известной Системы управления изменениями и транспортом (CTS), предоставляемой SAP. Он доступен для локальных версий 1909 и для среды SAP Cloud Platform ABAP.

 

В этом блоге я не хочу обсуждать плюсы и минусы двух решений, а сосредоточиться на выяснении вариантов использования. Благодаря доступности и архитектуре abapGit и gCTS выполняют дополнительные сценарии использования в контексте среды SAP Cloud Platform ABAP. (Поскольку здесь мы концентрируемся на среде ABAP SAP Cloud Platform, я хочу перечислить варианты использования, которые относятся только к этой среде).

 

Что касается abapGit, мы видим варианты использования:

  • предварительная миграция в облачный код
  • передача из облака (подход «Cloud First»)
  • экспорт кодировки при выводе системы из эксплуатации
  • передача из облака в облако (передача кода другим пользователям, например, с открытым исходным кодом, или от партнера на счет клиента)

 

gCTS используется для транспорта между системами в рамках глобальной учетной записи SAP Cloud Platform. Оставшаяся часть этого блога посвящена этому сценарию.

 

Настройка управления жизненным циклом вашего программного обеспечения

 

На рисунке 1 показана классическая трехсистемная настройка системы разработки, тестовой системы и производственной системы. Каждая система расположена в выделенной дополнительной учетной записи (или пространстве), так что все ресурсы / сервисы, которые принадлежат среде разработки, тестирования или производства, отделены друг от друга (например, дополнительные сервисы, такие как пользовательский интерфейс, подключение и т.д.). Настройка может быть улучшена с помощью опытных систем, нескольких тестовых систем и т.д. Тестовые системы могут быть предоставлены по требованию (временному) или на постоянной основе.

 

 

Рисунок 1: Экспорт/импорт через Git-репозиторий между системами в глобальной учетной записи SAP Cloud Platform (gCTS) и выше (abapGit)

 

В системе разработки вы создаете свои программные компоненты:

 

  • Программный компонент ZLOCAL доступен по умолчанию. Объекты, назначенные этим программным компонентам, не могут быть перенесены.

 

  • Создайте свои программные компоненты с помощью приложения Fiori «Управление программными компонентами» (доступно в шаблоне роли администратора) и импортируйте (вытяните) его в систему. На этом этапе в системе ABAP создается программный компонент, с которым связан Git-репозиторий.

 

  • Если вы хотите транспортировать контент бизнес-конфигурации через системы ABAP, создайте программный компонент типа «Бизнес-конфигурация».

 

Нет рекомендаций относительно того, сколько программных компонентов вы должны создать. Но вы должны учитывать, что объект одного программного компонента не может использоваться в другом программном компоненте по умолчанию, потому что программные компоненты предоставляют свои функциональные возможности через явно выпущенные API-интерфейсы другим программным компонентам. Следовательно, вы должны установить состояние API объекта «Выпущено», если вы хотите использовать объект из другого программного компонента.

 

Вы можете использовать пространство имен ABAP в среде SAP Cloud Platform ABAP. Если вы зарегистрировали пространство имен в SAP, оно будет предоставлено автоматически при инициализации. Для проектов клиентов пространство имен не является обязательным.

 

После создания программных компонентов разработчики могут создавать пакеты и объекты ABAP и ​​назначать их для транспортных запросов. Как только транспорт освобождается, объекты помещаются в соответствующий репозиторий Git. Вы можете создавать, управлять и освобождать запрос на перенос, используя Transport Organizer в инструментах разработки ABAP на основе Eclipse. Другими словами: разработчики работают с транспортными запросами и задачами так же, как в локальных системах (в инструментах разработки ABAP на основе Eclipse).

 

Для среды ABAP SAP Cloud Platform хранилище Git для gCTS автоматически настраивается при подготовке экземпляра ABAP. Он полностью управляется сервером ABAP (с помощью приложения Fiori «Управление программными компонентами» или сценария связи «Интеграция тестов», см. ниже). Это означает, что пользователи среды ABAP не имеют прямого доступа к репозиторию Git, но доступ туннелируется через сервер ABAP. Преимущество этого подхода в том, что конфигурация и управление Git совершенно незаметны для вас, и вы, как разработчик, можете сразу начать использовать управление транспортом без настройки. Видимость репозитория Git ограничена системами SAP Cloud Platform ABAP Environment, которые принадлежат одной глобальной учетной записи. С другой стороны, этот подход ограничивает функциональность Git функциями, предоставляемыми сервером ABAP. Для abapGit вы предлагаете свой собственный Git, который является противоположным подходом, а это означает, что у вас есть все его гибкость и параметры конфигурации.

 

Базовая регистрация изменений с использованием «традиционных» возможностей ABAP-сервера доступна в системе разработки, например:

  • История изменений для объектов ABAP
  • Транспортный журнал
  • Responsible и Last изменения контактов

 

На сегодняшний день мы рекомендуем не выводить из эксплуатации систему разработки, так как только репозиторий Git не может обеспечить сохранение изменений. Планируется снять это техническое ограничение, чтобы вы могли предоставлять и выводить из эксплуатации системы разработки по требованию.

 

Интегрированное управление жизненным циклом программного обеспечения для зависимостей от не-ABAP-объектов (например, пользовательских интерфейсов) в SAP Cloud Platform в настоящее время недоступно. Планируется, что интеграция контента ABAP в концепцию Cloud TMS и многоцелевых приложений (MTA) будет отвечать требованиям интегрированного управления жизненным циклом программного обеспечения.

 

Используйте приложение Fiori «Управление программными компонентами» для импорта (извлечения) программного компонента в тестовые или производственные системы. В отличие от «традиционных» CTS, вы не можете импортировать отдельные транспорты, а только последнюю версию репозитория Git.

 

Перспективы: разработка веток Git Repository и поддержка («Hot Fix»)

 

Запланированные для будущей версии ветки Git-репозитория могут использоваться для управления потоком изменений в тестовой и рабочей среде. После успешного завершения тестов создается новая ветвь релиза, которую можно перенести (импортировать) в производственную систему. Эта функция позволит лучше контролировать изменения, которые применяются к производственным системам (рисунок 2).

 

Рисунок 2: Поддержка веток Git (планируется)

 

На рисунке 3 показано, как может выглядеть подход к разработке обслуживания («горячее исправление»), основанный на ветвях выпуска: если требуется исправление, ветка выпуска включается в систему обслуживания. Исправление разработано в системе обслуживания и передано в ветку релиза. После успешного тестирования в системе тестирования технического обслуживания (которая может быть предоставлена ​​по требованию) исправление может быть добавлено в производственную систему. Исправление должно быть реализовано в системе разработки параллельно.

 

Рисунок 3: Разработка обслуживания («горячего исправления») на основе веток Git-репозитория

 

Outlook: непрерывная интеграция / непрерывная доставка (CI / CD)

 

Использование Git в качестве единственного источника правды и возможность предоставлять и выводить из эксплуатации готовые к использованию системы ABAP открывает возможность для современных подходов непрерывной интеграции / непрерывной доставки (CI / CD). SAP будет инвестировать в это направление и - хотя клиенты не обязаны следовать этому подходу - мы рекомендуем клиентам исследовать этот подход.

 

Сценарий связи «Интеграция тестов» предлагает сервисы, которые можно использовать как часть тестового конвейера CI. С 1911 года первый сервис доступен для запуска импорта объектов программного компонента из репозитория Git и опроса статуса импорта.

Источник

Теги: Abap

0 Комментариев

Оставить комментарий


Отмена Ваш комментарий будет опубликован после утверждения этого поста.