Skip to content

Commit afe0274

Browse files
committed
[joinrpg-docs-253] fix by linter
1 parent 7f7c7c4 commit afe0274

20 files changed

Lines changed: 114 additions & 50 deletions

File tree

.github/workflows/dev-deploy.yml

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,39 @@ jobs:
2929
- name: Build static files
3030
run: |
3131
cd docs
32-
make html-all
32+
make html-all 2>&1 | tee build.log
33+
34+
# Parse warnings and errors and create GitHub annotations
35+
if grep -E "(WARNING|ERROR|CRITICAL)" build.log > /dev/null; then
36+
echo "::group::Build Warnings and Errors"
37+
while IFS= read -r line; do
38+
# Match Sphinx warning/error format: file.rst:123: WARNING: message
39+
if echo "$line" | grep -qE "\.(rst|md):[0-9]+: (WARNING|ERROR|CRITICAL)"; then
40+
file=$(echo "$line" | sed -E 's|^([^:]+):[0-9]+:.*|\1|')
41+
line_num=$(echo "$line" | sed -E 's|^[^:]+:([0-9]+):.*|\1|')
42+
message=$(echo "$line" | sed -E 's|^[^:]+:[0-9]+: (WARNING|ERROR|CRITICAL): ||')
43+
44+
# Make path relative to repo root (we're in docs/ directory)
45+
if [[ "$file" != /* ]]; then
46+
# Already relative, ensure it's from repo root
47+
file="docs/$file"
48+
else
49+
# Absolute path, convert to relative
50+
file=$(realpath --relative-to="$GITHUB_WORKSPACE" "$file" 2>/dev/null || echo "$file")
51+
fi
52+
53+
if echo "$line" | grep -qE "ERROR|CRITICAL"; then
54+
echo "::error file=$file,line=$line_num::$message"
55+
else
56+
echo "::warning file=$file,line=$line_num::$message"
57+
fi
58+
fi
59+
done < build.log
60+
echo "::endgroup::"
61+
fi
62+
63+
# Show summary
64+
echo "::notice::Build completed. Check the log above for details."
3365
3466
- name: Upload build artifact
3567
uses: actions/upload-artifact@v5.0.0

.github/workflows/prod-deploy.yml

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,39 @@ jobs:
2727
- name: Build static files
2828
run: |
2929
cd docs
30-
make html-all
30+
make html-all 2>&1 | tee build.log
31+
32+
# Parse warnings and errors and create GitHub annotations
33+
if grep -E "(WARNING|ERROR|CRITICAL)" build.log > /dev/null; then
34+
echo "::group::Build Warnings and Errors"
35+
while IFS= read -r line; do
36+
# Match Sphinx warning/error format: file.rst:123: WARNING: message
37+
if echo "$line" | grep -qE "\.(rst|md):[0-9]+: (WARNING|ERROR|CRITICAL)"; then
38+
file=$(echo "$line" | sed -E 's|^([^:]+):[0-9]+:.*|\1|')
39+
line_num=$(echo "$line" | sed -E 's|^[^:]+:([0-9]+):.*|\1|')
40+
message=$(echo "$line" | sed -E 's|^[^:]+:[0-9]+: (WARNING|ERROR|CRITICAL): ||')
41+
42+
# Make path relative to repo root (we're in docs/ directory)
43+
if [[ "$file" != /* ]]; then
44+
# Already relative, ensure it's from repo root
45+
file="docs/$file"
46+
else
47+
# Absolute path, convert to relative
48+
file=$(realpath --relative-to="$GITHUB_WORKSPACE" "$file" 2>/dev/null || echo "$file")
49+
fi
50+
51+
if echo "$line" | grep -qE "ERROR|CRITICAL"; then
52+
echo "::error file=$file,line=$line_num::$message"
53+
else
54+
echo "::warning file=$file,line=$line_num::$message"
55+
fi
56+
fi
57+
done < build.log
58+
echo "::endgroup::"
59+
fi
60+
61+
# Show summary
62+
echo "::notice::Build completed. Check the log above for details."
3163
3264
- name: Upload build artifact
3365
uses: actions/upload-artifact@v5.0.0

docs/accommodation/rooms_for_participants.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Расселение участников
2-
=======================
2+
=====================
33

44
Для того, чтобы определить проживание участников в конкретных комнатах с конкретными соседями, воспользуйтесь меню **Прочее > Настройки > Поселение > (иконка «расселение» у нужного типа комнаты)**
55

@@ -20,7 +20,7 @@
2020
.. attention:: Список соседей со ссылкой на профиль joinrpg будет виден всем проживающим в этой комнате. Избегайте спойлеров для игроков!
2121

2222
Список участников для типа размещения
23-
---------------------------------
23+
-------------------------------------
2424

2525
На вкладке «Комнаты» типа размещения показываются все участники, в заявках которых указан этот тип. Сверху располагаются те, кто еще не приписан к конкретной комнате; те, чье проживание определено, расположены в ячейках соответствующих помещений. Каждая заявка сопровождается указанием, сколько из назначенной к оплате суммы (включая оргвзнос, цену за место проживания, другие выбранные опции) еще осталось оплатить.
2626

@@ -31,7 +31,7 @@
3131

3232

3333
Массовое заселение / выселение
34-
---------------------------------
34+
------------------------------
3535

3636
.. figure:: in_or_out.JPG
3737
:scale: 100 %
@@ -46,7 +46,7 @@
4646
Функция «Выселить всех» также доступна на странице со списком типов размещения. При ее использовании будут освобождены все комнаты всех типов разменения
4747

4848
Выбор проживающих для каждой комнаты
49-
--------------------------------------
49+
------------------------------------
5050

5151
.. figure:: in_for_room.JPG
5252
:scale: 100 %

docs/api/integration.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
Интеграция ИТ систем
2-
========================
2+
====================
33

44
Данный документ призван обобщить опыт игр Deus Ex и Магеллан по тому, как удобно и правильно интегрировать бекенд вашей игры и joinrpg.
55
Предназначен для мастеров, у которых на игре есть некая ИТ-система, предоставляющая возможности в рамках игрового мира. В дальнейшем будем называть ее Система.
66

77
Привязка всего к персонажу
8-
-----------------------
8+
--------------------------
99
.. note:: Эти принципы мы считаем разумными для всех интеграций
1010

1111
Источником правды о персонажах на начало игры является данные из joinrpg. Это даст мастерам возможность вести всю информацию по игре в одном месте, использовать удобные и привычные инструменты для управления.
@@ -17,7 +17,7 @@
1717
3. На игре менять роль игроку (выпуск второй ролью).
1818

1919
Поля персонажа
20-
-----
20+
--------------
2121
Для хранения всех данных по персонажу надо использовать поля персонажа. В API это называется ``CharacterFields``.
2222

2323
Обратите внимание, что дополнительные данные по полям (например, метаданные по вариантам выпадаек) можно хранить в поле ``ProgrammaticalValue`` и загрузить при помощи `MetaDataApi_GetFieldsList <https://joinrpg.ru/swagger/index.html#/MetaDataApi/get_x_game_api__projectId__metadata_fields>`_.
@@ -34,7 +34,7 @@
3434
Пароль в вашу систему рекомендуем хранить в поле персонажа типа PIN-код. Он будет создан автоматически (но при желании вы сможете вручную его отредактировать).
3535

3636
«В игре»
37-
-------
37+
--------
3838

3939
У персонажа есть флаг «В игре» — ``InGame``:
4040

@@ -44,14 +44,14 @@
4444

4545

4646
Использование joinrpg в качестве бекенда
47-
------------
47+
----------------------------------------
4848

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

5151
Впрочем, если вы всегда запрашиваете данные `по одному персонажу по его Id <https://joinrpg.ru/swagger/index.html#/CharacterApi/get_x_game_api__projectId__characters__characterId_>`_, количество запросов не превышает сотен в час и вы готовы обеспечить стабильный канал до joinrpg, то это можно использовать как основной вариант. Преимущества: нет проблемы синхронизации.
5252

5353
Заливка Excel
54-
--------------
54+
-------------
5555

5656
.. note:: Подходит только для простых ИТ-систем и маленьких игр.
5757

@@ -68,7 +68,7 @@
6868
- не подходит, если игра большая (формирование Excel займет определенное время).
6969

7070
Онлайн-импорт
71-
-----------------
71+
-------------
7272

7373
.. note:: Мы рекомендуем этот вариант для сложных ИТ-систем
7474

docs/characters/slots.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
.. _character-slot-label:
22

33
Шаблоны персонажей
4-
============
4+
==================
55

66
Шаблон персонажей - мастерский инструмент позволяющий создать одного персонажа (собственно, шаблон) на основании которого, при принятии заявки, будут созданы отдельные персонажи. Шаблону персонажей можно присваивать поля (в том числе и с предустановленным значением) и привязывать группы.
77

docs/checkin/during.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Включение регистрации на полигоне
2-
========================
2+
=================================
33

44
Чтобы начать регистрацию приезжающих на игру, пройдите в своем проекте:
55
**Прочее > Настройки > Настройки регистрации**

docs/checkin/statistic.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Статистика зарегистрированных
2-
========================
2+
=============================
33

44
Статистика по ходу регистрации доступна по ссылке **Прочее > Регистрация > Статистика по регистрации**.
55
Показывается число принятых заявок, еще не прошедших регистрацию.

docs/communication/claim_comments.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Комментарии в заявке
2-
========================
2+
====================
33

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

@@ -10,7 +10,7 @@
1010
Игроку приходят уведомления о любых видимых ему комментариях на e-mail. Ответственному за заявку мастеру приходят любые комментарии (как от игрока, так и от других мастеров). Остальные мастера `могут подписаться на уведомления о новых комментариях </communication/subscriptions.html>`_; также уведомления приходят тому мастеру, на комментарий которого вы отвечаете, вне зависимости от его личных настроек уведомлений.
1111

1212
Автоматические комментарии
13-
---------------------------------
13+
--------------------------
1414

1515
Большинство значимых операций с заявкой (изменение статуса заявки, информация об отправке игроком и приеме мастером взноса) сопровождается комментарием, который остается в заявке. Такие комментарии имеют выделенный жирным заголовок — название операции, которая была произведена. Старайтесь оставлять значимые комментарии, которые помогут вам в будущем или другому мастеру понять, почему было то или иное решение (например, причины, по которым заявка была отклонена — даже если вы отклоняете «по просьбе игрока»).
1616

@@ -31,7 +31,7 @@
3131
Для информирования мастеров о сдаче взноса пользуйтесь `специальной функцией </for_players/inform_about_payment.html>`_, а не обычными комментариями.
3232

3333
Скрытые комментарии, видимые мастерам
34-
------------------------
34+
-------------------------------------
3535

3636
Скрытые комментарии видны только другим мастерам (людям, у которых есть доступ в проект). Уведомления о скрытых комментариях приходят только тем мастерам, которые подписаны на комментарии к этой заявке или на чей комментарий оставляется ответ. Чтобы оставить скрытый комментарий, перед отправкой отметьте чекбокс «только для мастеров».
3737

@@ -48,7 +48,7 @@
4848
:alt: Комментарий мастерам
4949

5050
Как скрыть ошибочно оставленный комментарий
51-
---------------------------------------------
51+
-------------------------------------------
5252

5353
Комментарий, который был по ошибке оставлен игроку, но предназначался для мастеров, можно на странице заявки скрыть:
5454

docs/communication/forums.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Форумы
2-
========================
2+
======
33

44
Форумы полезны для подготовки групп игроков, которые заявляются отдельно, но должны обсудить какие-то общие завязки. Как и комментарии в заявке, каждый форум имеет древовидную структуру с иерархией сообщений.
55

@@ -16,7 +16,7 @@
1616
.. attention:: Доступ к уже открытому форуму нельзя отредактировать, т.е. нельзя переназначить форум другой группе или скрыть его от всех кроме мастеров.
1717

1818
Общие настройки нового форума
19-
---------------------------------
19+
-----------------------------
2020

2121
Каждый новый форум имеет заголовок и стартовое сообщение. И то, и другое видно всем, у кого есть доступ к этому форуму. Чтобы легче ориентироваться в списке форумов, советуем давать им значимые названия для облегчения навигации. Если вы хотите, чтобы всем участникам пришло уведомление об открытии нового форума — выберите пункт «уведомить по e-mail».
2222

@@ -30,7 +30,7 @@
3030
.. hint:: Если форум предназначен для конкретной группы — удобно обозначить это в названии («Королевство Аэдирн: обсуждение завязок», «Хакеры: обсуждение внутренних правил», «Цинтра: строяк крепости» и т.п.), так как на странице со всеми форумами группа не показывается.
3131

3232
Как завести новый форум для всех игроков
33-
------------------------------------
33+
----------------------------------------
3434

3535
Доступные всем игрокам форумы можно заводить через меню группы «Все роли» или на странице всех форумов.
3636

@@ -49,7 +49,7 @@
4949
:alt: Новый форум для всех через Все роли
5050

5151
Как завести новый форум для группы
52-
------------------------------------
52+
----------------------------------
5353

5454
Форумы можно заводить для любой `группы </groups/index.html>`_ или `специальной группы </groups/hidden-group.html#id5>`_). Вкладка «Форумы» доступна в общих настройках группы (перейдите к ним кликом по названию группы).
5555

@@ -76,7 +76,7 @@
7676
:alt: Новый форум для Мастеров
7777

7878
Примеры, как форумы выглядят для игроков
79-
--------------------------------------------
79+
----------------------------------------
8080

8181
Форумы, к которым у игрока есть доступ, показываются ему на странице всех активных форумов. К ней можно перейти через меню **Форумы > Все активные**.
8282

docs/communication/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Общение и уведомления
2-
============
2+
=====================
33

44
Мы стремимся к тому, чтобы максимум общения, связанного с подготовкой к игре, проходило через базу заявок. Общение игрока с мастером (или мастерами) происходит в его заявке, а для общения игроков друг с другом созданы форумы, привязанные к группам сетки ролей (можно создавать их для «всех игроков в Лондоне», «всех эльфов» и т.п. — любой `группы </groups/index.html>`_ или `специальной группы </groups/hidden-group.html#id5>`_).
55

0 commit comments

Comments
 (0)