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
72
Константин Ожерельев – CI/CD для проектов, разрабатываемых в конфигураторе
Ozon Tech
October 16, 2023
Tweet
Share
More Decks by Ozon Tech
See All by Ozon Tech
Анна Мария Попова (Х5 Tech) – Фантастический техпис: может ли опыт создания художественных книг помочь в написании документации
ozontech
0
120
Александр Мачулин (Gramax) – Справочник фантастических тварей из Docs as Code
ozontech
0
26
Мария Смирнова – Дзен и искусство работы с документацией: как использовать принципы буддизма в работе техписа
ozontech
0
25
Сергей Кузнецов – «Эксперименты с нейросетями в рекомендациях»
ozontech
0
54
Артём Нургалиев – «MLOps, автоматизированное обучение и доставка моделей»
ozontech
0
35
Артём Панин – «Автоматическое управление рекламой в Ozon»
ozontech
0
56
Дмитрий Андросов – «Персональные поисковые подсказки»
ozontech
0
69
Юрий Гуреев – 5 продвинутых приемов работы с EDT и Git
ozontech
0
63
Евгений Мазуренко – Как управлять проектами и не терять связь с заказчиком
ozontech
0
44
Other Decks in Technology
See All in Technology
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
220
競技としてのKaggle、役に立つKaggle
yu4u
4
1.9k
ChatGPT for IT Service Management (IT Pro)
dahatake
7
1.6k
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
1
250
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
220
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
260
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
16k
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
1.3k
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
170
どうするコスト最適化のトレードオフ
tetsuyaooooo
1
530
Building Dashboards as a Hobby
egmc
0
240
よく聞くけど使ったことないソフトウェアNo.1 KafkaとSnowflake
foursue
4
360
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
Done Done
chrislema
178
15k
4 Signs Your Business is Dying
shpigford
175
21k
Rebuilding a faster, lazier Slack
samanthasiow
73
8.2k
What's in a price? How to price your products and services
michaelherold
237
11k
Product Roadmaps are Hard
iamctodd
44
9.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
2
3.4k
How to Ace a Technical Interview
jacobian
272
22k
RailsConf 2023
tenderlove
4
540
Into the Great Unknown - MozCon
thekraken
10
1k
How to name files
jennybc
65
93k
Code Review Best Practice
trishagee
55
15k
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С