带烧瓶和redis的pypi克隆

cheddar的Python项目详细描述


https://badge.fury.io/py/cheddar.pnghttps://travis-ci.org/jessemyers/cheddar.png?branch=develophttps://pypip.in/d/cheddar/badge.png

pypi克隆瓶和redis。这是世界上最受欢迎的奶酪之一!

功能

cheddar旨在简化同时工作的组织中的python开发 使用公共和私有python发行版。

切达干酪包括:

  • 内部开发的local包索引,支持setuptoolsregisterupload命令。
  • A^ {EM1}$$Exele:EME>包索引,该代理索引指向公共存储库(如^ {TT3}$) 和缓存包和包版本列表,以减少延迟和最小化影响 公共存储库的停机时间。
  • 一个组合的包索引,它统一了最好的本地和远程实现。

此外,切达还支持一些简化组织内部管理的功能:

  • 包在本地存储在单独的目录中,用于预发行版和发行版,简化了 希望忽略可传递的开发构建的备份策略。
  • 重复的包上载返回可预测的http409冲突错误。
  • 使用一个简单的restful api可以删除错误上传的包。

配置

切达可以在任何wsgi容器中运行,也可以通过flask的内置开发服务器(即 单线程,仅推荐用于开发)。

配置是从defaults.py模块加载的,同时指向文件的内容 通过CHEDDAR_SETTINGS环境变量(如果有的话)。

您可能希望从默认值中修改几个配置参数,包括:

  • 索引url指定remote包索引的url
  • 控制redis服务器位置的redis主机名
  • 本地缓存目录控制本地上载文件的存储位置
  • 远程缓存目录用于控制缓存的远程文件的存储位置

局部索引

要使用本地索引:

  1. Edit your ^{tt6}$ to contain an entry for Cheddar. It should look _something_ like:

    [distutils]
    index-servers =
        pypi
        cheddar
    
    [pypi]
    repository:http://pypi.python.org
    
    [cheddar]
    repository:http://localhost:5000/pypi
    username:myusername
    password:mypassword
    

    Note that the URL here assumes you are running the “development” server.

  2. Add credentials to Redis:

    redis-cli set cheddar.user.myusername mypassword
    
  3. Upload your distribution:

    cd /path/to/directory/containing/setup.py
    python setup.py sdist upload -r cheddar
    

    You may also use the ^{tt7}$ to validate your ^{tt8}$ without uploading the source distribution.

远程索引

使用自定义索引url运行pip

pip install --index-url http://localhost:5000/simple

注意,这里的url假设您正在运行“开发”服务器。

您还可以编辑~/.pip/pip.conf以自动包含索引url:

[install]
index-url = http://localhost:5000/simple

数据

切达将数据保存在多个位置:

  • 本地包存储在本地缓存目录中
  • 远程包可以缓存在远程缓存目录中
  • 远程版本列表可以缓存在redis中。
  • 用户数据(用于上载身份验证)存储在redis中。
  • 本地包版本列表存储在redis中。

历史记录

1.2(2014-02-21)

  • 允许远程索引在缓存时脱机工作。

1.1(2013-11-22)

  • 添加上传历史记录。
  • 跟踪上载的时间戳。
  • 支持到其他站点的spidering pypi链接。
  • 改进用户界面中的排序顺序。

1.0(2013-11-19)

  • 初始版本。

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

推荐PyPI第三方库


热门话题
JavaSpring事件发射器停止在新连接上向以前的客户端发送事件   javascript如何在Ionic 4中向选项卡添加模式?   java Hibernate hbm2ddl。自动更新不会删除mysql中的列   java如何使用instanceof根据子类类型对子类执行不同的操作?   java在JPanel中动态添加JLabel(重新验证无效)   java我的计算机上可以有两个版本的JDK吗?   spring在Java中管理每个表单提交的版本   java获取装饰器对象的所有类型:包装对象的类型和包装对象的类型   多线程Java区分可运行线程类型   javajavax。网ssl。SSLexException:填充长度无效   java JSP将单引号和双引号显示为符号   java当使用TestNG DataProvider时,有没有办法从同一个Excel工作表中读取和写入参数?   java不同的枚举哈希代码生成?   java ASM AdviceAdapter onMethodEnter打印所有参数   JavaStruts2(版本2.3.28)只接受注册的区域设置   excel如何使用Java中的Apache POI库对数据透视表数据进行排序   如果没有Kotlin库,是否可以将Kotlin翻译成Java?   安卓中用于JSON数据的java Junit