arms


Namearms JSON
Version 1.10.1 PyPI version JSON
download
home_pagehttps://pypi.python.org/pypi/arms
SummaryCI/CD tool of Chongqing Parsec Corp.
upload_time2024-12-25 10:18:42
maintainerNone
docs_urlNone
authorqorzj
requires_pythonNone
licenseMIT
keywords arms armstrong chongqing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ## 一、如何使用arms?

使用`--help`命令熟悉arms:

```
(venv311) ➜  ~ arms --help
usage: arms [-h] {version,init,patch,config,search,update,design} ...

armstrong

positional arguments:
  {version,init,patch,config,search,update,design}
    version             显示版本
    init                项目初始化工具
    patch               项目补丁工具
    config              arms配置工具
    search              项目搜索工具
    update              arms更新配置
    design              生成文本并复制

options:
  -h, --help            show this help message and exit
```

### 第一步:配置arms

```
arms config ${PARSEC_GITLAB}/arms-tpl/source
```

### 第二步:搜索项目

对于kotlin项目,可以尝试:

```
(venv311) ➜  ~ arms search kotlin
spring-kotlin - kotlin on springboot with CI
kotlin-user - kotlin, 带用户体系
```

### 第三步:生成初始化代码

根据上一步的搜索接口,先cd到新创建的项目目录,执行:

```
git init  # 如果目录下已经用.git目录则忽略
arms init kotlin-user
```

## 二、如何创建模版项目

以kotlin-user项目为例,在其项目根目录创建一个`.arms.json`文件,内容为:

```json
{
  "__name__": [
    {"word": "grpn", "hint": "组名称"}
  ],
  ".env": {
    "ARMS_PROJECT_NAME": "demo"
  }
}
```

然后在`arms init ...`的时候arms就会要求用户输入「组名称」和「服务名称」,用于“智能地”替换"grpn"和"demo"。

arms也支持多级配置,例如下面这个前端CI模版的`.arms.json`文件:

```json
{
    "管理端": {
        "__name__": [{"word": "grpn", "hint": "组名称"}],
        "__only__": ["docker", ".gitlab-ci.yml"]
    },
    "H5端": {
        "__name__": [{"word": "grpn", "hint": "组名称"}],
        "__only__": ["docker", ".gitlab-ci.yml:.gitlab-ci.mobile.yml"]
    },
    ".env": {
        "ARMS_PROJECT_NAME": "demo"
    }
}
```

### 关键字列表

```
__name__: [{}]  //依次提示用户输入
__only__: [""]  //只包含的文件,支持改名
__except__: [""]  //排除的文件
```

## 三、如何使用patch功能

patch功能可以把生成的内容打印到标准输入,用户可以把内容作为上下文,跟prompt一起提交给LLM,从而提升LLM结果的质量。

## 四、友情项目

- inky-flow-cli: ${PARSEC_GITLAB}/inky/flow_cli ,用于后端项目启动阶段,目标是生成openapi.json。

            

Raw data

            {
    "_id": null,
    "home_page": "https://pypi.python.org/pypi/arms",
    "name": "arms",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "arms armstrong chongqing",
    "author": "qorzj",
    "author_email": "inull@qq.com",
    "download_url": "https://files.pythonhosted.org/packages/ad/31/ad1b0596aca91b8ca0afa8f484ce14cd56aacc712bf5542d8330ea4c2181/arms-1.10.1.tar.gz",
    "platform": "any",
    "description": "## \u4e00\u3001\u5982\u4f55\u4f7f\u7528arms\uff1f\n\n\u4f7f\u7528`--help`\u547d\u4ee4\u719f\u6089arms:\n\n```\n(venv311) \u279c  ~ arms --help\nusage: arms [-h] {version,init,patch,config,search,update,design} ...\n\narmstrong\n\npositional arguments:\n  {version,init,patch,config,search,update,design}\n    version             \u663e\u793a\u7248\u672c\n    init                \u9879\u76ee\u521d\u59cb\u5316\u5de5\u5177\n    patch               \u9879\u76ee\u8865\u4e01\u5de5\u5177\n    config              arms\u914d\u7f6e\u5de5\u5177\n    search              \u9879\u76ee\u641c\u7d22\u5de5\u5177\n    update              arms\u66f4\u65b0\u914d\u7f6e\n    design              \u751f\u6210\u6587\u672c\u5e76\u590d\u5236\n\noptions:\n  -h, --help            show this help message and exit\n```\n\n### \u7b2c\u4e00\u6b65\uff1a\u914d\u7f6earms\n\n```\narms config ${PARSEC_GITLAB}/arms-tpl/source\n```\n\n### \u7b2c\u4e8c\u6b65\uff1a\u641c\u7d22\u9879\u76ee\n\n\u5bf9\u4e8ekotlin\u9879\u76ee\uff0c\u53ef\u4ee5\u5c1d\u8bd5\uff1a\n\n```\n(venv311) \u279c  ~ arms search kotlin\nspring-kotlin - kotlin on springboot with CI\nkotlin-user - kotlin, \u5e26\u7528\u6237\u4f53\u7cfb\n```\n\n### \u7b2c\u4e09\u6b65\uff1a\u751f\u6210\u521d\u59cb\u5316\u4ee3\u7801\n\n\u6839\u636e\u4e0a\u4e00\u6b65\u7684\u641c\u7d22\u63a5\u53e3\uff0c\u5148cd\u5230\u65b0\u521b\u5efa\u7684\u9879\u76ee\u76ee\u5f55\uff0c\u6267\u884c\uff1a\n\n```\ngit init  # \u5982\u679c\u76ee\u5f55\u4e0b\u5df2\u7ecf\u7528.git\u76ee\u5f55\u5219\u5ffd\u7565\narms init kotlin-user\n```\n\n## \u4e8c\u3001\u5982\u4f55\u521b\u5efa\u6a21\u7248\u9879\u76ee\n\n\u4ee5kotlin-user\u9879\u76ee\u4e3a\u4f8b\uff0c\u5728\u5176\u9879\u76ee\u6839\u76ee\u5f55\u521b\u5efa\u4e00\u4e2a`.arms.json`\u6587\u4ef6\uff0c\u5185\u5bb9\u4e3a\uff1a\n\n```json\n{\n  \"__name__\": [\n    {\"word\": \"grpn\", \"hint\": \"\u7ec4\u540d\u79f0\"}\n  ],\n  \".env\": {\n    \"ARMS_PROJECT_NAME\": \"demo\"\n  }\n}\n```\n\n\u7136\u540e\u5728`arms init ...`\u7684\u65f6\u5019arms\u5c31\u4f1a\u8981\u6c42\u7528\u6237\u8f93\u5165\u300c\u7ec4\u540d\u79f0\u300d\u548c\u300c\u670d\u52a1\u540d\u79f0\u300d\uff0c\u7528\u4e8e\u201c\u667a\u80fd\u5730\u201d\u66ff\u6362\"grpn\"\u548c\"demo\"\u3002\n\narms\u4e5f\u652f\u6301\u591a\u7ea7\u914d\u7f6e\uff0c\u4f8b\u5982\u4e0b\u9762\u8fd9\u4e2a\u524d\u7aefCI\u6a21\u7248\u7684`.arms.json`\u6587\u4ef6\uff1a\n\n```json\n{\n    \"\u7ba1\u7406\u7aef\": {\n        \"__name__\": [{\"word\": \"grpn\", \"hint\": \"\u7ec4\u540d\u79f0\"}],\n        \"__only__\": [\"docker\", \".gitlab-ci.yml\"]\n    },\n    \"H5\u7aef\": {\n        \"__name__\": [{\"word\": \"grpn\", \"hint\": \"\u7ec4\u540d\u79f0\"}],\n        \"__only__\": [\"docker\", \".gitlab-ci.yml:.gitlab-ci.mobile.yml\"]\n    },\n    \".env\": {\n        \"ARMS_PROJECT_NAME\": \"demo\"\n    }\n}\n```\n\n### \u5173\u952e\u5b57\u5217\u8868\n\n```\n__name__: [{}]  //\u4f9d\u6b21\u63d0\u793a\u7528\u6237\u8f93\u5165\n__only__: [\"\"]  //\u53ea\u5305\u542b\u7684\u6587\u4ef6\uff0c\u652f\u6301\u6539\u540d\n__except__: [\"\"]  //\u6392\u9664\u7684\u6587\u4ef6\n```\n\n## \u4e09\u3001\u5982\u4f55\u4f7f\u7528patch\u529f\u80fd\n\npatch\u529f\u80fd\u53ef\u4ee5\u628a\u751f\u6210\u7684\u5185\u5bb9\u6253\u5370\u5230\u6807\u51c6\u8f93\u5165\uff0c\u7528\u6237\u53ef\u4ee5\u628a\u5185\u5bb9\u4f5c\u4e3a\u4e0a\u4e0b\u6587\uff0c\u8ddfprompt\u4e00\u8d77\u63d0\u4ea4\u7ed9LLM\uff0c\u4ece\u800c\u63d0\u5347LLM\u7ed3\u679c\u7684\u8d28\u91cf\u3002\n\n## \u56db\u3001\u53cb\u60c5\u9879\u76ee\n\n- inky-flow-cli: ${PARSEC_GITLAB}/inky/flow_cli \uff0c\u7528\u4e8e\u540e\u7aef\u9879\u76ee\u542f\u52a8\u9636\u6bb5\uff0c\u76ee\u6807\u662f\u751f\u6210openapi.json\u3002\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "CI/CD tool of Chongqing Parsec Corp.",
    "version": "1.10.1",
    "project_urls": {
        "Homepage": "https://pypi.python.org/pypi/arms"
    },
    "split_keywords": [
        "arms",
        "armstrong",
        "chongqing"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "516b0df50d40b368eb426ca6917a2184a78fdec9a8892a9d7fe5f46102d4cca2",
                "md5": "cb1f1dfdda4cf8c754939fee1addb051",
                "sha256": "c514f25737f54e081db43c97ec883357bf31e3c403955f38e12242fd92b17091"
            },
            "downloads": -1,
            "filename": "arms-1.10.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cb1f1dfdda4cf8c754939fee1addb051",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 22094,
            "upload_time": "2024-12-25T10:18:39",
            "upload_time_iso_8601": "2024-12-25T10:18:39.276776Z",
            "url": "https://files.pythonhosted.org/packages/51/6b/0df50d40b368eb426ca6917a2184a78fdec9a8892a9d7fe5f46102d4cca2/arms-1.10.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ad31ad1b0596aca91b8ca0afa8f484ce14cd56aacc712bf5542d8330ea4c2181",
                "md5": "d0daf1523f26e0fe0801371dea34a0ed",
                "sha256": "6e1f0720877cf5f5d5c76e126a49a216f4cc327593fcc59e7b972ad981216559"
            },
            "downloads": -1,
            "filename": "arms-1.10.1.tar.gz",
            "has_sig": false,
            "md5_digest": "d0daf1523f26e0fe0801371dea34a0ed",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 20982,
            "upload_time": "2024-12-25T10:18:42",
            "upload_time_iso_8601": "2024-12-25T10:18:42.366556Z",
            "url": "https://files.pythonhosted.org/packages/ad/31/ad1b0596aca91b8ca0afa8f484ce14cd56aacc712bf5542d8330ea4c2181/arms-1.10.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-25 10:18:42",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "arms"
}
        
Elapsed time: 0.72335s