一组用于将本地修改同步到远程wsgi服务器的工具,使设计器的工作更轻松

nowsync的Python项目详细描述


nowsync是一组用于将本地修改同步到远程的工具 wsgi服务器,让设计师的生活变得更轻松。

工作原理

nowsync有两部分,一部分是服务器,它运行您的wsgi应用程序 以及它自己的用于文件同步的wsgi应用程序。另一部分 nowsync是客户端,它监视本地文件夹中的更改,如果这些文件 如果更改,则会将这些修改上载到远程服务器。

也就是说,设计人员不必运行本地应用程序 要做的是在他的本地计算机上得到一份应用程序的副本,然后运行 NowSync客户端。

安装

要安装NowSync,请键入:

easy_install nowsync

或者,如果您执行pip:

pip install nowsync

配置

要运行nowsync,您需要编写一个配置文件,它将同时读取 客户端和服务器采用yaml格式,下面是一个示例:

---

# show we turn on the debug mode of NowSync server?
debug: True

# NowSync server
nowsync:
    interface: 0.0.0.0
    port: 5001
    # can be accessed by users only
    user_only: True
    # are we under a proxy?
    under_proxy: True

# guest WSGI app server to run
app:
    interface: 0.0.0.0
    port: 5000
    user_only: True
    under_proxy: True
    # the path of WSGI application to run
    # wsgi here is the module, and application is the variable name in
    # the module
    app_path: wsgi:application

client:
    # url to NowSync API
    url: http://develop.example.com:5001/api/

    # user name
    username: alvin
    password: password_goes_here

# path to directory to sync
sync_path: .

# files that we want to sync
sync_files: [
    'myproject/static/**',
    'myproject/templates/**',
]

# files that we don't want to sync
ignore_files: [
    '*.pyc',
    '.hg/*',
    '.git/*',
    '.*',
    'nowsync.yaml',
]

# users who can access to NowSync server or guest application
users:
    alvin: password_goes_here

...

将配置文件nowsync.yaml放入项目的文件夹中。这个 结构可能如下:

myproject/
    + wsgi.py
    + nowsync.yaml
    + setup.py
    + myproject/
        + static/
        + templates/
        + models/
        + views/

如何使用

要运行nowsync服务器,请在此处键入:

nowsync_server

你应该看到:

running nowsync_server
INFO:nowsync.server:Start new process
INFO:werkzeug: * Running on http://0.0.0.0:5001
 * Running on http://0.0.0.0:5000/

在项目文件夹中进行适当配置后,设计器所要做的就是 复制项目,然后运行:

cd myproject
nowsync_client

现在,它同步myproject中的文件,您的设计器只需修改 模板、css和图像,以及所有修改都将反映在 远程wsgi服务器。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
与ReentrantLock相比,java ReentrantReadWriteLock的性能非常差   java如何使用Maven Android Studio正确导入?   安卓将ADB添加到我的Java PC应用程序   反射Java getDeclaredConstructor失败,来自JUnit的NoSuchMethodException   JSP上siteedit标记库的java替代   JavaSpring环境概要文件和JPA   java中是否有一个类似于StringBuilder的类,唯一的区别是它具有固定的长度?   JavaMathContext。小数点32 vs MathContext。小数点64,使用哪一个,为什么?   java使用spring在Ibm Websphere MQ中实现重试逻辑   java调用SpriteBatch。开始()和结束()   java有一种从文本中读取文本的方法。文件,并将其设置为pom中的maven属性。xml专家?   java让sitemesh使用struts2   Java Swing:在现有窗口上定位对话框   使用带有MemSql的JPA本机查询的java Select json列