Розгортання системи K2 ERP Python для розробників
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