%global _empty_manifest_terminate_build 0 Name: python-django-rework Version: 0.5.2 Release: 1 Summary: Rapid develop framework base on Django License: MIT URL: https://github.com/rework-union/django-rework Source0: https://mirrors.aliyun.com/pypi/web/packages/3d/bd/d2a83ff1328f5dafb041acaa0d009c9f7575b9c4d1320bd358058024f1ad/django-rework-0.5.2.tar.gz BuildArch: noarch Requires: python3-Django Requires: python3-django-cors-headers Requires: python3-django-environ Requires: python3-django-filter Requires: python3-django-mysql Requires: python3-django-ninja Requires: python3-djangorestframework Requires: python3-djangorestframework-simplejwt Requires: python3-fabric Requires: python3-Markdown Requires: python3-mysqlclient Requires: python3-patchwork Requires: python3-Pillow Requires: python3-drf-nested-routers Requires: python3-drf-yasg Requires: python3-wechatpy %description # Django Rework [![Downloads](https://pepy.tech/badge/django-rework)](https://pepy.tech/project/django-rework) [![PyPI](https://img.shields.io/pypi/v/django-rework)](https://pypi.org/project/django-rework/) [![Python](https://img.shields.io/pypi/pyversions/django)](https://www.python.org) [![Django](https://img.shields.io/pypi/djversions/django-rework)](https://www.djangoproject.com) [![License](https://img.shields.io/pypi/l/django-rework)](https://opensource.org/licenses/MIT) Rapid develop framework base on Django, integrated with Django-Ninja. # _Installation_ & Cli commands ## Requirements - Python >= 3.8 - Django >= 3.2 - Django REST framework >=3.13,<4.0 ## Install django-rework ```bash pip install django-rework ``` ## Generic CLI Commands ### Start a new project ```bash # It will create project in current dir # eg: initialize a new project named `pony` rework init pony ``` ### Add build-in contrib Apps ```bash rework add users ``` ### Add deployment configurations ```bash rework deploy --init ``` ### Deploy to test or production ```bash rework deploy # or 'fab -H web1 deploy' ``` # _Core docs_ ## Custom exceptions The exception handler must also be configured in your settings, using the EXCEPTION_HANDLER setting key. For example: ```python REST_FRAMEWORK = { 'EXCEPTION_HANDLER': 'rework.core.views.exception_handler' } ``` Use build-in custom exceptions: ```python from rework.core.exceptions import ValidateError ValidateError( detail='You do not have permission to perform this action.', code='permission_denied', ) ``` 🥭 [Build-in custom exceptions](rework/core/exceptions.py) # _App docs_ | App | Description | docs in English | 简体中文文档 | | -------- | ----------- | --------------- | ----------- | | users | Users system | [users.md](docs/users.md) | [users_cn.md](docs/users_cn.md) | # _DevOps Fabric scripts_ ## Setup hosts `django-rework` deal with DevOps using `Fabric`. You should add hosts configurations in `fabfile.py`. ```python import os from rework.core.devops.hosts import loads # The first argument `default` is host alias # `user` is optional, default value is `root` # `envs` is the server support deploy environments # `exclude_components` is optional, it's been used in `fab setup_server` loads( 'default', { 'host': 'your-server-ip', 'port': 22, 'user': 'root', 'connect_kwargs': { 'password': 'server-password', }, 'envs': ['test', 'prod'], 'exclude_components': ['redis'], } ) # Using SSH key loads( 'web1', { 'host': 'your-server-ip', 'connect_kwargs': { 'key_filename': os.path.join(os.path.abspath('.'), '.deploy/private.pem'), }, } ) ``` You can change host alias as you like: `web1` etc. ```bash fab -H web1 deploy ``` if not `-H` provided, the default alias will use according the order below: 1. environment name: `dev`, `test`, `prod` 2. `default` ## Deploy environments By default, environments is `dev`, `test`, `prod`, every environment name is a generic fabric tasks. ```bash # deploy to `test` environment fab test deploy ``` If you want to update requirements, you should add arguments `-r` or `--requirements_update` ```bash fab test deploy -r ``` # _Code Format_ Code format using Google 的 `yapf`,recommend to install `yapf` globally: ```bash # install yapf using pip in python3 $ python3 -m pip install yapf # find and create soft link to `/usr/local/bin/yapf` # find yapf execute file $ which yapf # (/usr/local/python3.7/bin/yapf) possible location $ ln -s /usr/local/python3.7/bin/yapf /usr/local/bin/yapf ``` %package -n python3-django-rework Summary: Rapid develop framework base on Django Provides: python-django-rework BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-django-rework # Django Rework [![Downloads](https://pepy.tech/badge/django-rework)](https://pepy.tech/project/django-rework) [![PyPI](https://img.shields.io/pypi/v/django-rework)](https://pypi.org/project/django-rework/) [![Python](https://img.shields.io/pypi/pyversions/django)](https://www.python.org) [![Django](https://img.shields.io/pypi/djversions/django-rework)](https://www.djangoproject.com) [![License](https://img.shields.io/pypi/l/django-rework)](https://opensource.org/licenses/MIT) Rapid develop framework base on Django, integrated with Django-Ninja. # _Installation_ & Cli commands ## Requirements - Python >= 3.8 - Django >= 3.2 - Django REST framework >=3.13,<4.0 ## Install django-rework ```bash pip install django-rework ``` ## Generic CLI Commands ### Start a new project ```bash # It will create project in current dir # eg: initialize a new project named `pony` rework init pony ``` ### Add build-in contrib Apps ```bash rework add users ``` ### Add deployment configurations ```bash rework deploy --init ``` ### Deploy to test or production ```bash rework deploy # or 'fab -H web1 deploy' ``` # _Core docs_ ## Custom exceptions The exception handler must also be configured in your settings, using the EXCEPTION_HANDLER setting key. For example: ```python REST_FRAMEWORK = { 'EXCEPTION_HANDLER': 'rework.core.views.exception_handler' } ``` Use build-in custom exceptions: ```python from rework.core.exceptions import ValidateError ValidateError( detail='You do not have permission to perform this action.', code='permission_denied', ) ``` 🥭 [Build-in custom exceptions](rework/core/exceptions.py) # _App docs_ | App | Description | docs in English | 简体中文文档 | | -------- | ----------- | --------------- | ----------- | | users | Users system | [users.md](docs/users.md) | [users_cn.md](docs/users_cn.md) | # _DevOps Fabric scripts_ ## Setup hosts `django-rework` deal with DevOps using `Fabric`. You should add hosts configurations in `fabfile.py`. ```python import os from rework.core.devops.hosts import loads # The first argument `default` is host alias # `user` is optional, default value is `root` # `envs` is the server support deploy environments # `exclude_components` is optional, it's been used in `fab setup_server` loads( 'default', { 'host': 'your-server-ip', 'port': 22, 'user': 'root', 'connect_kwargs': { 'password': 'server-password', }, 'envs': ['test', 'prod'], 'exclude_components': ['redis'], } ) # Using SSH key loads( 'web1', { 'host': 'your-server-ip', 'connect_kwargs': { 'key_filename': os.path.join(os.path.abspath('.'), '.deploy/private.pem'), }, } ) ``` You can change host alias as you like: `web1` etc. ```bash fab -H web1 deploy ``` if not `-H` provided, the default alias will use according the order below: 1. environment name: `dev`, `test`, `prod` 2. `default` ## Deploy environments By default, environments is `dev`, `test`, `prod`, every environment name is a generic fabric tasks. ```bash # deploy to `test` environment fab test deploy ``` If you want to update requirements, you should add arguments `-r` or `--requirements_update` ```bash fab test deploy -r ``` # _Code Format_ Code format using Google 的 `yapf`,recommend to install `yapf` globally: ```bash # install yapf using pip in python3 $ python3 -m pip install yapf # find and create soft link to `/usr/local/bin/yapf` # find yapf execute file $ which yapf # (/usr/local/python3.7/bin/yapf) possible location $ ln -s /usr/local/python3.7/bin/yapf /usr/local/bin/yapf ``` %package help Summary: Development documents and examples for django-rework Provides: python3-django-rework-doc %description help # Django Rework [![Downloads](https://pepy.tech/badge/django-rework)](https://pepy.tech/project/django-rework) [![PyPI](https://img.shields.io/pypi/v/django-rework)](https://pypi.org/project/django-rework/) [![Python](https://img.shields.io/pypi/pyversions/django)](https://www.python.org) [![Django](https://img.shields.io/pypi/djversions/django-rework)](https://www.djangoproject.com) [![License](https://img.shields.io/pypi/l/django-rework)](https://opensource.org/licenses/MIT) Rapid develop framework base on Django, integrated with Django-Ninja. # _Installation_ & Cli commands ## Requirements - Python >= 3.8 - Django >= 3.2 - Django REST framework >=3.13,<4.0 ## Install django-rework ```bash pip install django-rework ``` ## Generic CLI Commands ### Start a new project ```bash # It will create project in current dir # eg: initialize a new project named `pony` rework init pony ``` ### Add build-in contrib Apps ```bash rework add users ``` ### Add deployment configurations ```bash rework deploy --init ``` ### Deploy to test or production ```bash rework deploy # or 'fab -H web1 deploy' ``` # _Core docs_ ## Custom exceptions The exception handler must also be configured in your settings, using the EXCEPTION_HANDLER setting key. For example: ```python REST_FRAMEWORK = { 'EXCEPTION_HANDLER': 'rework.core.views.exception_handler' } ``` Use build-in custom exceptions: ```python from rework.core.exceptions import ValidateError ValidateError( detail='You do not have permission to perform this action.', code='permission_denied', ) ``` 🥭 [Build-in custom exceptions](rework/core/exceptions.py) # _App docs_ | App | Description | docs in English | 简体中文文档 | | -------- | ----------- | --------------- | ----------- | | users | Users system | [users.md](docs/users.md) | [users_cn.md](docs/users_cn.md) | # _DevOps Fabric scripts_ ## Setup hosts `django-rework` deal with DevOps using `Fabric`. You should add hosts configurations in `fabfile.py`. ```python import os from rework.core.devops.hosts import loads # The first argument `default` is host alias # `user` is optional, default value is `root` # `envs` is the server support deploy environments # `exclude_components` is optional, it's been used in `fab setup_server` loads( 'default', { 'host': 'your-server-ip', 'port': 22, 'user': 'root', 'connect_kwargs': { 'password': 'server-password', }, 'envs': ['test', 'prod'], 'exclude_components': ['redis'], } ) # Using SSH key loads( 'web1', { 'host': 'your-server-ip', 'connect_kwargs': { 'key_filename': os.path.join(os.path.abspath('.'), '.deploy/private.pem'), }, } ) ``` You can change host alias as you like: `web1` etc. ```bash fab -H web1 deploy ``` if not `-H` provided, the default alias will use according the order below: 1. environment name: `dev`, `test`, `prod` 2. `default` ## Deploy environments By default, environments is `dev`, `test`, `prod`, every environment name is a generic fabric tasks. ```bash # deploy to `test` environment fab test deploy ``` If you want to update requirements, you should add arguments `-r` or `--requirements_update` ```bash fab test deploy -r ``` # _Code Format_ Code format using Google 的 `yapf`,recommend to install `yapf` globally: ```bash # install yapf using pip in python3 $ python3 -m pip install yapf # find and create soft link to `/usr/local/bin/yapf` # find yapf execute file $ which yapf # (/usr/local/python3.7/bin/yapf) possible location $ ln -s /usr/local/python3.7/bin/yapf /usr/local/bin/yapf ``` %prep %autosetup -n django-rework-0.5.2 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-django-rework -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Jun 20 2023 Python_Bot - 0.5.2-1 - Package Spec generated