Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Константин Ожерельев – CI/CD для проектов, разр...
Search
Ozon Tech
October 16, 2023
Technology
0
110
Константин Ожерельев – CI/CD для проектов, разрабатываемых в конфигураторе
Ozon Tech
October 16, 2023
Tweet
Share
More Decks by Ozon Tech
See All by Ozon Tech
Анастасия Писнова, «Текст как проект»
ozontech
0
6
Светлана Каюшина, Автоматизируем документирование и внедряем ИИ
ozontech
0
11
Павел Костромитин, «Что случилось у UXW T-Банка в 2024 »
ozontech
0
8
Сергей Горшенин, «Конвертация данных Ozon»
ozontech
0
24
Юрий Гуреев, «Интеграция 1С с внешними системами. Проблемы и их решения»
ozontech
0
43
Артём Нургалиев, «Кэш на кэш: как ускоряли автобиддеры»
ozontech
0
18
Анна Мария Попова (Х5 Tech) – Фантастический техпис: может ли опыт создания художественных книг помочь в написании документации
ozontech
0
190
Александр Мачулин (Gramax) – Справочник фантастических тварей из Docs as Code
ozontech
0
140
Мария Смирнова – Дзен и искусство работы с документацией: как использовать принципы буддизма в работе техписа
ozontech
0
120
Other Decks in Technology
See All in Technology
Grafanaのvariables機能について
tiina
0
110
やっちゃえ誤自宅Nutanix
yukiafronia
0
330
財務データを題材に、 ETLとは何であるかを考える
shoe116
5
1.9k
生成AIを活用した機能を、顧客に提供するまでに乗り越えた『4つの壁』
toshiblues
1
180
顧客の声を集めて活かすリクルートPdMのVoC活用事例を徹底解剖!〜プロデザ!〜
recruitengineers
PRO
0
150
Skip Skip Run Run Run ♫
temoki
0
350
Zenn のウラガワ ~エンジニアのアウトプットを支える環境で Google Cloud が採用されているワケ~ #burikaigi #burikaigi_h
kongmingstrap
3
910
トレードオフスライダーにおける品質について考えてみた
suzuki_tada
3
150
信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetry
ymotongpoo
9
4.4k
GitLab SelfManagedをCodePipelineのソースに設定する/SetGitLabSelfManagedtoCodePipeline
norihiroishiyama
1
110
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
150
大学教員が押さえておくべき生成 AI の基礎と活用例〜より効率的な教育のために〜
soh9834
1
180
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
980
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
Transcript
Ozon Tech 2023 CI/CD для проектов, разрабатываемых в конфигураторе Константин
Ожерельев, старший разработчик 1С
Обо мне 2 Константин Ожерельев • Старший разработчик 1С •
Департамент разработки ERP и учетных систем
О чем поговорим 3 • Наша конфигурация, цифры • Какие
задачи мы решали с помощью CI/CD • Как CI/CD помогают соблюдать политики изменения информационных систем • Что под капотом. Техническая реализация
Наша информационная система. Почему конфигуратор?
Наша основная система на платформе 1С 5
Показатели системы Немного цифр 6 Размер базы > 6 ТБ
Среднее количество активных пользователей > 250 Количество документов ежемесячно > 10 млн Количество плановых релизов ежемесячно 2
Предыстория
PUBLIC PRIVATE 8 Ozon — публичная компания и ей было
необходимо проходить внешний IT-аудит
Цели данного процесса: 9 2. Устранение сбоев в работе информационных
систем 3. Внедрение разработок в ИС при сохранении параметров работы системы на надлежащем уровне 1. Минимизация рисков внедрения несанкционированных, неавторизованных и не проконтролированных надлежащим образом изменений
Мы обернули требования регуляторов в код и зашили в процессы
CI/CD, смазав OneScript 10
Как выглядит реализация требований на практике 11
Инструменты
Стек 13
Flow разработки. Подготовка релиза
В Ozon общий Flow для всех команд разработки Flow Доклад
команды RE об общем Flow 15
Подключение функциональности 16
Используем три типа веток Как работаем с ветками Git Develop
17 Release Main Master
Для обычных релизов и для Hotfix Два вида FLOW 18
Commit Hotfix Release
Релизный Flow ИБ Разработчика Хранилище DEV Develop Master Release Stg
БД 19
Схема Flow разработки 1С 20
Pipeline
Конвейер на ветке develop создается для каждого коммита 22 Создание
Merge request Выкатка Hotfix- расширением Выпуск релиза, запуск релизного pipeline
Создание Merge request 23 Согласно требованиям
Релизный pipeline 24 Сборка исходников Накатываем CF на Stg
Синтаксический контроль 25 Результаты синтаксического контроля отображаем с помощью функционала
Сode quality Gitlab
Tag pipeline. Выкатка на production 26
Как мы исправляем ошибки в production
Исправляем на горячую 28
Упрощенный flow для hotfix Hotfix Инцидент Расширение Хранилище расш. Develop
Master Release_cfe Hotfix/[] Master 29
Схема Hotfix Flow 30
YML проекта 31
Выпустил релиз и спишь спокойно?
33 Мониторинг
Пример дашборда Размер очереди обмена, насколько быстро она разбирается 34
Автоматические алерты Реакция на алерты Эскалация алерта Алертинг 35
Выводы
Итоги 37 • Тиражировали на 10 проектов • Общий проект
с единым YML • Логику можно переопределить • 20 релизов в месяц по всем проектам • Отдельный проект для ночных сборок • Снизили количество инцидентов
Спасибо за внимание Константин Ожерельев, старший разработчик 1С