CAE管理软件
项目描述
这是一个为CAE(Coopérative d’activité et d’emploi),独立创业者集体提供的CAE(Coopérative d’activité et d’emploi)管理软件。
许可证
这是一个自由软件,有关访问、使用、复制和操作条件,请参阅LICENSE.txt
新功能/异常
官方网站: http://endi.coop
主要开发工作由Coopérer pour entreprendre资助。如果您想了解更多信息,或寻求托管服务,您可以联系他们 info@cooperer.coop
如果您遇到错误,或有功能想法,可以直接向开发者报告,或使用GitLab(framagit)的工单系统。例外:对于安全错误,请向您的管理员发送电子邮件。
软件安装说明(生产环境)
安装包(用于在虚拟环境中安装的必要条件)
在Debian/Ubuntu下
注意:我们使用nodesource仓库以获取适合的nodejs版本。如果不希望这样做,可以使用docker-compose来编译javascript(参见: https://caerp.readthedocs.io/fr/latest/javascript/build_docker.html)
curl -fsSL https://deb.nodesource.com/setup_16.x | bash - &&\
apt install virtualenvwrapper libmariadb-dev libmariadb-dev-compat npm build-essential libjpeg-dev libfreetype6 libfreetype6-dev libssl-dev libxml2-dev zlib1g-dev python3-mysqldb redis-server libxslt1-dev python3-pip fonts-open-sans libcairo2 libglib2.0-dev libpango1.0-0 libgdk-pixbuf-2.0-0
在Fedora上
dnf install virtualenvwrapper mardiadb-devel python-devel libxslt-devel libxml2-devel libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel gcc redis-server open-sans-fonts
下载应用程序
git clone https://framagit.org/caerp/caerp.git
cd caerp
下载JS依赖(需要nodejs >= 16.x)
npm --prefix js_sources install
npm --prefix vue_sources install
编译JS代码
make prodjs devjs
make prodjs2 devjs2
创建Python虚拟环境。
cd caerp
mkvirtualenv caerp -p python3 -r requirements.txt
安装应用程序
python setup.py install
cp development.ini.sample development.ini
编辑development.ini文件并配置你的软件(数据库访问,静态资源的不同目录等)。
初始化数据库
caerp-admin development.ini syncdb
如果你使用的是第三方数据库包(在生产模式下如caerp_payment)
caerp-migrate app.ini syncdb --pkg=caerp_payment
然后创建一个管理员账户
caerp-admin development.ini useradd [--user=<user>] [--pwd=<password>] [--firstname=<firstname>] [--lastname=<lastname>] [--group=<group>] [--email=<email>]
注意:对于管理员,请指定
--group=admin
安装(在开发环境中)
安装系统依赖项(根据你的操作系统,参考有关生产环境安装的部分中的apt或dnf行)。
然后,使用以下命令安装你的开发版CAERP
sudo apt install […] (idem à la section concernant la prod)
git clone https://framagit.org/caerp/caerp.git
cd caerp
cp development.ini.sample development.ini
make postupgrade_dev
可以使用以下命令加载一个完整的演示数据库(如果存在,会覆盖你的caerp数据库)
caerp-load-demo-data development.ini
caerp-migrate development.ini upgrade
对于具有不兼容python版本的发行版
目前,CAErp不支持python > 3.10的版本,因此我们可以通过pyenv安装项目支持的python版本
$ curl https://pyenv.run | bash
遵循说明后,可以初始化一个环境(例如使用python 3.9)
$ cd workspace/caerp
$ pyenv local 3.9
$ pyenv virtualenv caerp
$ pyenv activate caerp
(caerp) $ pip install -e .[dev]
执行异步任务
一个基于celery和redis的异步任务服务负责执行最耗时的任务。
更新(在生产环境中)
CAERP的更新分为几个步骤(在运行以下命令之前,最好保存你的数据)
更新python依赖和版本号
pip install .
更新数据结构
caerp-migrate app.ini upgrade
如果你使用的是第三方数据库包(在生产模式下如caerp_payment)
caerp-migrate app.ini upgrade --pkg=caerp_payment
在数据库中配置默认数据
caerp-admin app.ini syncdb
更新JS依赖
npm --prefix js_sources install
编译JavaScript
make prodjs
然后启动Web应用程序
pserve --reload development.ini
更新/更改分支(开发环境)
以下说明应在更新到所需的git分支后执行。这些说明是安全的:如果一切都已经是最新的,它们最多不会做任何事情。
以下命令应该可以处理一切
make postupgrade_dev
Python 编码标准
CAERP 代码应按照 pep8 格式编写。
为此,建议使用代码分析工具如 flake8。
此外,为了确保代码格式的统一,开发过程中应使用代码格式化工具 black。
它可以在您的编辑器级别进行配置(最舒适的方式)和/或使用 pre-commit。
也可以手动在项目上运行 black
make black
(如果您在本地不使用 black,持续集成将提醒您 😁)
使用 docker-compose 的数据库(MariaDB + redis)
为了在可移植的 Docker 容器中托管,而不影响主机机器,提供了一个 docker-compose 配置。
为了安装环境(第一次)
sudo apt install docker-compose
sudo usermod -a -G docker $USER
为了使用它,提供了一些快捷方式
# Faire tourner une BDD que l'on stoppera avec ctrl+c
make dev_db_serve
# Démarrer une BDD
make dev_db_start
# Arêtter une BDD démarrée avec la commande précédente
make dev_db_stop
# Effacer les données de la BDD de dév
make dev_db_clear
针对 docker-compose 的配置在 test.ini.sample 和 development.ini.sample 中进行了注释。
使用 docker compose 动态编译 assets (JS/CSS)
仅编译 js 文件
docker compose -f js-docker-compose.yaml up
编译 css 文件
docker compose -f css-docker-compose.yaml up
测试
复制并自定义配置文件
cp test.ini.sample test.ini
运行测试
py.test caerp/tests
用户文档
使用指南位于此地址:https://doc.endi.coop
- 该项目使用以下工具进行测试:
项目详情
moogli-erp-2024.3.10.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 02dface835dea7ae37537d0a2e4889caad13cbc9e26f25e9b7ff41ffd6d13c25 |
|
MD5 | 08035ddb3dedaecfdb419ec3ce2499ce |
|
BLAKE2b-256 | 9386df9c4dea5ef6694a67a6ab845d4bf556e1e18afd7f8358f196dad09bf78d |