SALVE配置部署语言

salve的Python项目详细描述


Build StatusCoverage StatusPyPi VersionCode Climate

药膏

SALVE获取git存储库中的文件和目录,并处理凌乱的文件和目录 将这些文件部署到计算机上的过程。在

更多信息请访问SALVE Website。在

如何使用它?在

SALVE是一种语言,同时也是该语言的编译器和运行时。 你写“清单”来描述你的文件要去哪里,以及 剩下的就用药膏了。 语言很小很简单,你可以学习所有重要的 几分钟后分开,半小时内回答剩下的问题 小时。在

要开始编写清单,可以转到Quick-Start Guide。 对于SALVE语言的更详细的描述,Language Page和{a8}是很好的资源。在

一旦有了要运行的清单,只需对其执行salve deploy。 如果已经安装了pip包,那么可以运行

salve deploy –manifest path/to/root.manifest

或者,如果您使用git repo作为源

python SALVE/salve.py deploy –manifest path/to/root.manifest

由于deploy是默认操作,您还可以运行

salve -m path/to/root.manifest

我需要什么来运行它?在

SALVE与python2.6、2.7、3.2、3.3、3.4和3.5完全兼容。 它也适用于pypy和pypy3。在

它不依赖于其他python包,所以只要您有 安装了这些版本的Python,就可以运行SALVE了。在

Python2.6支持

支持Python2.6,但由于在Python3.x中不推荐使用OptParse, SALVE依赖于argparse。在

要在python2.6中运行SALVE,需要安装argparse 或者执行pipeasy_installsalve来拉入 自动依赖。在

路线图

路线图已被替换为 GitHub issues。在

变更日志

  • 2.4.2
    • Fix a bug with setting the log level
    • Make the ^{tt2}$ subcommand the default when no subcommand is given
  • 2.4.1
    • SALVE now uses the python standard library for logging, rather than custom logging
    • Entire codebase (including tests) is now PEP8 and passes ^{tt9}$
    • Significant refactoring to improve Code Climate scoring
  • 2.4.0
    • Paths can be expanded relative to the manifest being processed, rather than relative to the root manifest (this will become the default in version 3)
  • 2.3.1
    • Fixes to setuptools usage
    • Change markdown documents to reST
  • 2.3.0
    • Support for Python 2.6 (with argparse installed)
    • Primary Attribute style blocks
    • Filesys abstraction layer
    • Removed ^{tt10}$ automatic variable
    • Relocated ^{tt11}$ to ^{tt12}$
    • Default directory (without override) is directory of root manifest
  • 2.2.0
    • Travis and Coveralls integration
    • Improved internal logging and context handling
    • Support for Python 3
  • 2.1.0
    • Numerous log levels and output controls
    • Default attributes, which behave like the old 1.x version ^{tt13}$ attributes
    • Increased the context information produced when errors are raised
    • Regained code coverage in tests
    • Made the codebase PEP8 compliant (as per ^{tt14}$ v1.2)
  • 2.0.0
    • Backups are now stored in a flat dir by hash, resolving some dir/file conflict issues
    • Change to backup logfile timestamp format, more human readable
    • Old ^{tt15}$ usage is now ^{tt16}$, and added stub ^{tt17}$
    • Switched to argparse – now incompatible with python 2.6.x without libraries
    • ^{tt13}$ block attributes are now ^{tt19}$, and have precedence over block-defined attributes
    • Action verification checks and warnings on failures and skips
  • 1.1.0
    • Large expansions to the testsuite
    • No SALVE actions are performed through the shell anymore
    • Permissions are now checked before actions are executed so that insufficient permissions will not crash the entire run
    • Error messages now take the common ^{tt20}$ format
  • 1.0.3
    • Fixes major bug with dir copy not triggering file backups
    • Internal refactoring and cleanup in Blocks and Actions
  • 1.0.2
    • Fewer actions rely on shell commands and use ^{tt21}$ instead
    • Underspecifying an action no longer causes a failure for chown and chmod, but skips these actions instead
    • File create now does a ^{tt22}$ instead of a ^{tt23}$, so that access time is changed instead of modified time
  • 1.0.1
    • Removed aggressive backups behavior that backed up directories and files on creation
    • Improved error reporting at levels of execution above the parser
  • 1.0.0
    • Addition of backups for overwritten files
    • Addition of ^{tt24}$ variable
    • Completed test coverage
  • beta 0.1.0
    • Addition of directory blocks
  • alpha 0.0.2
    • Expansion of relative paths
    • Fixes for configuration templating in blocks
    • Checks EUID before attempting chown
  • alpha 0.0.1
    • Basic functionality for file blocks and manifest blocks

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

推荐PyPI第三方库


热门话题
java如何使用DBFlow进行迁移?   java无法从socket读取数据   java在JButton上使用鼠标运动监听器?   元素的java ArrayList链接和get IndexOutOfBoundsException   javascript如何在Java脚本中从ajax调用解析JSON对象   从数据库中获取信息并将其写入JTable。错误:java。lang.IndexOutOfBoundsException:索引:2,大小:2   spring如何使用Java SpringBoot在FCM推送通知中向IOS发送图像通知   java jsoup:解析某个标记的数据,该标记恰好位于某个特定标记之后   java没有HashMap的等式依赖于EntrySet。钥匙套?   未按预期评估java Maven属性(osmavenplugin)   类Java向ArrayList添加了用户输入,需要用另一个ArrayList中的变量分隔   JavaJSF丰富:每行呈现的数据列表?   集合Java 8按属性区分   在Java中,是否可以(静态)导入构造函数或局部变量?   安卓在ubuntu 10上安装java时出错64位   java是否应该hashCode()只使用equals()中使用的不可变字段的子集?   java如何创建ConcurrentMultiMap