标签归档:devops-tools

Walle-web-Walle-瓦力DevOps开源项目代码部署平台

Walle 2.0-官方主页


字节跳动内推书名:Tob Lark招聘大数据研发、数据分析师,机会极佳,请勿错过.请各位朋友扩散下有需要的同学直达内推链接、帮助内推,君子成人之美,谢谢.

功能强大,且免费开源的walle-web 瓦力终于更新2.0.0了!

Walle让用户代码发布终于可以不只能选择Jenkins!支持各种Web代码发布,php、java、python、go等代码的发布、回滚可以通过Web来一键完成。Walle一个可自由配置项目,更人性化,高颜值,支持Git、多用户、多语言、多项目、多环境同时部署的开源上线部署系统.

2.0.0占用了我几乎所有业余时间,精力与金钱付出换各位使用收益,望各位喜欢不吝顺手star以示支持,项目更好亦反馈予你.目前2.0.0已经发布,请保持关注,我会在公众号更新(在最下面)。

有推广资源(开源文章推荐、大会分享)的同学,请微信联系我,强烈需要帮助.另外,老版本已迁移到walle 1.x的同学务必不要再更新了,两个版本不兼容

功能

  • gitlabRESTful API,类gitlab的权限模型.将来打通gitlab,良心的惊喜
  • 空间管理.意味着有独立的空间资源:环境管理、用户组、项目、服务器等
  • 灰度发布.呼声不断,终于来了
  • 项目管理.Deploy、Release的前置及后置Hook,自定义全局变量;自带检测、复制功能,都贴心到这种程度了
  • websocket实时展示部署中的shell console、跟真的终端长得一样.
  • 完善的通知机制.邮件、钉钉
  • 全新的UI、我自己都被震撼到了,如丝般流畅

架构


预览





安装

快速安装|安装错误|常见错误排解

路线图

  • 预览版2018/12/02
    • 安装文档、前后端代码、数据迁移
  • Alpha2018-12-09
    • 使用文档、故障排除、公众号更新
  • 测试版2018/12/23🎅圣诞夜前夕
    • 钉钉/邮件消息通知
    • 接受官网徽标企业的Trouble Shooting
  • 2.0.02018/12/301个️⃣元旦前夕
    • 项目检测、复制
    • 任务的回滚
    • released tag、使用文档
    • Docker镜像
    • JAVA配置模板
    • php配置模板
    • github5000star
  • 2.0.12019-01-13
    • 项目配置添加自定义变量
    • Python3.7+兼容
  • 2.1.02019-03-22
    • 超管权限完善
    • Dashboard1.0(全新的玩法,欢迎提问题)
    • 3月24日开源中国苏州源创会-开源综合技术主题“开源构建多空间可视化一键部署DevOps平台”
  • 2.2.02019-04-22
    • 网络挂钩(GitLab)
    • 上线时间记录、命令与结果拆分、实时控制台
    • 宿主机资源监控
  • 2.3.02019-05-27
    • 插件化:Maven、npm
    • 管道式
  • 2.4.02019-06-17
    • I18N国际化
  • 2.5.02019/07/29
    • 上线单差异
    • 消息通知定制化:钉钉、邮件、企业微信
  • 2.6.02019-08-19
    • 批量管理服务器
    • 跨空间复制项目
    • 应用程序打包平台
    • Dashboard2.0

Python-dotenv-获取并设置本地和生产服务器中的.env文件中的值为环境变量

python-dotenv从.env并可以将它们设置为环境变量。它有助于遵循以下条件的应用程序开发12-factor原则

快速入门

pip install python-dotenv

如果您的应用程序从环境变量(如12因素应用程序)获取其配置,则在开发中启动它并不是很实际,因为您必须自己设置这些环境变量

为了帮助您做到这一点,您可以将python-dotenv添加到您的应用程序中,使其从.env文件存在时(例如,在开发中),同时保持可通过环境进行配置:

from dotenv import load_dotenv

load_dotenv()  # take environment variables from .env.

# Code of your application, which uses environment variables (e.g. from `os.environ` or
# `os.getenv`) as if they came from the actual environment.

默认情况下,load_dotenv不覆盖现有环境变量

若要配置开发环境,请添加.env在项目的根目录中:

.
├── .env
└── foo.py

的语法.envpython-dotenv支持的文件与Bash相似:

# Development settings
DOMAIN=example.org
ADMIN_EMAIL=admin@${DOMAIN}
ROOT_URL=${DOMAIN}/app

如果在值中使用变量,请确保用{},就像${DOMAIN},作为赤裸裸的变量,如$DOMAIN不会展开

您可能想要添加.env致您的.gitignore,特别是如果它包含密码之类的秘密

请参见下面的“文件格式”一节,了解有关可以在.env文件

其他使用情形

在不更改环境的情况下加载配置

该函数dotenv_values其工作方式与load_dotenv,除非它不接触环境,它只是返回一个dict使用从.env文件

from dotenv import dotenv_values

config = dotenv_values(".env")  # config = {"USER": "foo", "EMAIL": "foo@example.org"}

这显著实现了高级配置管理:

import os
from dotenv import dotenv_values

config = {
    **dotenv_values(".env.shared"),  # load shared development variables
    **dotenv_values(".env.secret"),  # load sensitive variables
    **os.environ,  # override loaded values with environment variables
}

将配置解析为流

load_dotenvdotenv_values接受streams通过他们的stream论点。因此,可以从文件系统以外的源(例如,网络)加载变量

from io import StringIO

from dotenv import load_dotenv

config = StringIO("USER=foo\nEMAIL=foo@example.org")
load_dotenv(stream=config)

在IPython中加载.env文件

您可以在IPython中使用dotenv。默认情况下,它将使用find_dotenv要搜索某个对象,请执行以下操作.env文件:

%load_ext dotenv
%dotenv

您还可以指定路径:

%dotenv relative/or/absolute/path/to/.env

可选标志:

  • -o要覆盖现有变量,请执行以下操作
  • -v以提高冗长程度

命令行界面

CLI界面dotenv也包括在内,它可以帮助您操作.env文件,而无需手动打开它

$ pip install "python-dotenv[cli]"
$ dotenv set USER foo
$ dotenv set EMAIL foo@example.org
$ dotenv list
USER=foo
EMAIL=foo@example.org
$ dotenv run -- python foo.py

dotenv --help有关选项和子命令的详细信息

文件格式

该格式没有正式指定,并且随着时间的推移仍在改进。话虽如此,.env文件应该主要看起来像Bash文件

键可以是无引号的,也可以是单引号的。值可以是无引号的、单引号的或双引号的。键前后的空格、等号和值将被忽略。值后面可以跟注释。行可以以export指令,该指令对它们的解释没有影响

允许的转义序列:

  • 在单引号的值中:\\\'
  • 在双引号的值中:\\\'\"\a\b\f\n\r\t\v

多行值

单引号或双引号的值可以跨多行。以下示例等效:

FOO="first line
second line"
FOO="first line\nsecond line"

变量展开

Python-dotenv可以使用POSIX变量展开来插值变量

使用load_dotenv(override=True)dotenv_values()变量的值是下表中定义的第一个值:

  • 中该变量的值。.env文件
  • 环境中该变量的值
  • 默认值(如果提供)
  • 空字符串

使用load_dotenv(override=False)变量的值是下表中定义的第一个值:

  • 环境中该变量的值
  • 中该变量的值。.env文件
  • 默认值(如果提供)
  • 空字符串

相关项目

确认

此项目当前由Saurabh KumarBertrand Bonnefoy-Claudet如果没有这些人的支持是不可能的awesome
people

Visidata 一种用于发现和整理数据的终端电子表格工具

一种用于浏览和排列表格数据的终端界面

VisiData支持TSV、CSV、SQLite、json、xlsx(Excel)、hdf5和many other formats

平台要求

  • Linux、OS/X或Windows(带WSL)
  • Python 3.6+
  • 某些格式和源需要其他Python模块

安装

要从PyPI安装最新版本,请执行以下操作:

 

pip3 install visidata

安装尖端设备的步骤develop分公司(无明示或默示的保修):

 

pip3 install git+https://github.com/saulpw/visidata.git@develop

看见visidata.org/install有关所有可用平台和包管理器的详细说明,请参阅

用法

 

$ vd <input>
$ <command> | vd

按下Ctrl+Q随时戒烟

还可以使用数百个其他命令和选项;请参阅文档

文档

帮助和支持

如果您有关于VisiData的问题、问题或建议,请create an issue on Github或在#visidata上与我们聊天irc.libera.chat

如果您经常使用VisiData,请support me on Patreon好了!

许可证

中的代码。stable此存储库的分支,包括主vd应用程序、加载器和插件可在GPLv3下使用和重新分发

学分

VisiData由Saul Pwanson构思和开发<vd@saul.pw>

安雅·凯法拉(Anja Kefala)<anja.kefala@gmail.com>维护所有平台的文档和软件包

非常感谢无数其他人contributors,以及那些提供反馈的优秀用户,感谢他们帮助VisiData成为令人敬畏的工具