Перейти до вмісту

Розгортання системи K2 ERP Python для розробників

Матеріал з K2 ERP Wiki
Версія від 21:20, 28 квітня 2026, створена R (обговорення | внесок) (Розгортання K2 ERP для розробників Python)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)

якщо отримали помилку встановлюємо JRE/JDK командами:


git checkout master (переключаємось на іншу локальну гілку)

  • копіюєм з віддаленого сервера існуючий проект по ftp
  • переходимо в каталог /K2CloudERP і запускаємо файл first_run для конфігурація параметрів віртуального середовища в поточному локальному розташуванні командою:

git remote -v (перевірка)

відкриваємо файл settings.py і додаємо в словник ключі з потрібними компонентами (повний список в файлі settings_example.py)

sudo rm /etc/apt/preferences.d/nosnap.pref

* переходимо в файл налаштувань /K2CloudERP/cfg/k2/k2/k2cfg.py і змінюємо там domain_protocol з https на http

* запускаємо додаток:

ej2.min.js cat ~/.ssh/id_rsa.pub python git_cmd.py push

components/k2update


* встановлення через snap
<pre>
git config --global user.name "Ваше Ім'я"
== 6.; конфігурація завантаження компонент на сервер актуалізація ==
<pre>
завантажуємо архів https://git-scm.com/downloads/win розпаковуємо архів, запускаємо файл встановленя і встановлюємо згідно інструкцій
== 1.; Копіювання існуючого проекту по ftp, перший запуск ==
.gitignore

* встановлення через завантаження архіву з сайту

eval "$(ssh-agent -s)"

== 3.; Встановлення та конфігурація git ==
відкриваємо проект в консолі і переходимо в каталог auto_update<pre>
python git_cmd.py clone
Розгортання локально робочого проекту K2 ERP та підключення до нього розробника

sudo apt install snapd

для одної компоненти вручну



  • відкриваємо середовище розробки Pycharm,
  • відкриваємо поточний завантажений проект та налаштовуємо змінне середовище для поточного проекту:

завантажуємо архів https://www.jetbrains.com/pycharm/download/?section=windows

коміт змін


* запускаємо проект в дебаг режимі (кнопка в правому верхньому куті)

* запускаємо проект з консолі Pycharm командою:

пушимо зміни на віддалений репозиторій

=== Завантаження архіву ===

  • активація віртуального середовища вручну
python git_cmd.py pull
=== авторизація через ssh ===

=== вручну ===

* встановлення

cd components/k2site
https://www.jetbrains.com/pycharm/download/?section=linux
== 7.; Завантаження нової версії компоненти в систему актуалізація ==
python k2update_push.py
=== конфігурація SSH ключа ===

розпаковуємо архів, переходимо в папку bin і запускаємо


* налалштування git

=== автономно (скрипт auto_update) ===
git status
git checkout -b main (створюємо локальну гілку main і перемикаємось на неї)
bash first_run.sh - для Linux

в правому нижньому куті вибираємо Python Interpreter --> Add new Interpreter -->

копіюєм каталог із скриптом і вставляємо в корінь проекту на рівні з виконуваним файлом app.py https://git.corp2.eu/k2erp/python/k2/base/client/auto_update

Для створення нової версії компоненти (stable або beta (testing) версії): ./first_run.bat - для Windows python git_cmd.py clone source venv/bin/activate - для Linux git pull origin main

розпаковуємо архів, запускаємо файл встановленя і встановлюємо згідно інструкцій

.\venv\Scripts\activate - для Windows

=== для Linux ===
git status

* виконуємо в консолі команду, для клонування актуальних версій компонент і перейменовування каталогів поточних версій компонент
<pre>

sudo apt update

  • переходимо в папку необхідної компоненти, як ілюстрація k2site

конфігурація користувача

Розгортання локального робочого проєкту


* ініціалізуєм git в поточній директорії

отримуємо зміни з віддаленого сервера


./pycharm.sh bash run.sh - для Linux

<pre>

* отримуємо інформаційні дані з віддаленого репозиторію але не змінюємо поточну робочу гілку
sudo apt install git
<pre>
git push

* отримуємо інформаційні дані з віддаленого репозиторію з віддаленого репозиторію та автономно об'єднує їх з поточною локальною гілкою.; # У файлі <code>/K2CloudERP/cfg/k2/k2/k2cfg.py</code> для локального запуску змінено <code>domain_protocol</code> з <code>https</code> на <code>http</code>.; # Проєкт запускається через <code>run.sh</code> або <code>run.bat</code>.; # Оновлено компоненти на тестових доменах <code>deb1</code>–<code>deb3</code> та перевірено функціональні можливості.;<pre>
cd auto_update
<pre>
git fetch origin
== Оновлюємо змінені версії компонент на тестових доменах deb1-deb3 та тестуємо функціональні можливості.; 8. ==
<pre>
ssh-keygen -t rsa -b 4096 -C "ваша_електронна_пошта@example.com"
у полі locations додаємо шлях до поточної папки venv
sudo apt update

ssh-add ~/.ssh/id_rsa

* після внесених в коді змін перевіряємо їх командою

)

sudo apt update

  • додаємо зміни командою
python git_cmd.py status

./run.bat - для Windows

  • комітимо зміни:

2.; Встановлення, середовища розробки Pycharm та відкриття проекту:


* пушимо зміни на віддалений репозиторій
<pre>

* при подальшій роботі отримуємо зміни з віддаленого репозиторію командою

перевірка статусу

для Linux

для Windows

k2site.txt

  • відкриваємо папку builder/config
  • в файлі component-list.txt додаємо список компонент, які будемо завантажувати на сервер актуалізація, кожна компонента з нового рядка

Див.; додатково

python git_cmd.py commit git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git sudo snap install pycharm-community --classic

копіюєм отриманий ключ і вставляємо у віддалений репозиторій

  • в папці ignore створюємо файл з назвою компоненти і додаємо файли і папки, які не потрібно завантажувати на сервер актуалізація

git pull git config --global user.email "ваша_електронна_пошта@example.com" __pycache__ components/k2adm для списку компонент (скрипт auto_update)

Контрольний чек-лист розгортання

cd auto_update

  • в файлі token.txt додаємо токен доступу до сервера актуалізація

git commit -m "Назва комміту" bash run.sh - для Linux

  • змінюємо версію в файлі setup.py в корні каталогу компоненти (рядок 5 поле version, як ілюстрація version=2.0.4.43, version_type='stable' (testing))
  • додаємо характеристика змін в в файлі history.txt в корні каталогу компоненти (1 рядок, як ілюстрація 2.0.4.43 - додавання додаткового поля в форму реєстрації)
  • переходимо в корінь додатку, на рівні з виконуваним файлом app.py:

pycharm-community

авторизація з допомогою логіна і пароля


* завантажуємо додані в файлі builder/config/component-list.txt компоненти командою:
components/k2site

клонуємо компоненти з віддаленого сервера

git add .; # Підключено віддалений репозиторій потрібної компоненти або список компонент через <code>auto_update</code>.; # Налаштовано <code>builder/config/component-list.txt</code>, <code>ignore</code> та <code>token.txt</code> для сервера оновлень.; # Проєкт скопійовано з віддаленого сервера по FTP.sh</code> або <code>first_run.bat</code>.; # Оновлено версію компоненти в <code>setup.py</code> і характеристика змін у <code>history.txt</code>.; # Встановлено та налаштовано Git.; # Перевірено <code>git status</code>, <code>git pull</code>, <code>git push</code>.; # Виконано <code>python k2update_push.py</code>.; # У PyCharm налаштовано Python Interpreter на локальне віртуальне середовище <code>venv</code>.;

( приклад:


# Виконано first_run.;== 5.; Комміт змін на віддалений репозиторій git ==

4.; підключаємо віддалений репозиторій git для певної компоненти або списку компонент

* перевіряємо зміни локально скопійованої копії проекту з віддаленим репозиторієм відкриваємо проект в консолі і переходимо в каталог auto_update
sudo apt install default-jdk
.git

git init

cd k2
у полі Base Interpreter додаємо шлях до поточного виконуваного Python файлу (Пр: ../K2CloudERP/venv/bin.python3.12.exe)

для Windows

інструкція з локального розгортання робочого проєкту K2 ERP забезпечується через Розгортання системи K2 ERP Python; додатково реалізовано підключення розробника, конфігурація PyCharm, Git, компонентів, сервера оновлень і процесу публікації нових версій компонент виступає ключовою рисою розробників.; ./run.bat - для Windows * K2 ERP * K2 ERP Python для розробників * Python * PyCharm * Git * Розгортання системи K2 ERP PHP