Розгортання K2 ERP: відмінності між версіями
R (обговорення | внесок) Створена сторінка: {{DISPLAYTITLE:Розгортання системи K2 Cloud ERP Python для розробників}} {{SEO |title=Розгортання системи K2 Cloud ERP Python для розробників — локальний запуск, PyCharm, Git, компоненти та сервер оновлень |description=Розгортання системи K2 Cloud ERP Python для розробників — технічна інструкція з... |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
/ | <syntaxhighlight lang="text"> | ||
Клонувати компоненти з віддаленого сервера: | |||
Приклад: | |||
</syntaxhighlight> | |||
git fetch origin | |||
<syntaxhighlight lang="text"> | |||
Ця команда завантажує в систему актуалізація компоненти, вказані у списку.;<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="bash"> | |||
Перейдіть у каталог локального проєкту: | |||
Далі вибрати: | |||
<syntaxhighlight lang="bash"> | |||
bash run.sh | |||
</syntaxhighlight> | |||
додатково бажано заздалегідь підготувати: | |||
'''Головна ідея:''' ця інструкція потрібна не кінцевому користувачу ERP, а розробнику або технічному партнеру K2, який має локально запустити K2 Cloud ERP, підключити компоненти, працювати з Git і готувати зміни до системи оновлень.; Якщо IDE використовує не той venv, залежності можуть не збігатися з проєктом.; cd components/k2site | |||
<syntaxhighlight lang="bash"> | |||
Перевірити встановлення: | |||
У файлі потрібно змінити версію в полі version.; # Додати характеристика змін у history.txt.; Для запуску в debug-режимі потрібно скористатися кнопкою запуску в правому верхньому куті PyCharm.; __pycache__ | |||
components/k2update | |||
<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
sudo rm /etc/apt/preferences.d/nosnap.pref | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
У полі Location потрібно додати шлях до поточної папки venv.; Для Linux: | |||
Шоста помилка — оновити версію компоненти в setup.py, але забути характеристика змін у history.txt.;<syntaxhighlight lang="bash"> | |||
Отримати інформаційні дані з віддаленого репозиторію, але не змінювати поточну робочу гілку: | |||
Додати віддалений репозиторій: | |||
./first_run.bat | |||
=== 6.2.; конфігурація ignore для компонент === | |||
git config --global --list | |||
<syntaxhighlight lang="bash"> | |||
Спочатку потрібно видалити обмеження для snap, якщо воно є собою: | |||
Add new Interpreter | |||
app.py | |||
<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
Після того як компоненти додані в: | |||
</syntaxhighlight> | |||
Показати публічний ключ: | |||
<syntaxhighlight lang="bash"> | |||
Потрібно відкрити файл: | |||
Для Windows потрібно завантажити PyCharm із сайту JetBrains: | |||
=== 5.1.; Коміт змін через auto_update === | |||
Для Windows: | |||
Перший етап — отримати локальну копію вже існуючого робочого проєкту K2 Cloud ERP.;</syntaxhighlight> | |||
Python Interpreter | |||
Після встановлення потрібно: | |||
<syntaxhighlight lang="bash"> | |||
Потрібно відкрити файл: | |||
'''Розгортання системи K2 Cloud ERP Python для розробників''' — це технічний бізнес-процес, який надає можливість розробнику отримати локальну копію проєкту, налаштувати віртуальне середовище, запустити K2 Cloud ERP, підключити PyCharm, налаштувати Git, працювати з компонентами, комітити зміни та публікувати нові версії компонент у систему оновлень.; Оновити пакети: | |||
=== 1.3.; Виконати перший запуск === | |||
Потрібно скопіювати з віддаленого сервера існуючий проєкт по FTP.; Перевірити конфігурація можна командою: | |||
Отримати зміни з віддаленого сервера: | |||
=== 1.4.; Змінити протокол домену в конфігурації === | |||
Ініціалізувати Git у поточній директорії: | |||
<syntaxhighlight lang="bash"> | |||
=== 4.1.; Підключення списку компонент через auto_update === | |||
<syntaxhighlight lang="bash"> | |||
bash first_run.sh | |||
Інструкція описує повний базовий цикл: копіювання існуючого проєкту з віддаленого сервера.; git pull | |||
=== 2.5.; конфігурація Python Interpreter === | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="text"> | |||
Приклад для Linux: | |||
Можливі два варіанти авторизації: | |||
[[Категорія:K2 ERP]] | |||
</syntaxhighlight> | |||
Третя помилка — підключити в PyCharm неправильний Python Interpreter.; # Встановити й налаштувати Git.; components/k2site | |||
</syntaxhighlight> | |||
[[Категорія:Архітектура K2 ERP]] | |||
Сторінка '''Розгортання системи K2 Cloud ERP Python для розробників''' має допомагати розробникам, технічним партнерам і командам впровадження знаходити повну інструкцію з локального запуску K2 Cloud ERP, конфігурація PyCharm, Git, компонентів, сервера оновлень і тестових доменів.;</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
sudo snap install pycharm-community --classic | |||
Якщо під час запуску виникла помилка, потрібно встановити JRE/JDK: | |||
</syntaxhighlight> | |||
[[Категорія:Git]] | |||
Для Linux: | |||
git status | |||
і запустити PyCharm: | |||
sudo apt install default-jdk | |||
* автономно через скрипт auto_update; | |||
* вручну для однієї конкретної компоненти.; # Підключити потрібні компоненти через auto_update або вручну.; # Виконати first_run.sh або first_run.bat.; git status | |||
У правому нижньому куті PyCharm потрібно вибрати: | |||
Кожна компонента додається з нового рядка.; * Відкрито локальний проєкт у PyCharm.; * Оновлено версію в setup.py.; # Налаштувати Python Interpreter на локальний venv.; # Закомітити й запушити зміни.; python git_cmd.py clone | |||
Створити коміт: | |||
<syntaxhighlight lang="text"> | |||
Потрібно завантажити архів PyCharm для Linux із сайту JetBrains: | |||
* автономно через auto_update; | |||
* вручну через стандартні команди Git.; # Налаштувати SSH-ключ або інший спосіб авторизації.; Зміни можна комітити двома способами: | |||
# Скопіювати проєкт по FTP.; * У k2cfg.py змінено domain_protocol з https на http.;== 7.; Завантаження нової версії компоненти в систему актуалізація == | |||
як ілюстрація: | |||
У полі Base Interpreter потрібно додати шлях до поточного виконуваного Python-файлу.;== 6.; конфігурація завантаження компонент на сервер актуалізація == | |||
* робочий комп’ютер на Linux або Windows; | * робочий комп’ютер на Linux або Windows; | ||
| Рядок 21: | Рядок 155: | ||
* PyCharm Community або іншу сумісну IDE; | * PyCharm Community або іншу сумісну IDE; | ||
* Git; | * Git; | ||
* SSH-ключ або логін | * SSH-ключ або логін і пароль для репозиторію; | ||
* доступ до тестових доменів | * доступ до тестових доменів deb1, deb2, deb3; | ||
* токен доступу до сервера актуалізація.; Після копіювання на локальному комп’ютері має з’явитися каталог: | * токен доступу до сервера актуалізація.;<syntaxhighlight lang="bash"> | ||
git pull origin main | |||
python k2update_push.py | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="python"> | |||
</syntaxhighlight> | |||
* відкрити PyCharm; | |||
* вибрати відкриття існуючого проєкту; | |||
* відкрити локально завантажений каталог K2CloudERP.;<syntaxhighlight lang="bash"> | |||
Оновити пакети: | |||
* авторизація за допомогою логіна і пароля; | |||
* авторизація через SSH.; # Запустити проєкт через run.sh або run.bat.; git commit -m "Назва комміту" | |||
=== 1.2.; Перейти в каталог проєкту === | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
builder/config | |||
=== конфігурація component-list.; 6.1.txt === | |||
Запушити зміни на віддалений репозиторій: | |||
Цей токен застосовується для авторизації під час завантаження компонент.; .git | |||
../K2CloudERP/venv/bin/python3.12 | |||
</syntaxhighlight> | |||
git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git | |||
Після завантаження потрібно розпакувати архів або запустити файл встановлення та встановити Git згідно з інструкціями.; центральний результат інструкції — правильна технічна дисципліна розробника K2: локальний запуск, окремий venv, контроль Git, робота з компонентами, версіонування, сервер оновлень і обов’язкове тестування на deb1-deb3 перед використанням змін у ширшому середовищі.;<syntaxhighlight lang="bash"> | |||
При подальшій роботі потрібно отримувати зміни з віддаленого репозиторію командою: | |||
<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="bash"> | |||
У файл settings.py потрібно додати в словник ключі з потрібними компонентами.;=== 3.3.; конфігурація користувача Git === | |||
</syntaxhighlight> | |||
У папці: | |||
</syntaxhighlight> | |||
https://www.jetbrains.com/pycharm/download/?section=linux | |||
setup.py | |||
=== 2.1.; Встановлення PyCharm для Linux через snap === | |||
<syntaxhighlight lang="bash"> | |||
git checkout -b main | |||
git checkout master | |||
Для Windows: | |||
=== 7.3.; Перейти в корінь додатку === | |||
version = "2.0.4.43" | |||
</syntaxhighlight> | |||
Git потрібен для роботи з компонентами K2, отримання змін із віддалених репозиторіїв, фіксації локальних змін і публікації змін у віддалений репозиторій.; # Відкрити проєкт у PyCharm.;</syntaxhighlight> | |||
Для Windows: | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
== 4.; Підключення віддаленого Git-репозиторію для компоненти або списку компонент == | |||
</syntaxhighlight> | |||
== 5.; Коміт змін на віддалений Git-репозиторій == | |||
Встановити snapd: | |||
Вона покриває запити: “K2 Cloud ERP Python розгортання”, “локальне розгортання K2 ERP”, “K2 ERP для розробників”, “first_run.sh K2”, “run.sh K2 ERP”, “PyCharm K2 Cloud ERP”, “Git компоненти K2 ERP”, “auto_update K2”, “k2update_push.py”, “сервер оновлень K2”, “deb1 deb2 deb3 K2”.; Після копіювання на локальному комп’ютері має з’явитися каталог: | |||
sudo apt install snapd | |||
== Рекомендований порядок роботи розробника == | |||
</syntaxhighlight> | |||
pycharm-community | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
ej2.min.js | |||
</syntaxhighlight> | |||
python git_cmd.py pull | |||
[[Категорія:Розробка K2 ERP]] | |||
<syntaxhighlight lang="bash"> | |||
=== 1.5.; Запустити додаток === | |||
</syntaxhighlight> | |||
builder/config/token.txt | |||
python git_cmd.py commit | |||
version_type = "stable" | |||
Після встановлення бажано перевірити Git у консолі: | |||
Для завантаження компонент на сервер актуалізація потрібно налаштувати конфігурацію в каталозі: | |||
<syntaxhighlight lang="python"> | |||
потрібно створити файл із назвою компоненти.; * Проєкт запускається через run.sh або run.bat.; # Протестувати функціональні можливості.; * Підключено потрібні компоненти через auto_update або вручну.; * Додано характеристика змін у history.txt.; Отриманий ключ потрібно скопіювати й додати у віддалений Git-репозиторій.; ./pycharm.sh | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
https://git.corp2.eu/k2erp/python/k2/base/client/auto_update | |||
<syntaxhighlight lang="bat"> | |||
Потрібно відкрити проєкт у консолі й перейти в каталог: | |||
== Пов’язані сторінки == | |||
=== 2.4.; Відкриття проєкту в PyCharm === | |||
<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="bat"> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bat"> | |||
=== 2.2.; Встановлення PyCharm для Linux через архів === | |||
=== 1.1.; Скопіювати проєкт з віддаленого сервера === | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
Отримати інформаційні дані з віддаленого репозиторію та автономно об’єднати їх із поточною локальною гілкою: | |||
[[Категорія:Корпоративна Wiki]] | |||
=== Додати характеристика змін у history.; 7.2.txt === | |||
Для створення SSH-ключа потрібно виконати команду: | |||
<syntaxhighlight lang="text"> | |||
[[Категорія:Python]] | |||
git remote -v | |||
</syntaxhighlight> | |||
=== 2.3.; Встановлення PyCharm для Windows === | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bat"> | |||
bin | |||
<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
=== 2.6.; Запуск проєкту в debug-режимі === | |||
</syntaxhighlight> | |||
sudo apt install git | |||
.gitignore | |||
Для testing/beta-версії: | |||
=== 2.7.; Ручна активація віртуального середовища === | |||
builder/config/ignore | |||
[[Категорія:PyCharm]] | |||
== Передумови == | == Передумови == | ||
У цьому файлі потрібно змінити значення параметра: | |||
</syntaxhighlight> | |||
ssh-add ~/.ssh/id_rsa | |||
== 3.; Встановлення та конфігурація Git == | |||
=== 3.2.; Встановлення Git для Windows === | |||
Запушити зміни на віддалений репозиторій: | |||
https://www.jetbrains.com/pycharm/download/?section=windows | |||
</syntaxhighlight> | |||
Далі потрібно відкрити файл: | |||
Друга помилка — не змінити domain_protocol з https на http для локальної роботи.; # Виконати python k2update_push.py.; Перевірити зміни локально скопійованої копії проєкту з віддаленим репозиторієм: | |||
git --version | |||
<syntaxhighlight lang="python"> | |||
<syntaxhighlight lang="text"> | |||
sudo apt update | |||
Запустити PyCharm: | |||
settings.py | |||
<syntaxhighlight lang="bash"> | |||
Для Linux: | |||
Повний список компонент можна дивитися у файлі: | |||
Після першого запуску потрібно перейти у файл налаштувань: | |||
Після внесення змін у код потрібно перевірити статус: | |||
[[Категорія:Партнерська програма K2]] | |||
</syntaxhighlight> | |||
Після конфігурація потрібно виконати команду для клонування актуальних версій компонент і перейменування каталогів поточних версій компонент: | |||
Після активації середовища команди Python і pip будуть виконуватися в межах локального venv цього проєкту.;<syntaxhighlight lang="bash"> | |||
Компоненти K2 можна підключати двома способами: | |||
<syntaxhighlight lang="bash"> | |||
У файл: | |||
./pycharm.sh | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
{{DISPLAYTITLE:Розгортання системи K2 Cloud ERP Python для розробників}} | |||
k2site.txt | |||
git add .;== 2.; Встановлення PyCharm і відкриття проєкту == | |||
Четверта помилка — працювати з компонентами без Git або без перевірки git status.; cd k2 | |||
</syntaxhighlight> | |||
./run.bat | |||
Перевірити підключений remote: | |||
/K2CloudERP | |||
</syntaxhighlight> | |||
=== 3.5.; конфігурація SSH-ключа === | |||
</syntaxhighlight> | |||
[[Категорія:Магазин доповнень K2]] | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
Репозиторій скрипта: | |||
Приклад для Windows: | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
Закомітити зміни: | |||
<syntaxhighlight lang="text"> | |||
<syntaxhighlight lang="bash"> | |||
Перша помилка — не виконати first_run після копіювання проєкту.;<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
== Типові помилки під час локального розгортання == | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
Додати ключ: | |||
потрібно додати токен доступу до сервера актуалізація.; * Перевірено git status.; * Налаштовано SSH-ключ або інший спосіб авторизації.; потрібно виконати команду: | |||
[[Категорія:K2 Cloud ERP]] | |||
[[Категорія:Компоненти K2 ERP]] | |||
history.txt | |||
python git_cmd.py push | |||
Після конфігурація інтерпретатора PyCharm має використовувати віртуальне середовище саме цього локального проєкту.; builder/config/component-list.txt | |||
П’ята помилка — пушити зміни без попереднього pull.; Після цього локальний додаток K2 Cloud ERP має запуститися в робочому середовищі розробника.; У такому разі віртуальне середовище має змогу залишитися прив’язаним до старого шляху.; # Оновити компоненти на deb1, deb2, deb3.; source venv/bin/activate | |||
* [[K2 ERP]] | |||
* [[K2 Cloud ERP]] | |||
* [[Архітектура K2 ERP]] | |||
* [[Розгортання K2 ERP]] | |||
* [[Партнерська хмара K2]] | |||
* [[Магазин доповнень K2]] | |||
* [[Сертифікація K2]] | |||
* [[Партнерська програма K2]] | |||
* [[Впровадження ERP]] | |||
* [[Навчання ERP]] | |||
* [[Міграція з 1С]] | |||
* [[Міграція з BAS]] | |||
* [[Українська ERP]] | |||
* [[Українське програмне забезпечення]] | |||
[[Категорія:Розгортання K2 ERP]] | |||
=== 3.4.; Авторизація в Git === | |||
Після відкриття проєкту потрібно налаштувати змінне середовище для поточного проєкту.; це технічна інструкція для підготовки локального робочого середовища розробника забезпечується через '''Розгортання системи K2 Cloud ERP Python; додатково реалізовано який функціонує з проєктом [[K2 Cloud ERP]] на Python виступає ключовою рисою розробників'''.;</syntaxhighlight> | |||
</syntaxhighlight> | |||
У цьому файлі потрібно додати список компонент, які будуть завантажуватися на сервер актуалізація.;</syntaxhighlight> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
як ілюстрація, для k2site: | |||
<syntaxhighlight lang="bash"> | |||
git --version | |||
</syntaxhighlight> | |||
[[Категорія:Українське програмне забезпечення]] | |||
python git_cmd.py status | |||
eval "$(ssh-agent -s)" | |||
У першому рядку потрібно додати характеристика змін.; # Оновити версію в setup.py.; Після цього повторити запуск: | |||
у корені каталогу компоненти.; Через це локальний запуск має змогу працювати некоректно.; Після завантаження нових версій компонент у систему актуалізація потрібно оновити змінені компоненти на тестових доменах: | |||
<syntaxhighlight lang="text"> | |||
Потрібно вказати email: | |||
git init | |||
<syntaxhighlight lang="text"> | |||
Для stable-версії: | |||
=== 3.1.; Встановлення Git для Linux === | |||
https://git-scm.com/downloads/win | |||
bash run.sh | |||
* Проєкт скопійовано по FTP.; Це ускладнює контроль змін.; * Компоненти перевірено на deb1, deb2, deb3.; Окремо варто відзначити перший запуск, конфігурація конфігурації, відкриття проєкту в PyCharm, підключення Python Interpreter, встановлення Git, авторизацію через SSH, підключення репозиторіїв компонентів, роботу зі скриптом auto_update, коміт змін, конфігурація завантаження компонент на сервер актуалізація, створення нової версії компоненти і тестування на доменах deb1-deb3.;<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
version_type = "testing" | |||
<syntaxhighlight lang="bash"> | |||
builder/config/component-list.txt | |||
</syntaxhighlight> | |||
domain_protocol = "https" | |||
./run.bat | |||
<syntaxhighlight lang="bash"> | |||
=== 7.1.; Змінити версію компоненти в setup.py === | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
За потреби можна перемкнутися на іншу локальну гілку, як ілюстрація master: | |||
</syntaxhighlight> | |||
Для Linux: | |||
Для Windows: | |||
cd auto_update | |||
Додати зміни: | |||
Після завантаження потрібно розпакувати архів або запустити файл встановлення та встановити PyCharm згідно з інструкціями інсталятора.; domain_protocol = "http" | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="text"> | |||
</syntaxhighlight> | |||
Приклад: | |||
Це потрібно для локального запуску проєкту в режимі розробки.; * Зміни закомічено й запушено.; * Git встановлено.; # Додати токен у token.txt.; Потрібно вказати ім’я користувача: | |||
== SEO-призначення сторінки == | |||
* коректно встановлюється; | |||
* не ламає наявний функціональні можливості; | |||
* сумісна з поточним середовищем; | |||
* не створює помилок у залежних модулях; | |||
* функціонує відповідно до опису змін у history.txt.; Перевірити статус: | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
ssh-keygen -t rsa -b 4096 -C "ваша_електронна_пошта@example.com" | |||
<syntaxhighlight lang="bash"> | |||
== Коротко == | |||
<syntaxhighlight lang="text"> | |||
Після цього потрібно запустити SSH-agent: | |||
Потрібно скопіювати каталог зі скриптом і вставити його в корінь проєкту на рівні з виконуваним файлом: | |||
<syntaxhighlight lang="bash"> | |||
Приклад: | |||
</syntaxhighlight> | |||
Для створення нової версії компоненти потрібно підготувати її як stable або beta/testing-версію.; * Виконано first_run.sh або first_run.bat.; Потрібно відкрити файл: | |||
git push | |||
settings_example.py | |||
sudo apt update | |||
[[Категорія:Сертифікація K2]] | |||
python git_cmd.py clone | |||
<syntaxhighlight lang="bash"> | |||
.\venv\Scripts\activate | |||
<syntaxhighlight lang="bash"> | |||
components/k2adm | |||
/K2CloudERP/cfg/k2/k2/k2cfg.py | |||
Перший запуск потрібен для конфігурація параметрів віртуального середовища в поточному локальному розташуванні.; Встановити PyCharm Community: | |||
</syntaxhighlight> | |||
Встановити Git: | |||
__TOC__ | |||
git config --global user.email "ваша_електронна_пошта@example.com" | |||
== Див.; додатково == | |||
cd /K2CloudERP | |||
Після актуалізація потрібно протестувати функціональні можливості.; sudo apt update | |||
<syntaxhighlight lang="python"> | |||
</syntaxhighlight> | |||
Створити локальну гілку main і перемкнутися на неї: | |||
</syntaxhighlight> | |||
Після копіювання потрібно відкрити проєкт у консолі й перейти в каталог: | |||
..\K2CloudERP\venv\Scripts\python.exe | |||
cat ~/.ssh/id_rsa.pub | |||
=== 4.2.; Підключення однієї компоненти вручну === | |||
Приклад вмісту: | |||
додатково потрібно вказати тип версії.; Сьома помилка — завантажити компоненту на сервер актуалізація й не перевірити її на тестових доменах deb1-deb3.;<syntaxhighlight lang="text"> | |||
=== 6.3.; конфігурація token.txt === | |||
== 8.; актуалізація компонент на тестових доменах deb1-deb3 == | |||
* [[K2 ERP]] | |||
* [[K2 Cloud ERP]] | |||
* [[Розгортання K2 ERP]] | |||
* [[Архітектура K2 ERP]] | |||
* [[Магазин доповнень K2]] | |||
* [[Сертифікація K2]] | |||
* [[Партнерська програма K2]] | |||
* [[Українська ERP]] | |||
</syntaxhighlight> | |||
на: | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
cd auto_update | |||
<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bash"> | |||
Потрібно перейти в корінь додатку на рівні з виконуваним файлом app.py.;</syntaxhighlight> | |||
</syntaxhighlight> | |||
Для роботи з кодом K2 Cloud ERP рекомендується використовувати PyCharm.; * Встановлено PyCharm.; Для ручного підключення однієї компоненти потрібно перейти в папку потрібної компоненти.; * Налаштовано ignore для компонент.; Приклад: | |||
</syntaxhighlight> | |||
У цей файл потрібно додати файли й папки, які не потрібно завантажувати на сервер актуалізація.; * Налаштовано Python Interpreter на локальний venv.; # Змінити domain_protocol з https на http.; * Налаштовано builder/config/component-list.txt.;<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="python"> | |||
== Контрольний чек-лист розробника == | |||
== 1.; Копіювання існуючого проєкту по FTP і перший запуск == | |||
Перед початком розгортання розробнику потрібно мати доступ до існуючого проєкту K2 Cloud ERP на віддаленому сервері, FTP-доступ для копіювання файлів, доступ до репозиторіїв Git, права на роботу з потрібними компонентами та технічні параметри для сервера оновлень, якщо планується публікація нових версій компонент.; # Перевірити git status.; Через це можуть виникати конфлікти або втрата актуального коду.;<syntaxhighlight lang="bash"> | |||
[[Категорія:Українська ERP]] | |||
=== 7.4.; Завантажити компоненти на сервер актуалізація === | |||
=== 5.2.; Коміт змін вручну === | |||
git config --global user.name "Ваше Ім'я" | |||
</syntaxhighlight> | |||
</syntaxhighlight> | |||
Мета цього етапу — перевірити, що нова реліз компоненти: | |||
<syntaxhighlight lang="text"> | |||
Після завантаження потрібно розпакувати архів, перейти в папку: | |||
Для списку компонент застосовують, коли потрібно скрипт auto_update.; у корені каталогу компоненти.; * Налаштовано user.name і user.email.; додатково можна запускати проєкт із консолі PyCharm.; * Виконано python k2update_push.py.; * Додано токен у token.txt.; # Внести зміни в код.; # Налаштувати builder/config/component-list.txt.; 2.0.4.43 - додавання додаткового поля в форму реєстрації | |||
* deb1; | |||
* deb2; | |||
* deb3.; # Налаштувати ignore для компонент.;<syntaxhighlight lang="bash"> | |||
Для Windows потрібно завантажити Git: | |||
<syntaxhighlight lang="text"> | |||
{{SEO | |||
|title=Розгортання системи K2 Cloud ERP Python для розробників — локальний запуск, PyCharm, Git, компоненти та сервер оновлень | |||
|description=Розгортання системи K2 Cloud ERP Python для розробників — технічна інструкція з локального копіювання проєкту K2 Cloud ERP, першого запуску, налаштування PyCharm, Python Interpreter, Git, SSH, підключення компонентів, роботи з auto_update, коміту змін, завантаження компонент на сервер оновлень і тестування на доменах deb1-deb3. | |||
|keywords=K2 Cloud ERP Python, розгортання K2 Cloud ERP, K2 ERP для розробників, локальне розгортання K2 ERP, PyCharm K2 ERP, Git K2 ERP, auto_update K2, компоненти K2 ERP, k2update_push.py, first_run.sh, first_run.bat, run.sh, run.bat, сервер оновлень K2, deb1 deb2 deb3, українська ERP, K2 ERP | |||
|alternativeTo=ручне розгортання без інструкції; хаотичне підключення компонентів; локальні доробки без Git; оновлення без версій; розробка без dev-середовища | |||
}} | |||
Поточна версія на 19:11, 2 травня 2026
Клонувати компоненти з віддаленого сервера:
Приклад:
git fetch origin
Ця команда завантажує в систему актуалізація компоненти, вказані у списку.;<syntaxhighlight lang="text">
<syntaxhighlight lang="bash">
Перейдіть у каталог локального проєкту:
Далі вибрати:
<syntaxhighlight lang="bash">
bash run.sh
додатково бажано заздалегідь підготувати:
Головна ідея: ця інструкція потрібна не кінцевому користувачу ERP, а розробнику або технічному партнеру K2, який має локально запустити K2 Cloud ERP, підключити компоненти, працювати з Git і готувати зміни до системи оновлень.; Якщо IDE використовує не той venv, залежності можуть не збігатися з проєктом.; cd components/k2site
Перевірити встановлення:
У файлі потрібно змінити версію в полі version.; # Додати характеристика змін у history.txt.; Для запуску в debug-режимі потрібно скористатися кнопкою запуску в правому верхньому куті PyCharm.; __pycache__
components/k2update
<syntaxhighlight lang="text">
sudo rm /etc/apt/preferences.d/nosnap.pref
</syntaxhighlight> </syntaxhighlight> У полі Location потрібно додати шлях до поточної папки venv.; Для Linux:
Шоста помилка — оновити версію компоненти в setup.py, але забути характеристика змін у history.txt.;
Отримати інформаційні дані з віддаленого репозиторію, але не змінювати поточну робочу гілку:
Додати віддалений репозиторій:
./first_run.bat
=== 6.2.; конфігурація ignore для компонент ===
git config --global --list
<syntaxhighlight lang="bash">
Спочатку потрібно видалити обмеження для snap, якщо воно є собою:
Add new Interpreter
app.py
<syntaxhighlight lang="text">
</syntaxhighlight>
Після того як компоненти додані в:
Показати публічний ключ:
Потрібно відкрити файл:
Для Windows потрібно завантажити PyCharm із сайту JetBrains:
=== 5.1.; Коміт змін через auto_update ===
Для Windows:
Перший етап — отримати локальну копію вже існуючого робочого проєкту K2 Cloud ERP.;
Python Interpreter
Після встановлення потрібно:
Потрібно відкрити файл:
'''Розгортання системи K2 Cloud ERP Python для розробників''' — це технічний бізнес-процес, який надає можливість розробнику отримати локальну копію проєкту, налаштувати віртуальне середовище, запустити K2 Cloud ERP, підключити PyCharm, налаштувати Git, працювати з компонентами, комітити зміни та публікувати нові версії компонент у систему оновлень.; Оновити пакети:
=== 1.3.; Виконати перший запуск ===
Потрібно скопіювати з віддаленого сервера існуючий проєкт по FTP.; Перевірити конфігурація можна командою:
Отримати зміни з віддаленого сервера:
=== 1.4.; Змінити протокол домену в конфігурації ===
Ініціалізувати Git у поточній директорії:
<syntaxhighlight lang="bash">
=== 4.1.; Підключення списку компонент через auto_update ===
<syntaxhighlight lang="bash">
bash first_run.sh
Інструкція описує повний базовий цикл: копіювання існуючого проєкту з віддаленого сервера.; git pull
=== 2.5.; конфігурація Python Interpreter ===
<syntaxhighlight lang="bash">
</syntaxhighlight>
Приклад для Linux:
Можливі два варіанти авторизації:
[[Категорія:K2 ERP]]
Третя помилка — підключити в PyCharm неправильний Python Interpreter.; # Встановити й налаштувати Git.; components/k2site </syntaxhighlight>
Сторінка Розгортання системи K2 Cloud ERP Python для розробників має допомагати розробникам, технічним партнерам і командам впровадження знаходити повну інструкцію з локального запуску K2 Cloud ERP, конфігурація PyCharm, Git, компонентів, сервера оновлень і тестових доменів.;</syntaxhighlight>
sudo snap install pycharm-community --classic
Якщо під час запуску виникла помилка, потрібно встановити JRE/JDK:
Для Linux:
git status
і запустити PyCharm:
sudo apt install default-jdk
- автономно через скрипт auto_update;
- вручну для однієї конкретної компоненти.; # Підключити потрібні компоненти через auto_update або вручну.; # Виконати first_run.sh або first_run.bat.; git status
У правому нижньому куті PyCharm потрібно вибрати: Кожна компонента додається з нового рядка.; * Відкрито локальний проєкт у PyCharm.; * Оновлено версію в setup.py.; # Налаштувати Python Interpreter на локальний venv.; # Закомітити й запушити зміни.; python git_cmd.py clone Створити коміт:
Потрібно завантажити архів PyCharm для Linux із сайту JetBrains:
* автономно через auto_update;
* вручну через стандартні команди Git.; # Налаштувати SSH-ключ або інший спосіб авторизації.; Зміни можна комітити двома способами:
# Скопіювати проєкт по FTP.; * У k2cfg.py змінено domain_protocol з https на http.;== 7.; Завантаження нової версії компоненти в систему актуалізація ==
як ілюстрація:
У полі Base Interpreter потрібно додати шлях до поточного виконуваного Python-файлу.;== 6.; конфігурація завантаження компонент на сервер актуалізація ==
* робочий комп’ютер на Linux або Windows;
* доступ до FTP;
* Python-середовище, яке застосовується проєктом;
* PyCharm Community або іншу сумісну IDE;
* Git;
* SSH-ключ або логін і пароль для репозиторію;
* доступ до тестових доменів deb1, deb2, deb3;
* токен доступу до сервера актуалізація.;<syntaxhighlight lang="bash">
git pull origin main
python k2update_push.py
<syntaxhighlight lang="bash">
<syntaxhighlight lang="text">
- відкрити PyCharm;
- вибрати відкриття існуючого проєкту;
- відкрити локально завантажений каталог K2CloudERP.;
Оновити пакети: * авторизація за допомогою логіна і пароля; * авторизація через SSH.; # Запустити проєкт через run.sh або run.bat.; git commit -m "Назва комміту" === 1.2.; Перейти в каталог проєкту ===
</syntaxhighlight> builder/config
конфігурація component-list.; 6.1.txt
Запушити зміни на віддалений репозиторій: Цей токен застосовується для авторизації під час завантаження компонент.; .git ../K2CloudERP/venv/bin/python3.12
</syntaxhighlight>
git remote add origin http://git.corp2.eu/k2erp/python/k2/base/site/k2site.git
Після завантаження потрібно розпакувати архів або запустити файл встановлення та встановити Git згідно з інструкціями.; центральний результат інструкції — правильна технічна дисципліна розробника K2: локальний запуск, окремий venv, контроль Git, робота з компонентами, версіонування, сервер оновлень і обов’язкове тестування на deb1-deb3 перед використанням змін у ширшому середовищі.;
При подальшій роботі потрібно отримувати зміни з віддаленого репозиторію командою:
<syntaxhighlight lang="text">
<syntaxhighlight lang="bash">
У файл settings.py потрібно додати в словник ключі з потрібними компонентами.;=== 3.3.; конфігурація користувача Git ===
У папці: </syntaxhighlight> https://www.jetbrains.com/pycharm/download/?section=linux
setup.py
2.1.; Встановлення PyCharm для Linux через snap
git checkout -b main
git checkout master
Для Windows:
=== 7.3.; Перейти в корінь додатку ===
version = "2.0.4.43"
Git потрібен для роботи з компонентами K2, отримання змін із віддалених репозиторіїв, фіксації локальних змін і публікації змін у віддалений репозиторій.; # Відкрити проєкт у PyCharm.;</syntaxhighlight>
Для Windows:
<syntaxhighlight lang="bash">
</syntaxhighlight>
</syntaxhighlight>
4.; Підключення віддаленого Git-репозиторію для компоненти або списку компонент
</syntaxhighlight>
5.; Коміт змін на віддалений Git-репозиторій
Встановити snapd:
Вона покриває запити: “K2 Cloud ERP Python розгортання”, “локальне розгортання K2 ERP”, “K2 ERP для розробників”, “first_run.sh K2”, “run.sh K2 ERP”, “PyCharm K2 Cloud ERP”, “Git компоненти K2 ERP”, “auto_update K2”, “k2update_push.py”, “сервер оновлень K2”, “deb1 deb2 deb3 K2”.; Після копіювання на локальному комп’ютері має з’явитися каталог:
sudo apt install snapd
Рекомендований порядок роботи розробника
</syntaxhighlight> pycharm-community
</syntaxhighlight>
</syntaxhighlight>
ej2.min.js </syntaxhighlight> python git_cmd.py pull
=== 1.5.; Запустити додаток ===
builder/config/token.txt python git_cmd.py commit
version_type = "stable"
Після встановлення бажано перевірити Git у консолі:
Для завантаження компонент на сервер актуалізація потрібно налаштувати конфігурацію в каталозі:
потрібно створити файл із назвою компоненти.; * Проєкт запускається через run.sh або run.bat.; # Протестувати функціональні можливості.; * Підключено потрібні компоненти через auto_update або вручну.; * Додано характеристика змін у history.txt.; Отриманий ключ потрібно скопіювати й додати у віддалений Git-репозиторій.; ./pycharm.sh
https://git.corp2.eu/k2erp/python/k2/base/client/auto_update
<syntaxhighlight lang="bat">
Потрібно відкрити проєкт у консолі й перейти в каталог:
== Пов’язані сторінки ==
=== 2.4.; Відкриття проєкту в PyCharm ===
<syntaxhighlight lang="text">
<syntaxhighlight lang="text">
<syntaxhighlight lang="bat">
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bat">
=== 2.2.; Встановлення PyCharm для Linux через архів ===
=== 1.1.; Скопіювати проєкт з віддаленого сервера ===
</syntaxhighlight>
Отримати інформаційні дані з віддаленого репозиторію та автономно об’єднати їх із поточною локальною гілкою:
Додати характеристика змін у history.; 7.2.txt
Для створення SSH-ключа потрібно виконати команду:
[[Категорія:Python]]
git remote -v
2.3.; Встановлення PyCharm для Windows
<syntaxhighlight lang="bat">
bin
<syntaxhighlight lang="text">
2.6.; Запуск проєкту в debug-режимі
</syntaxhighlight>
sudo apt install git
.gitignore Для testing/beta-версії:
2.7.; Ручна активація віртуального середовища
builder/config/ignore
Передумови
У цьому файлі потрібно змінити значення параметра: </syntaxhighlight> ssh-add ~/.ssh/id_rsa
3.; Встановлення та конфігурація Git
3.2.; Встановлення Git для Windows
Запушити зміни на віддалений репозиторій: https://www.jetbrains.com/pycharm/download/?section=windows </syntaxhighlight>
Далі потрібно відкрити файл:
Друга помилка — не змінити domain_protocol з https на http для локальної роботи.; # Виконати python k2update_push.py.; Перевірити зміни локально скопійованої копії проєкту з віддаленим репозиторієм: git --version
<syntaxhighlight lang="text">
sudo apt update
Запустити PyCharm:
settings.py
<syntaxhighlight lang="bash">
Для Linux:
Повний список компонент можна дивитися у файлі:
Після першого запуску потрібно перейти у файл налаштувань:
Після внесення змін у код потрібно перевірити статус:
[[Категорія:Партнерська програма K2]]
Після конфігурація потрібно виконати команду для клонування актуальних версій компонент і перейменування каталогів поточних версій компонент:
Після активації середовища команди Python і pip будуть виконуватися в межах локального venv цього проєкту.;
Компоненти K2 можна підключати двома способами:
<syntaxhighlight lang="bash">
У файл:
./pycharm.sh
</syntaxhighlight>
k2site.txt
git add .;== 2.; Встановлення PyCharm і відкриття проєкту ==
Четверта помилка — працювати з компонентами без Git або без перевірки git status.; cd k2
</syntaxhighlight>
./run.bat
Перевірити підключений remote: /K2CloudERP </syntaxhighlight>
3.5.; конфігурація SSH-ключа
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="bash">
Репозиторій скрипта: Приклад для Windows: </syntaxhighlight>
</syntaxhighlight>
Закомітити зміни:
<syntaxhighlight lang="bash">
Перша помилка — не виконати first_run після копіювання проєкту.;<syntaxhighlight lang="bash">
Типові помилки під час локального розгортання
Додати ключ: потрібно додати токен доступу до сервера актуалізація.; * Перевірено git status.; * Налаштовано SSH-ключ або інший спосіб авторизації.; потрібно виконати команду:
history.txt
python git_cmd.py push
Після конфігурація інтерпретатора PyCharm має використовувати віртуальне середовище саме цього локального проєкту.; builder/config/component-list.txt П’ята помилка — пушити зміни без попереднього pull.; Після цього локальний додаток K2 Cloud ERP має запуститися в робочому середовищі розробника.; У такому разі віртуальне середовище має змогу залишитися прив’язаним до старого шляху.; # Оновити компоненти на deb1, deb2, deb3.; source venv/bin/activate
- K2 ERP
- K2 Cloud ERP
- Архітектура K2 ERP
- Розгортання K2 ERP
- Партнерська хмара K2
- Магазин доповнень K2
- Сертифікація K2
- Партнерська програма K2
- Впровадження ERP
- Навчання ERP
- Міграція з 1С
- Міграція з BAS
- Українська ERP
- Українське програмне забезпечення
3.4.; Авторизація в Git
Після відкриття проєкту потрібно налаштувати змінне середовище для поточного проєкту.; це технічна інструкція для підготовки локального робочого середовища розробника забезпечується через Розгортання системи K2 Cloud ERP Python; додатково реалізовано який функціонує з проєктом K2 Cloud ERP на Python виступає ключовою рисою розробників.;</syntaxhighlight> </syntaxhighlight>
У цьому файлі потрібно додати список компонент, які будуть завантажуватися на сервер актуалізація.;</syntaxhighlight>
</syntaxhighlight>
</syntaxhighlight>
</syntaxhighlight> як ілюстрація, для k2site:
git --version
python git_cmd.py status
eval "$(ssh-agent -s)"
У першому рядку потрібно додати характеристика змін.; # Оновити версію в setup.py.; Після цього повторити запуск: у корені каталогу компоненти.; Через це локальний запуск має змогу працювати некоректно.; Після завантаження нових версій компонент у систему актуалізація потрібно оновити змінені компоненти на тестових доменах:
Потрібно вказати email:
git init
<syntaxhighlight lang="text">
Для stable-версії:
=== 3.1.; Встановлення Git для Linux ===
https://git-scm.com/downloads/win
bash run.sh
* Проєкт скопійовано по FTP.; Це ускладнює контроль змін.; * Компоненти перевірено на deb1, deb2, deb3.; Окремо варто відзначити перший запуск, конфігурація конфігурації, відкриття проєкту в PyCharm, підключення Python Interpreter, встановлення Git, авторизацію через SSH, підключення репозиторіїв компонентів, роботу зі скриптом auto_update, коміт змін, конфігурація завантаження компонент на сервер актуалізація, створення нової версії компоненти і тестування на доменах deb1-deb3.;<syntaxhighlight lang="text">
version_type = "testing"
builder/config/component-list.txt
domain_protocol = "https"
./run.bat
=== 7.1.; Змінити версію компоненти в setup.py ===
<syntaxhighlight lang="bash">
За потреби можна перемкнутися на іншу локальну гілку, як ілюстрація master: </syntaxhighlight>
Для Linux:
Для Windows: cd auto_update Додати зміни:
Після завантаження потрібно розпакувати архів або запустити файл встановлення та встановити PyCharm згідно з інструкціями інсталятора.; domain_protocol = "http"
<syntaxhighlight lang="text">
Приклад: Це потрібно для локального запуску проєкту в режимі розробки.; * Зміни закомічено й запушено.; * Git встановлено.; # Додати токен у token.txt.; Потрібно вказати ім’я користувача:
SEO-призначення сторінки
- коректно встановлюється;
- не ламає наявний функціональні можливості;
- сумісна з поточним середовищем;
- не створює помилок у залежних модулях;
- функціонує відповідно до опису змін у history.txt.; Перевірити статус:
</syntaxhighlight>
</syntaxhighlight>
</syntaxhighlight> ssh-keygen -t rsa -b 4096 -C "ваша_електронна_пошта@example.com"
== Коротко ==
<syntaxhighlight lang="text">
Після цього потрібно запустити SSH-agent:
Потрібно скопіювати каталог зі скриптом і вставити його в корінь проєкту на рівні з виконуваним файлом:
<syntaxhighlight lang="bash">
Приклад:
Для створення нової версії компоненти потрібно підготувати її як stable або beta/testing-версію.; * Виконано first_run.sh або first_run.bat.; Потрібно відкрити файл:
git push
settings_example.py sudo apt update
python git_cmd.py clone
.\venv\Scripts\activate
<syntaxhighlight lang="bash">
components/k2adm
/K2CloudERP/cfg/k2/k2/k2cfg.py
Перший запуск потрібен для конфігурація параметрів віртуального середовища в поточному локальному розташуванні.; Встановити PyCharm Community:
Встановити Git:
git config --global user.email "ваша_електронна_пошта@example.com"
Див.; додатково
cd /K2CloudERP
Після актуалізація потрібно протестувати функціональні можливості.; sudo apt update
Створити локальну гілку main і перемкнутися на неї: </syntaxhighlight> Після копіювання потрібно відкрити проєкт у консолі й перейти в каталог:
..\K2CloudERP\venv\Scripts\python.exe
cat ~/.ssh/id_rsa.pub
4.2.; Підключення однієї компоненти вручну
Приклад вмісту:
додатково потрібно вказати тип версії.; Сьома помилка — завантажити компоненту на сервер актуалізація й не перевірити її на тестових доменах deb1-deb3.;
=== 6.3.; конфігурація token.txt ===
== 8.; актуалізація компонент на тестових доменах deb1-deb3 ==
* [[K2 ERP]]
* [[K2 Cloud ERP]]
* [[Розгортання K2 ERP]]
* [[Архітектура K2 ERP]]
* [[Магазин доповнень K2]]
* [[Сертифікація K2]]
* [[Партнерська програма K2]]
* [[Українська ERP]]
на:
cd auto_update
<syntaxhighlight lang="bash">
Потрібно перейти в корінь додатку на рівні з виконуваним файлом app.py.;
</syntaxhighlight>
Для роботи з кодом K2 Cloud ERP рекомендується використовувати PyCharm.; * Встановлено PyCharm.; Для ручного підключення однієї компоненти потрібно перейти в папку потрібної компоненти.; * Налаштовано ignore для компонент.; Приклад:
</syntaxhighlight>
У цей файл потрібно додати файли й папки, які не потрібно завантажувати на сервер актуалізація.; * Налаштовано Python Interpreter на локальний venv.; # Змінити domain_protocol з https на http.; * Налаштовано builder/config/component-list.txt.;
<syntaxhighlight lang="python">
== Контрольний чек-лист розробника ==
== 1.; Копіювання існуючого проєкту по FTP і перший запуск ==
Перед початком розгортання розробнику потрібно мати доступ до існуючого проєкту K2 Cloud ERP на віддаленому сервері, FTP-доступ для копіювання файлів, доступ до репозиторіїв Git, права на роботу з потрібними компонентами та технічні параметри для сервера оновлень, якщо планується публікація нових версій компонент.; # Перевірити git status.; Через це можуть виникати конфлікти або втрата актуального коду.;<syntaxhighlight lang="bash">
[[Категорія:Українська ERP]]
=== 7.4.; Завантажити компоненти на сервер актуалізація ===
=== 5.2.; Коміт змін вручну ===
git config --global user.name "Ваше Ім'я"
</syntaxhighlight> Мета цього етапу — перевірити, що нова реліз компоненти: <syntaxhighlight lang="text">
Після завантаження потрібно розпакувати архів, перейти в папку:
Для списку компонент застосовують, коли потрібно скрипт auto_update.; у корені каталогу компоненти.; * Налаштовано user.name і user.email.; додатково можна запускати проєкт із консолі PyCharm.; * Виконано python k2update_push.py.; * Додано токен у token.txt.; # Внести зміни в код.; # Налаштувати builder/config/component-list.txt.; 2.0.4.43 - додавання додаткового поля в форму реєстрації
- deb1;
- deb2;
- deb3.; # Налаштувати ignore для компонент.;<syntaxhighlight lang="bash">
Для Windows потрібно завантажити Git: <syntaxhighlight lang="text">
{{SEO