打包用于pip分发的Python Web应用程序

时间:2017-04-25 14:28:34

标签: python pip

我遇到了包含许多子目录和非python文件(.html, .css, .ts, .js)的视图目录的问题。这是一张图表......

- my_python_web_app
    - __init__.py
    - python_app
        - __init__.py
        - a.py
        - few.py
        - python.py
        - modules.py
    - view
        - index.html
        - main.css
        - script.js
        - web_app
            - main_app.ts
            - components
                - component1
                    - component1.html
                    - component1.css
                    - component1.ts
                - component2
                    - component2.html
                    - component2.css
                    - component2.ts

这些文件需要维护其目录结构才能正确提供。我已经研究过使用MANIFEST.in并将文档包含为数据文件,但这些都不是真正的解决方案。

我最好的想法是在创建我的分发包之前压缩目录,然后在pip install ...以某种方式解压缩它。有更好的想法吗?

1 个答案:

答案 0 :(得分:2)

我有一个类似结构的网络应用程序。您可以在Github上找到代码。

以下MANIFEST.IN和setup.py为我工作:

<强> MANIFEST.IN

test <- c(2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 7, 7, 9, 9, 9, 9)

<强> setup.py

recursive-include omxremote/static *

我使用#!/usr/bin/env python from setuptools import setup setup(name='omxremote', ... packages=['omxremote'], include_package_data=True, zip_safe=False, ... ) 来标记实际的setup.py包含更多内容,但这不应该与此相关。