[rulkc] [PATCH v3 18/40] landau-linux: maintenance: Refactor and enhance release process chapter
Dmitry Rokosov
rockosov at rulkc.org
Wed Jul 29 16:37:43 MSK 2026
From: Serge Semin <fancer.lancer at gmail.com>
The chapter "5. LANDAU-Linux release process" is a bit lame. First of all
it constantly refers to a fixed release version v7.0.y meanwhile the
document implies an approach irrelevant to the version number. Secondly
the stages are differently described in the sub-paragraphs. Meanwhile it
can be done in the more structured way, like list of the steps, key stage
parameters and key notes. Thirdly the stages lack the details regarding
the commit creation and it' format. Finally the LTS version support is no
different from the stable release. So the current chapter 6. can be easily
merged into the paragraph 5.4.
Well ideally this should have been done in a set of the incremental
commits. But this would have taken too much effort seeing the changes are
interdependent. So let's introduce it in a refactor-like commit. This
doesn't change the gist of the release process, but extends the
description with the missing details and makes the text looking more
structured by the paragraphs style unification.
Co-developed-by: Dmitry Rokosov <rockosov at rulkc.org>
Signed-off-by: Dmitry Rokosov <rockosov at rulkc.org>
Signed-off-by: Serge Semin <svsemin at unistemlab.com>
---
landau-linux/maintenance.md | 190 +++++++++++++++++++++++++++---------
1 file changed, 146 insertions(+), 44 deletions(-)
diff --git a/landau-linux/maintenance.md b/landau-linux/maintenance.md
index e6099eb2279c..8fbd40697f3f 100644
--- a/landau-linux/maintenance.md
+++ b/landau-linux/maintenance.md
@@ -207,60 +207,155 @@ flowchart TB
### 📊 Полный цикл релиза
```mermaid
-flowchart TD
- A[📦 Выход нового релиза ядра Linux] --> B[🔓 Открытие RMW LANDAU Linux<br>2 недели]
- B --> C[🏷️ Создание тега v7.0.l-rc1]
- C --> D[🧪 Фаза RC-тестирования<br>1 неделя на RC]
- D --> E{Все тесты пройдены?}
- E -->|Нет| F[🔧 Исправление ошибок]
- F --> D
- E -->|Да| G[✅ Релиз v7.0.l]
- G --> H[🔄 Интеграция SUBLEVEL<br>стабильной версии ядра Linux]
- H --> I[📈 Повышение версии<br>v7.0.1.l1]
+%%{init: {
+ 'theme': 'base',
+ 'themeVariables': {
+ 'background': '#002b36',
+ 'primaryColor': '#073642',
+ 'primaryTextColor': '#839496',
+ 'primaryBorderColor': '#586e75',
+ 'lineColor': '#b58900',
+ 'secondaryColor': '#002b36',
+ 'tertiaryColor': '#073642',
+ 'edgeLabelBackground': '#002b36',
+ 'nodeBorder': '#586e75',
+ 'nodeTextColor': '#93a1a1',
+ 'fontSize': '20px',
+ 'fontFamily': 'monospace'
+ },
+ 'flowchart': {
+ 'nodeSpacing': 80,
+ 'rankSpacing': 30,
+ 'curve': 'basis',
+ 'padding': 10
+ }
+}}%%
+flowchart TB
+ subgraph Block1["Подготовка релиза (этап RC)"]
+ direction LR
+ A["📦 Новый релиз ядра Linux"] --> B
+ B(["🔓 1. RMW LANDAU Linux<br>(~2 нед.)"]) --> C
+ C["🔧 Перенос и слияние Bundle-ов"] --> D
+ D(["🔓 2. RC LANDAU Linux<br>(~1 нед. на RCx)"]) --> E
+ E["🔧 Исправление ошибок<br>(выпуск RC)"] --> F
+ F(("•••"))
+ end
+```
+
+```mermaid
+%%{init: {
+ 'theme': 'base',
+ 'themeVariables': {
+ 'background': '#002b36',
+ 'primaryColor': '#073642',
+ 'primaryTextColor': '#839496',
+ 'primaryBorderColor': '#586e75',
+ 'lineColor': '#b58900',
+ 'secondaryColor': '#002b36',
+ 'tertiaryColor': '#073642',
+ 'edgeLabelBackground': '#002b36',
+ 'nodeBorder': '#586e75',
+ 'nodeTextColor': '#93a1a1',
+ 'fontSize': '20px',
+ 'fontFamily': 'monospace'
+ },
+ 'flowchart': {
+ 'nodeSpacing': 80,
+ 'rankSpacing': 30,
+ 'curve': 'basis',
+ 'padding': 10
+ }
+}}%%
+flowchart TB
+ subgraph Block2["Релиз LANDAU Linux"]
+ direction LR
+ A(("•••")) --> B
+ B(["✅ 3. Релиз LANDAU Linux"]) --> C
+ C["🔧 Публикация изменений<br>LANDAU Linux"] --> D
+ D(["🔓 4. Поддержка LANDAU Linux"]) --> E
+ E["🔧 Исправление ошибок и<br>синхронизация SUBLEVEL"] --> F
+ F(["🐢 5. EOL LANDAU Linux"])
+ end
```
-### 5.1 🆕 Новый релиз стабильного ядра Linux
+### 5.1 🆕 Этап RMW LANDAU Linux
| Шаг | Действие |
|-----|----------|
-| 1 | Создать GIT-ветку `landau-7.0.y` от первого релиза стабильного ядра Linux |
-| 2 | Применить LANDAU-специфичные патчи |
-| 3 | Оставить оригинальные значения `VERSION`, `PATCHLEVEL`, `SUBLEVEL` |
-| 4 | Оставить `EXTRAVERSION` пустым (используется `.lX` формат) |
-| 5 | Создать тег `v7.0.l-rc1` |
+| 1 | Создать GIT-ветку `landau-next` от первого релиза стабильного ядра Linux |
+| 2 | Объявить сбор изменений LANDAU Linux от нижестоящих ментейнеров |
+| 3 | Применить изменения LANDAU Linux в `landau-next` |
+| 4 | Запросить повторную публикуцию изменений в случае сложных конфликтов |
+| 5 | Провести базовое сборочное тестирование результирующей ветки `landau-next` |
+| 6 | Обновить `EXTRAVERSION` на `l-rc1` и создать коммит "LANDAU Linux V.P.l-rc1" |
+| 7 | Отметить коммит аннотированным тегом `vV.P.l-rc1` |
+
+> ℹ️ Переменная `EXTRAVERSION` в стабильных релизах ядра Linux остаётся пустым, потому может быть использована для сохранения версий LANDAU Linux. При этом оригинальные значения `VERSION`, `PATCHLEVEL`, `SUBLEVEL` в дальнейшем сохраняются для индикации версии исходного ядра Linux.
+
+| Параметр | Значение |
+|----------|----------|
+| ⏱️ Длительность | **~2 недели** |
+| 🎯 Фокус | Сбор и базовая проверка работоспособности продуктов |
+| 🏷️ Релизы | `l-rc1` |
+| 🔧 Исправления | Незначительные проблемы разрешаются в merge-коммитах. Значительные - через повторный запрос изменения от ментейнера |
+
+### 5.2 🧪 Этап RC LANDAU Linux
-### 5.2 🧪 RC-тестирование
+| Шаг | Действие |
+|-----|----------|
+| 1 | Получить корректирующие изменений LANDAU Linux от нижестоящих ментейнеров |
+| 2 | Применить корректирующие изменения LANDAU Linux в `landau-next` |
+| 3 | Провести базовое сборочное тестирование результирующей ветки `landau-next` |
+| 4 | Cоздать коммит "LANDAU Linux V.P.l-rcX" для инкрементированной в `EXTRAVERSION` RC-версии |
+| 5 | Отметить коммит аннотированным тегом `vV.P.l-rcX` |
+| 6 | Перейти к 1. в случае выявления ошибок |
| Параметр | Значение |
|----------|----------|
-| ⏱️ Длительность | **1 неделя** на каждый RC |
-| 🏷️ Кандидаты | `rc1`, `rc2`, `rc3` ... |
+| ⏱️ Длительность | **~1 неделя** на каждый RC, но **не более 7-8 недель** |
| 🎯 Фокус | Регрессионное тестирование, стабильность, валидация фич |
-| 🔧 Исправления | Применяются непосредственно в ветку релиза |
+| 🏷️ Релизы | `l-rc1`, `l-rc2`, `l-rc3` ... |
+| 🔧 Исправления | Применяются непосредственно в ветку релиза по запросу нижестоящих ментейнеров |
-### 5.3 ✅ Финальный релиз
+> ℹ️ Стабилизация GIT-ветки `landau-next` (отсуствие выявленных ошибок в очреденом RC-цикле) символизирует окончание этапа RC и выход на релиз.
-1. Убедиться, что все критические проблемы решены
-2. Создать финальный аннотированный тег `v7.0.l`
-3. Опубликовать релиз
+### 5.3 ✅ Релиз LANDAU Linux
+
+| Шаг | Действие |
+|-----|----------|
+| 1 | Убедиться в отсуствии существенных проблем на последнем этапе RC |
+| 2 | Обновить `EXTRAVERSION` на `l` и создать коммит "LANDAU Linux V.P.l" |
+| 3 | Отметить коммит аннотированным тегом `vV.P.l` |
+| 4 | Создать GIT-ветку `landau-V.P.y` на основе последнего RC-релиза LANDAU Linux |
+
+| Параметр | Значение |
+|----------|----------|
+| ⏱️ Длительность | **более 1 недели** в последней фазе RC |
+| 🎯 Фокус | Стабилизация собранных измений и опубликование списка изменений |
+| 🏷️ Релизы | `l` |
+| 🔧 Исправления | Отсуствуют в рамках последней фазы RC |
-### 5.4 🔄 Интеграция обновлений SUBLEVEL
+### 5.4 🔄 Поддержка стабильной и LTS-версий LANDAU Linux
| Шаг | Действие | Пример |
|-----|----------|--------|
-| 1 | Определить новый `SUBLEVEL` из тега в оригинальном репозитории | `v7.0.1` |
-| 2 | Забрать изменения из GIT-ветки репозитория LTS | `git merge v7.0.1` |
-| 3 | Повысить LANDAU-версию | `l` → `l1` |
-| 4 | Обновить версию | `v7.0.1.l1` |
-| 5 | Выпустить релиз | Публикация тега |
-
----
+| 1 | Определить последний `SUBLEVEL` в исходной GIT-ветки стабильного ядра Linux | `v7.0.1` |
+| 2 | Применить изменения из стабильной GIT-ветки ядра Linux в `landau-V.P.y` | `git merge v7.0.1` |
+| 3 | Получить корректирующие изменений LANDAU Linux от нижестоящих ментейнеров | - |
+| 4 | Применить корректирующие изменения LANDAU Linux в `landau-V.P.y` при наличии | - |
+| 5 | Инкрементировать `EXTRAVERSION` на единицу и создать коммит "LANDAU Linux V.P.Y.lX" | `l` → `l1` |
+| 6 | Отметить коммит аннотированным тегом `vV.P.Y.lX` | `v7.0.1.l1` |
-## 🐢 6. Политика в отношении LTS
+| Параметр | Значение |
+|----------|----------|
+| ⏱️ Длительность | До получения статуса EOL исходной версии ядра Linux |
+| 🎯 Фокус | Исправление серьезных ошибок, выявленных в стабильном релизе LANDAU Linux |
+| 🏷️ Релизы | `l1`, `l2`, `l2`, ... |
+| 🔧 Исправления | Применяются по запросу нижестоящих ментейнеров в рамках корректирующих релизов |
-Мейнтейнеры LANDAU Linux приняли решение **нативно поддерживать LTS-версии** ядра Linux.
+Мейнтейнеры LANDAU Linux приняли решение **нативно поддерживать стабильные и LTS-версии** ядра Linux до получения статуса EOL. Однако гарантировано корректирующие изменения LANDAU Linux портируются в LANDAU Linux на основе последней LTS-версии ядра Linux. Портирование изменений в более ранние версии возможно при наличии ресурсов.
-### ⚠️ Ограничения LTS-поддержки
+⚠️ Особенности интеграции изменений в стабильную и LTS версии LANDAU Linux:
| ✅ Разрешено | ❌ Запрещено |
|--------------|--------------|
@@ -271,18 +366,25 @@ flowchart TD
> 📌 **Принцип**: Поддерживается тот Changelog, который был на момент отвода LTS основного ядра.
-### 🛑 Окончание поддержки
+### 5.5 🔄 Завершение поддержки релиза LANDAU Linux (EOL)
-| Тип ядра | Условие окончания поддержки |
-|----------|------------------------------|
-| Обычное | Исходный релиз достигает EOL |
-| LTS | Поддержка продолжается до EOL базовой версии (без добавления новых фич) |
+| Шаг | Действие |
+|-----|----------|
+| 1 | Получение статуса EOL исходной версии стабильного ядра Linux |
+| 2 | Объявление о завершении поддержки LANDAU Linux в GIT-ветке `landau-V.P.y` |
+
+| Параметр | Значение |
+|----------|----------|
+| ⏱️ Длительность | Минимум несколько корректирующих релизов стабильной версии LANDAU Linux до регистрации EOL |
+| 🎯 Фокус | Завершение поддержки релиза |
+| 🏷️ Релизы | `lZ` |
+| 🔧 Исправления | Не применяются |
-Гарантировано LANDAU Linux Owners поддерживают одно последнее LTS ядро. Про остальные LTS ядра думаем при наличии ресурсов.
+Поддержка **стабильной и LTS версий** LANDAU Linux завершается либо вместе с получением статуса EOL исходной версии ядра Linux, либо после выпуска релиза LANDAU Linux, основанного на последней LTS-версии ядра Linux.
---
-## 👤 7. Обязанности мейнтейнера
+## 👤 6. Обязанности мейнтейнера
| Область | Ответственность |
|---------|------------------|
@@ -295,7 +397,7 @@ flowchart TD
---
-## 📖 8. Пример полного цикла релиза
+## 📖 7. Пример полного цикла релиза
### Исходные данные
@@ -395,7 +497,7 @@ TODO
---
-## 📚 9. Ссылки и ресурсы
+## 📚 8. Ссылки и ресурсы
| Ресурс | URL |
|--------|-----|
--
2.48.1
More information about the rulkc
mailing list