Розгортання системи K2 ERP Python для розробників: відмінності між версіями
R (обговорення | внесок) Розгортання K2 ERP для розробників Python |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
</pre> | domain_protocol = "http" | ||
https://git.corp2.eu/k2erp/python/k2/base/client/auto_update | |||
<pre> | |||
<pre> | |||
<pre> | |||
Після встановлення PyCharm потрібно відкрити локально скопійований проєкт K2 ERP.; | У Python Interpreter через локальний <code>venv</code> | |||
|- | |||
| Як працювати з компонентами?; Що перевірити | |||
<pre> | |||
components/k2adm | |||
bash run.sh | |||
Перегляд публічного ключа: | |||
[[Категорія:K2 ERP Python]] | |||
</pre> | |||
Завантажити PyCharm можна з офіційної сторінки: | |||
<pre> | |||
<pre> | |||
== 10.; Коміт змін вручну == | |||
Після копіювання потрібно перейти в каталог: | |||
</pre> | |||
</pre> | |||
cat ~/.ssh/id_rsa.pub | |||
<pre> | |||
[[Категорія:Git]] | |||
Завантаження компонент, зазначених у файлі <code>builder/config/component-list.txt</code>, виконується командою: | |||
git status | |||
[[Категорія:Розгортання K2 ERP]] | |||
Приклад: | |||
</pre> | |||
Після конфігурація інтерпретатора проєкт можна запускати в режимі debug або з консолі PyCharm.;=== Встановлення PyCharm у Linux з архіву === | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
Після зміни версії потрібно додати характеристика змін у файл: | |||
</pre> | </pre> | ||
</pre> | |||
</div> | |||
<pre> | |||
</pre> | |||
Повний приклад доступний у файлі: | |||
/K2CloudERP | |||
</pre> | </pre> | ||
Приклад рядка: | |||
<pre> | |||
</pre> | |||
<pre> | <pre> | ||
Приклад вмісту: | |||
<pre> | |||
<pre> | |||
</pre> | |||
<pre> | |||
'''істотно.''' Перед комітом потрібно перевірити <code>git status</code>, щоб випадково не відправити службові файли, локальні конфігурація, тимчасові файли або зайві каталоги.; Питання | |||
<pre> | |||
на: | |||
Публікація змін у віддалений репозиторій: | |||
</pre> | |||
Після підготовки версії потрібно перейти в корінь застосунку, на рівень із файлом: | |||
git pull origin main | |||
== 2.; Встановлення PyCharm == | |||
<pre> | |||
потрібно додати в словник ключі потрібних компонент.;<pre> | |||
</pre> | |||
Файл додатково знаходиться в корені каталогу компоненти.; cd auto_update | |||
<pre> | |||
sudo apt update | |||
builder/config/ignore | |||
</pre> | |||
cd k2 | |||
<pre> | |||
</pre> | |||
[[Категорія:Python]] | |||
<pre> | |||
!;== 1.; Копіювання проєкту і перший запуск == | |||
Для роботи зі списком компонент можна використовувати скрипт <code>auto_update</code>.; Додавання віддаленого репозиторію: | |||
!; setup.py | |||
</pre> | |||
<pre> | |||
Спочатку потрібно скопіювати існуючий робочий проєкт K2 ERP з віддаленого сервера по FTP.; Для клонування актуальних версій компонент виконується команда: | |||
</pre> | |||
<pre> | |||
</pre> | |||
Додавання ключа: | |||
== 5.; Базове конфігурація Git == | |||
</pre> | |||
sudo apt install default-jdk | |||
<pre> | |||
</pre> | |||
sudo apt update | |||
app.py | |||
</pre> | </pre> | ||
version_type = "stable" | |||
./first_run.bat | |||
== Загальна схема роботи == | |||
ej2.min.js | ej2.min.js | ||
Для локального запуску змінити параметр: | |||
Завантажити Git можна зі сторінки: | |||
</pre> | |||
bash run.sh | |||
<pre> | <pre> | ||
'''істотно.''' Для локальної розробки потрібно перевірити, що <code>domain_protocol</code> змінено з <code>https</code> на <code>http</code>.; .gitignore | |||
<pre> | <pre> | ||
Після завантаження нової версії потрібно оновити змінені компоненти на тестових доменах: | |||
</pre> | |||
components/k2site | |||
Додати зміни: | |||
Після внесення змін у коді потрібно перевірити статус: | |||
потрібно створити файл із назвою компоненти та вказати файли або папки, які не потрібно завантажувати.; Клонування компонент: | |||
</pre> | |||
<pre> | <pre> | ||
потрібно вказати токен доступу до сервера оновлень.; 2.0.4.43 - додавання додаткового поля у форму реєстрації | |||
!; | Через <code>auto_update</code> або вручну через Git | |||
|- | |||
| Як публікувати зміни?; Розгортання локального середовища K2 ERP складається з кількох основних етапів: | |||
Можна використовувати PyCharm Community або іншу редакцію, яка підходить для роботи з Python-проєктами.; потрібно вказати список компонент, які будуть завантажуватися на сервер оновлень.; це інструкція з локального запуску робочого проєкту [[K2 ERP]] забезпечується через '''Розгортання системи K2 ERP Python; додатково реалізовано підключення середовища розробки.; | Через Git-коміт і <code>python k2update_push.py</code> | |||
|- | |||
| Де тестувати актуалізація?; Він адаптує віртуальне середовище до поточного локального розташування проєкту.; Для розробки застосовують, коли потрібно середовище '''PyCharm'''.;</pre> | |||
sudo snap install pycharm-community --classic | |||
Отримання змін із віддаленого сервера: | |||
</pre> | </pre> | ||
Ініціалізація Git у поточній директорії: | |||
<pre> | |||
<pre> | |||
<pre> | <pre> | ||
git push | |||
<pre> | |||
</pre> | |||
</pre> | </pre> | ||
Запуск ssh-agent: | |||
</div> | |||
<pre> | |||
</pre> | </pre> | ||
<pre> | |||
Ця команда клонує компоненти та перейменовує каталоги поточних версій компонент.; Причина | |||
</pre> | </pre> | ||
Windows: | |||
domain_protocol = "https" | |||
</pre> | |||
'''Практична порада.''' Для стабільної роботи з Git краще налаштувати SSH-доступ один раз і далі працювати з репозиторіями без постійного введення логіна та пароля.;</pre> | |||
# копіювання робочого проєкту з віддаленого сервера; | |||
# первинне конфігурація локального середовища; | |||
# запуск системи; | |||
# відкриття проєкту в PyCharm; | |||
# конфігурація Python Interpreter; | |||
# встановлення та конфігурація Git; | |||
# підключення репозиторіїв компонент; | |||
# коміт і публікація змін; | |||
# підготовка компонент до сервера оновлень; | |||
# тестування на тестових доменах.; Якщо компоненти підключені через <code>auto_update</code>, робота виконується з каталогу: | |||
__pycache__ | |||
Для створення нової версії компоненти потрібно змінити версію у файлі: | |||
< | |||
Після завантаження потрібно розпакувати архів, перейти в каталог <code>bin</code> і запустити: | |||
</pre> | </pre> | ||
Для публікації компонент на сервер оновлень застосовується конфігурація в каталозі: | |||
</pre> | </pre> | ||
Для тестової версії можна використовувати: | |||
</pre> | </pre> | ||
./pycharm.sh | |||
<pre> | <pre> | ||
Тестування має підтвердити, що: | |||
Linux: | |||
=== | === Встановлення PyCharm у Linux через snap === | ||
</pre> | |||
</pre> | |||
<pre> | |||
=== Linux === | |||
=== | |||
</pre> | </pre> | ||
</pre> | |||
<pre> | |||
git config --global user.email "ваша_електронна_пошта@example.com" | |||
{{DISPLAYTITLE:Розгортання системи K2 ERP Python для розробників}} | |||
..\K2CloudERP\venv\Scripts\python.exe | |||
git init | |||
git | |||
</pre> | </pre> | ||
Windows: | |||
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;"> | |||
<pre> | |||
<pre> | |||
== Типові помилки == | |||
{| class="wikitable" style="width:100%;" | |||
deb2 | |||
<pre> | <pre> | ||
</pre> | </pre> | ||
</pre> | </pre> | ||
. | </pre> | ||
git remote -v | |||
Після конфігурація можна запускати застосунок.; Створити коміт: | |||
[[Категорія:PyCharm]] | |||
[[Категорія:K2 ERP]] | |||
У каталозі: | |||
bash first_run.sh | |||
<pre> | <pre> | ||
= | <div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | ||
Створення SSH-ключа: | |||
Якщо потрібно підключити лише одну компоненту вручну, потрібно перейти в каталог потрібної компоненти.; component-list.txt | |||
git status | git status | ||
<pre> | |||
<pre> | |||
Після завантаження потрібно запустити інсталятор і встановити Git згідно з інструкціями.;</pre> | |||
Отриманий публічний ключ потрібно скопіювати та додати у віддалений Git-репозиторій.;<pre> | |||
version = "2.0.4.43" | |||
<pre> | <pre> | ||
</pre> | </pre> | ||
</pre> | |||
Після завантаження потрібно запустити інсталятор і встановити середовище розробки згідно з інструкціями майстра встановлення.; python git_cmd.py commit | |||
Після цього потрібно відкрити файл налаштувань: | |||
components/k2update | |||
У файлі: | |||
=== Windows === | |||
<pre> | |||
Після встановлення Git потрібно вказати ім’я користувача та email.;</pre> | |||
</pre> | |||
</pre> | </pre> | ||
.\venv\Scripts\activate | |||
app.py | |||
git checkout -b main | |||
<pre> | <pre> | ||
eval "$(ssh-agent -s)" | |||
sudo apt install snapd | |||
</pre> | </pre> | ||
Якщо під час запуску виникає помилка, потрібно встановити JRE/JDK: | |||
Приклад файлу: | |||
</pre> | </pre> | ||
builder/config | |||
../K2CloudERP/venv/bin/python3.12 | |||
<pre> | <pre> | ||
<pre> | <pre> | ||
<pre> | <pre> | ||
</pre> | |||
Linux: | |||
https://git-scm.com/downloads/win | |||
Отримання змін і автоматичне об’єднання з локальною гілкою: | |||
{| class="wikitable" style="width:100%;" | |||
__TOC__ | |||
</pre> | |||
[[Категорія:Компоненти K2 ERP]] | |||
<pre> | <pre> | ||
git fetch origin | Перевірка статусу: | ||
== | </div> | ||
< | |||
git config --global user.name "Ваше Ім'я" | |||
python git_cmd.py clone | |||
Git потрібен для роботи з репозиторіями компонент K2 ERP, отримання оновлень, комітів і публікації змін.; git fetch origin | |||
'''Коротко.''' Щоб почати роботу, потрібно скопіювати проєкт, виконати первинне конфігурація через <code>first_run</code>, запустити систему локально, підключити PyCharm, налаштувати Git і працювати з компонентами через репозиторії або скрипт <code>auto_update</code>.;== 7.; Підключення компонент через auto_update == | |||
[[Категорія:Розробка K2 ERP]] | |||
Під час подальшої роботи потрібно регулярно отримувати зміни з віддаленого репозиторію: | |||
deb3 | |||
|- | |||
| 1 | |||
| Проєкт скопійовано з віддаленого сервера по FTP | |||
|- | |||
| 2 | |||
| Виконано <code>first_run.sh</code> або <code>first_run.bat</code> | |||
|- | |||
| 3 | |||
| У <code>k2cfg.py</code> змінено <code>domain_protocol</code> з <code>https</code> на <code>http</code> | |||
|- | |||
| 4 | |||
| Проєкт запускається через <code>run.sh</code> або <code>run.bat</code> | |||
|- | |||
| 5 | |||
| У PyCharm налаштовано Python Interpreter на локальне <code>venv</code> | |||
|- | |||
| 6 | |||
| Встановлено та налаштовано Git | |||
|- | |||
| 7 | |||
| Налаштовано SSH або інший спосіб авторизації в репозиторії | |||
|- | |||
| 8 | |||
| Підключено потрібні компоненти вручну або через <code>auto_update</code> | |||
|- | |||
| 9 | |||
| Перевірено роботу <code>git status</code>, <code>git pull</code>, <code>git push</code> | |||
|- | |||
| 10 | |||
| Налаштовано <code>builder/config/component-list.txt</code> | |||
|- | |||
| 11 | |||
| Налаштовано файли <code>ignore</code> для компонент | |||
|- | |||
| 12 | |||
| Додано токен у <code>token.txt</code> | |||
|- | |||
| 13 | |||
| Оновлено версію компоненти в <code>setup.py</code> | |||
|- | |||
| 14 | |||
| Додано характеристика змін у <code>history.txt</code> | |||
|- | |||
| 15 | |||
| Виконано <code>python k2update_push.py</code> | |||
|- | |||
| 16 | |||
| Оновлено компоненти на <code>deb1</code>–<code>deb3</code> | |||
|- | |||
| 17 | |||
| Перевірено функціональні можливості після актуалізація | |||
|} | |||
=== Встановлення PyCharm у Windows === | |||
{| class="wikitable" style="width:100%;" | |||
./run.bat | |||
Створення локальної гілки <code>main</code> і перемикання на неї: | |||
/K2CloudERP/cfg/k2/k2/k2cfg.py | |||
|- | |||
| Проєкт не запускається локально | |||
| Не виконано <code>first_run</code> або неправильно налаштоване середовище | |||
| Повторити <code>first_run</code>, перевірити <code>venv</code> | |||
|- | |||
| Локальний запуск відкривається через HTTPS | |||
| Не змінено <code>domain_protocol</code> | |||
| Перевірити <code>k2cfg.py</code> | |||
|- | |||
| PyCharm не бачить залежності | |||
| Не вибрано правильний Python Interpreter | |||
| Перевірити шлях до <code>venv</code> | |||
|- | |||
| Git не пушить зміни | |||
| Не налаштовано авторизацію або немає прав | |||
| Перевірити SSH-ключ, remote URL і доступи | |||
|- | |||
| На сервер оновлень потрапляють зайві файли | |||
| Не налаштовано <code>ignore</code> | |||
| Перевірити файл компоненти в <code>builder/config/ignore</code> | |||
|- | |||
| Компонента не оновлюється на тестовому домені | |||
| Не змінено версію або не завантажено актуалізація | |||
| Перевірити <code>setup.py</code>, <code>history.txt</code>, <code>k2update_push.py</code> | |||
|} | |||
history.txt | |||
</pre> | |||
У файлі: | |||
Отримання даних із віддаленого репозиторію без зміни поточної гілки: | |||
|- | |||
| З чого почати?;<div style="border:2px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | |||
source venv/bin/activate | |||
</pre> | |||
Приклад шляху: | |||
* компонента оновилася коректно; | |||
* новий функціональні можливості функціонує; | |||
* старий функціональні можливості не зламався; | |||
* помилки не відтворюються; | |||
* зміни можна передавати далі.; Завантажити PyCharm можна з офіційної сторінки: | |||
ssh-add ~/.ssh/id_rsa | ssh-add ~/.ssh/id_rsa | ||
=== Linux === | |||
<pre> | |||
</pre> | |||
</pre> | </pre> | ||
settings_example.py | |||
<pre> | |||
.git | |||
<pre> | |||
Для Windows шлях має змогу мати вигляд: | |||
settings.py | |||
!;=== Linux === | |||
=== Windows === | |||
deb1 | |||
</pre> | </pre> | ||
./ | ssh-keygen -t rsa -b 4096 -C "ваша_електронна_пошта@example.com" | ||
<pre> | |||
Перевірка статусу: | |||
== 12.; Підготовка нової версії компоненти == | |||
!; Після актуалізація необхідно перевірити функціональні можливості, який був змінений або залежить від оновленої компоненти.; № | |||
sudo rm /etc/apt/preferences.d/nosnap.pref | |||
</div> | |||
python k2update_push.py | |||
pycharm-community | |||
<pre> | |||
Перемикання на іншу локальну гілку, якщо потрібно: | |||
<pre> | |||
== 14.; Тестування на deb1–deb3 == | |||
[[Категорія:Сервер оновлень K2 ERP]] | |||
== 3.; Відкриття проєкту в PyCharm == | |||
== | sudo apt install git | ||
</pre> | </pre> | ||
<pre> | <pre> | ||
<pre> | <pre> | ||
== 4.; Встановлення Git == | |||
git commit -m "Назва коміту" | |||
</pre> | </pre> | ||
== Див.; додатково == | |||
== Коротко == | |||
У цьому каталозі запускається файл первинного конфігурація.; Відповідь | |||
<pre> | <pre> | ||
<pre> | |||
< | <pre> | ||
token.txt | |||
Після копіювання потрібно перейти в каталог проєкту: | |||
python git_cmd.py push | |||
Для роботи з віддаленими репозиторіями має змогу використовуватися SSH-авторизація.; | Скопіювати проєкт, виконати <code>first_run</code>, змінити <code>domain_protocol</code> і запустити <code>run</code> | |||
|- | |||
python git_cmd.py | | Яке середовище розробки застосовується?; У PyCharm потрібно налаштувати Python Interpreter для поточного проєкту.; Інакше локальний запуск має змогу працювати некоректно.; Перевірка | ||
Окремо варто відзначити конфігурація Git, роботи з компонентами і публікації оновлень виступає ключовою рисою розробників'''.; Відправити зміни у віддалений репозиторій: | |||
python git_cmd.py clone | |||
</pre> | |||
У файлі: | |||
Репозиторій скрипта: | |||
Приклад переходу: | |||
Перевірка віддаленого репозиторію: | |||
<pre> | |||
Приклад: | |||
[[Категорія:Корпоративна Wiki]] | |||
</pre> | |||
<pre> | |||
</pre> | |||
git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git | git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git | ||
== 11.; конфігурація завантаження компонент на сервер оновлень == | |||
< | |||
== 8.; Підключення однієї компоненти вручну == | |||
== 6.; конфігурація SSH-ключа == | |||
<pre> | |||
cd auto_update | |||
== Контрольний чек-лист розгортання == | == Контрольний чек-лист розгортання == | ||
# відкрити проєкт у PyCharm; | |||
# у правому нижньому куті вибрати '''Python Interpreter'''; | |||
# натиснути '''Add New Interpreter'''; | |||
# у полі '''Location''' вказати шлях до локальної папки <code>venv</code>; | |||
# у полі '''Base Interpreter''' вказати шлях до виконуваного Python-файлу з поточного віртуального середовища.; k2site.txt | |||
<pre> | |||
<pre> | |||
Каталог зі скриптом потрібно скопіювати в корінь проєкту на рівень із файлом: | |||
</pre> | |||
!; git add .; Помилка | |||
</pre> | |||
<pre> | <pre> | ||
</pre> | |||
version_type = "testing" | |||
</pre> | |||
https://www.jetbrains.com/pycharm/download/?section=linux | |||
git pull | |||
== 13.; Завантаження компоненти в систему актуалізація == | |||
=== Ручна активація віртуального середовища === | |||
python git_cmd.py pull | |||
</pre> | |||
sudo apt update | |||
Документ призначений для розробників, які підключаються до Python-версії K2 ERP, працюють із компонентами системи, вносять зміни в код і передають нові версії на сервер оновлень.; !; ./run.bat | |||
=== Windows === | |||
python git_cmd.py status | |||
</pre> | |||
Файл знаходиться в корені каталогу компоненти.; | PyCharm | |||
|- | |||
| Де налаштовується локальний Python?; Кожна компонента записується з нового рядка.; | На тестових доменах <code>deb1</code>, <code>deb2</code>, <code>deb3</code> | |||
|} | |||
<pre> | <pre> | ||
* [[K2 Cloud ERP|K2 ERP]] | * [[K2 Cloud ERP|K2 ERP]] | ||
| Рядок 245: | Рядок 624: | ||
* [[Git]] | * [[Git]] | ||
* [[Розгортання системи K2 Cloud ERP PHP|Розгортання системи K2 ERP PHP]] | * [[Розгортання системи K2 Cloud ERP PHP|Розгортання системи K2 ERP PHP]] | ||
* [[Розгортання K2 ERP]] | |||
* [[Компоненти K2 ERP]] | |||
* [[Сервер оновлень K2 ERP]] | |||
cd components/k2site | |||
git checkout master | |||
https://www.jetbrains.com/pycharm/download/?section=windows | |||
<pre> | |||
як ілюстрація: | |||
== 9.; Коміт змін через auto_update == | |||
Коміт змін: | |||
=== Запуск з консолі PyCharm === | |||
Порядок дій: | |||
<pre> | |||
Поточна версія на 17:50, 1 травня 2026
domain_protocol = "http"
https://git.corp2.eu/k2erp/python/k2/base/client/auto_update
<pre> <pre> Після встановлення PyCharm потрібно відкрити локально скопійований проєкт K2 ERP.; | У Python Interpreter через локальний <code>venv</code> |- | Як працювати з компонентами?; Що перевірити <pre> components/k2adm bash run.sh Перегляд публічного ключа: [[Категорія:K2 ERP Python]]
Завантажити PyCharm можна з офіційної сторінки:
<pre> == 10.; Коміт змін вручну == Після копіювання потрібно перейти в каталог:
cat ~/.ssh/id_rsa.pub
[[Категорія:Git]] Завантаження компонент, зазначених у файлі <code>builder/config/component-list.txt</code>, виконується командою: git status [[Категорія:Розгортання K2 ERP]] Приклад:
Після конфігурація інтерпретатора проєкт можна запускати в режимі debug або з консолі PyCharm.;=== Встановлення PyCharm у Linux з архіву ===
Після зміни версії потрібно додати характеристика змін у файл:
Повний приклад доступний у файлі: /K2CloudERP
Приклад рядка:
Приклад вмісту: <pre> <pre>
'''істотно.''' Перед комітом потрібно перевірити <code>git status</code>, щоб випадково не відправити службові файли, локальні конфігурація, тимчасові файли або зайві каталоги.; Питання <pre> на: Публікація змін у віддалений репозиторій:
Після підготовки версії потрібно перейти в корінь застосунку, на рівень із файлом: git pull origin main
2.; Встановлення PyCharm
потрібно додати в словник ключі потрібних компонент.;<pre>
Файл додатково знаходиться в корені каталогу компоненти.; cd auto_update
sudo apt update builder/config/ignore
cd k2
!;== 1.; Копіювання проєкту і перший запуск == Для роботи зі списком компонент можна використовувати скрипт <code>auto_update</code>.; Додавання віддаленого репозиторію: !; setup.py
Спочатку потрібно скопіювати існуючий робочий проєкт K2 ERP з віддаленого сервера по FTP.; Для клонування актуальних версій компонент виконується команда:
Додавання ключа:
5.; Базове конфігурація Git
sudo apt install default-jdk
sudo apt update
app.py
version_type = "stable"
./first_run.bat
Загальна схема роботи
ej2.min.js Для локального запуску змінити параметр:
Завантажити Git можна зі сторінки:
bash run.sh
'''істотно.''' Для локальної розробки потрібно перевірити, що <code>domain_protocol</code> змінено з <code>https</code> на <code>http</code>.; .gitignore <pre> Після завантаження нової версії потрібно оновити змінені компоненти на тестових доменах:
components/k2site Додати зміни: Після внесення змін у коді потрібно перевірити статус:
потрібно створити файл із назвою компоненти та вказати файли або папки, які не потрібно завантажувати.; Клонування компонент:
потрібно вказати токен доступу до сервера оновлень.; 2.0.4.43 - додавання додаткового поля у форму реєстрації !; | Через <code>auto_update</code> або вручну через Git |- | Як публікувати зміни?; Розгортання локального середовища K2 ERP складається з кількох основних етапів: Можна використовувати PyCharm Community або іншу редакцію, яка підходить для роботи з Python-проєктами.; потрібно вказати список компонент, які будуть завантажуватися на сервер оновлень.; це інструкція з локального запуску робочого проєкту [[K2 ERP]] забезпечується через '''Розгортання системи K2 ERP Python; додатково реалізовано підключення середовища розробки.; | Через Git-коміт і <code>python k2update_push.py</code> |- | Де тестувати актуалізація?; Він адаптує віртуальне середовище до поточного локального розташування проєкту.; Для розробки застосовують, коли потрібно середовище '''PyCharm'''.;
sudo snap install pycharm-community --classic Отримання змін із віддаленого сервера:
Ініціалізація Git у поточній директорії:
<pre> <pre> git push <pre>
Запуск ssh-agent:
Ця команда клонує компоненти та перейменовує каталоги поточних версій компонент.; Причина
Windows:
domain_protocol = "https"
Практична порада. Для стабільної роботи з Git краще налаштувати SSH-доступ один раз і далі працювати з репозиторіями без постійного введення логіна та пароля.;
- копіювання робочого проєкту з віддаленого сервера;
- первинне конфігурація локального середовища;
- запуск системи;
- відкриття проєкту в PyCharm;
- конфігурація Python Interpreter;
- встановлення та конфігурація Git;
- підключення репозиторіїв компонент;
- коміт і публікація змін;
- підготовка компонент до сервера оновлень;
- тестування на тестових доменах.; Якщо компоненти підключені через
auto_update, робота виконується з каталогу:
__pycache__
Для створення нової версії компоненти потрібно змінити версію у файлі:
Після завантаження потрібно розпакувати архів, перейти в каталог bin і запустити:
Для публікації компонент на сервер оновлень застосовується конфігурація в каталозі:
Для тестової версії можна використовувати:
./pycharm.sh
Тестування має підтвердити, що: Linux: === Встановлення PyCharm у Linux через snap ===
=== Linux ===
git config --global user.email "ваша_електронна_пошта@example.com"
{{DISPLAYTITLE:Розгортання системи K2 ERP Python для розробників}}
..\K2CloudERP\venv\Scripts\python.exe
git init
Windows:
<pre>
== Типові помилки ==
{| class="wikitable" style="width:100%;"
deb2
<pre>
git remote -v
Після конфігурація можна запускати застосунок.; Створити коміт: У каталозі:
bash first_run.sh
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> Створення SSH-ключа: Якщо потрібно підключити лише одну компоненту вручну, потрібно перейти в каталог потрібної компоненти.; component-list.txt git status <pre> <pre> Після завантаження потрібно запустити інсталятор і встановити Git згідно з інструкціями.;Отриманий публічний ключ потрібно скопіювати та додати у віддалений Git-репозиторій.;
version = "2.0.4.43" <pre>
Після завантаження потрібно запустити інсталятор і встановити середовище розробки згідно з інструкціями майстра встановлення.; python git_cmd.py commit
Після цього потрібно відкрити файл налаштувань: components/k2update У файлі:
Windows
Після встановлення Git потрібно вказати ім’я користувача та email.;
.\venv\Scripts\activate
app.py git checkout -b main
eval "$(ssh-agent -s)" sudo apt install snapd
Якщо під час запуску виникає помилка, потрібно встановити JRE/JDK:
Приклад файлу:
builder/config ../K2CloudERP/venv/bin/python3.12
<pre> <pre>
Linux: https://git-scm.com/downloads/win
Отримання змін і автоматичне об’єднання з локальною гілкою:
Перевірка статусу:
</div>
git config --global user.name "Ваше Ім'я"
python git_cmd.py clone
Git потрібен для роботи з репозиторіями компонент K2 ERP, отримання оновлень, комітів і публікації змін.; git fetch origin
'''Коротко.''' Щоб почати роботу, потрібно скопіювати проєкт, виконати первинне конфігурація через <code>first_run</code>, запустити систему локально, підключити PyCharm, налаштувати Git і працювати з компонентами через репозиторії або скрипт <code>auto_update</code>.;== 7.; Підключення компонент через auto_update ==
[[Категорія:Розробка K2 ERP]]
Під час подальшої роботи потрібно регулярно отримувати зміни з віддаленого репозиторію:
deb3
|-
| 1
| Проєкт скопійовано з віддаленого сервера по FTP
|-
| 2
| Виконано <code>first_run.sh</code> або <code>first_run.bat</code>
|-
| 3
| У <code>k2cfg.py</code> змінено <code>domain_protocol</code> з <code>https</code> на <code>http</code>
|-
| 4
| Проєкт запускається через <code>run.sh</code> або <code>run.bat</code>
|-
| 5
| У PyCharm налаштовано Python Interpreter на локальне <code>venv</code>
|-
| 6
| Встановлено та налаштовано Git
|-
| 7
| Налаштовано SSH або інший спосіб авторизації в репозиторії
|-
| 8
| Підключено потрібні компоненти вручну або через <code>auto_update</code>
|-
| 9
| Перевірено роботу <code>git status</code>, <code>git pull</code>, <code>git push</code>
|-
| 10
| Налаштовано <code>builder/config/component-list.txt</code>
|-
| 11
| Налаштовано файли <code>ignore</code> для компонент
|-
| 12
| Додано токен у <code>token.txt</code>
|-
| 13
| Оновлено версію компоненти в <code>setup.py</code>
|-
| 14
| Додано характеристика змін у <code>history.txt</code>
|-
| 15
| Виконано <code>python k2update_push.py</code>
|-
| 16
| Оновлено компоненти на <code>deb1</code>–<code>deb3</code>
|-
| 17
| Перевірено функціональні можливості після актуалізація
|}
=== Встановлення PyCharm у Windows ===
{| class="wikitable" style="width:100%;"
./run.bat
Створення локальної гілки <code>main</code> і перемикання на неї:
/K2CloudERP/cfg/k2/k2/k2cfg.py
|-
| Проєкт не запускається локально
| Не виконано <code>first_run</code> або неправильно налаштоване середовище
| Повторити <code>first_run</code>, перевірити <code>venv</code>
|-
| Локальний запуск відкривається через HTTPS
| Не змінено <code>domain_protocol</code>
| Перевірити <code>k2cfg.py</code>
|-
| PyCharm не бачить залежності
| Не вибрано правильний Python Interpreter
| Перевірити шлях до <code>venv</code>
|-
| Git не пушить зміни
| Не налаштовано авторизацію або немає прав
| Перевірити SSH-ключ, remote URL і доступи
|-
| На сервер оновлень потрапляють зайві файли
| Не налаштовано <code>ignore</code>
| Перевірити файл компоненти в <code>builder/config/ignore</code>
|-
| Компонента не оновлюється на тестовому домені
| Не змінено версію або не завантажено актуалізація
| Перевірити <code>setup.py</code>, <code>history.txt</code>, <code>k2update_push.py</code>
|}
history.txt
У файлі: Отримання даних із віддаленого репозиторію без зміни поточної гілки:
| З чого почати?; source venv/bin/activate Приклад шляху:
ssh-add ~/.ssh/id_rsa Linuxsettings_example.py .git <pre> Для Windows шлях має змогу мати вигляд: settings.py !;=== Linux === === Windows === deb1 ssh-keygen -t rsa -b 4096 -C "ваша_електронна_пошта@example.com" Перевірка статусу: == 12.; Підготовка нової версії компоненти == !; Після актуалізація необхідно перевірити функціональні можливості, який був змінений або залежить від оновленої компоненти.; № sudo rm /etc/apt/preferences.d/nosnap.pref </div> python k2update_push.py pycharm-community <pre> Перемикання на іншу локальну гілку, якщо потрібно: <pre> == 14.; Тестування на deb1–deb3 == [[Категорія:Сервер оновлень K2 ERP]] == 3.; Відкриття проєкту в PyCharm == sudo apt install git <pre> == 4.; Встановлення Git == git commit -m "Назва коміту" Див.; додатковоКороткоУ цьому каталозі запускається файл первинного конфігурація.; Відповідь <pre> <pre> token.txt Після копіювання потрібно перейти в каталог проєкту: python git_cmd.py push Для роботи з віддаленими репозиторіями має змогу використовуватися SSH-авторизація.; | Скопіювати проєкт, виконати <code>first_run</code>, змінити <code>domain_protocol</code> і запустити <code>run</code> |- | Яке середовище розробки застосовується?; У PyCharm потрібно налаштувати Python Interpreter для поточного проєкту.; Інакше локальний запуск має змогу працювати некоректно.; Перевірка Окремо варто відзначити конфігурація Git, роботи з компонентами і публікації оновлень виступає ключовою рисою розробників'''.; Відправити зміни у віддалений репозиторій: python git_cmd.py clone У файлі: Репозиторій скрипта: Приклад переходу: Перевірка віддаленого репозиторію: Приклад: [[Категорія:Корпоративна Wiki]] git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git 11.; конфігурація завантаження компонент на сервер оновлень8.; Підключення однієї компоненти вручну6.; конфігурація SSH-ключаcd auto_update == Контрольний чек-лист розгортання == # відкрити проєкт у PyCharm; # у правому нижньому куті вибрати '''Python Interpreter'''; # натиснути '''Add New Interpreter'''; # у полі '''Location''' вказати шлях до локальної папки <code>venv</code>; # у полі '''Base Interpreter''' вказати шлях до виконуваного Python-файлу з поточного віртуального середовища.; k2site.txt <pre> <pre> Каталог зі скриптом потрібно скопіювати в корінь проєкту на рівень із файлом: |
; git add .; Помилка
version_type = "testing" https://www.jetbrains.com/pycharm/download/?section=linux git pull 13.; Завантаження компоненти в систему актуалізаціяРучна активація віртуального середовищаpython git_cmd.py pull sudo apt update Документ призначений для розробників, які підключаються до Python-версії K2 ERP, працюють із компонентами системи, вносять зміни в код і передають нові версії на сервер оновлень.; !; ./run.bat Windowspython git_cmd.py status Файл знаходиться в корені каталогу компоненти.; | PyCharm |
|---|---|
На тестових доменах deb1, deb2, deb3
|
* K2 ERP * K2 ERP Python для розробників * Python * PyCharm * Git * Розгортання системи K2 ERP PHP * Розгортання K2 ERP * Компоненти K2 ERP * Сервер оновлень K2 ERP cd components/k2site git checkout master https://www.jetbrains.com/pycharm/download/?section=windowsяк ілюстрація:Коміт змін:9.; Коміт змін через auto_update
Порядок дій:Запуск з консолі PyCharm