Skip to main content

ansible-playbook-template

简介

ansible-playbook-template是一个用于快速生成ansible playbook的工具。

该工具可以帮助您快速生成ansible playbook的项目结构,同时也可以帮助您快速生成ansible playbook的role结构。

支持如下功能:

  • 快速生成项目结构
  • 快速生成role结构,同 ansible-galaxy init 功能一致,支持生成多个role
  • 快速生成playbook结构

快速开始

pip install asb-pl-template

#You can install  asb-pl-template directly using pipx:
pipx install "git+https://github.com/hujianli94/asb-pl-template.git"

使用

# 快速生成项目结构,支持绝对路径和相对路径
asb-pl-template init project .
asb-pl-template init project ./test_project
asb-pl-template init project . --roles-path=./roles --role-names=common1
asb-pl-template init project . --role-names=common1

# 快速生成role
## 在当前目录下生成role,role名称默认为role_example
asb-pl-template init role .
# 在指定目录下生成role,role名称为common
asb-pl-template init role ./test/roles/common

# 快速生成多个role
## 在当前目录下生成多个role
asb-pl-template init role common1 common2
## 在指定目录下生成多个role
asb-pl-template init role ./test/roles/commo1 ./test/roles/commo2

# 快速生成playbook
asb-pl-template init playbook
# 在指定目录下生成playbook
asb-pl-template init playbook --playbook_path=./test/ deploy.yml
# 快速生成包含使用示例的简单 playbook
asb-pl-template init playbook --example --playbook_path=./test/ deploy.yml

# 使用 --verbose 参数开启详细日志输出
asb-pl-template -v init project .
asb-pl-template -v init role .
asb-pl-template -v init role ./test/roles/common
asb-pl-template -v init playbook --example --playbook_path=./test/ deploy.yml




## 生成项目结构如下
<project_name>/
├── README.md            # 该专案的说明文件
├── ansible.cfg          # ansible config file
├── hosts                # inventory file for production servers
├── group_vars/
│   ├── main.yml         # 各环境共用的 vars
│   ├── local.yml        # 本机开发的 vars
│   ├── prod.yml         # 正式环境的 vars
│   └── stage.yml        # 测试环境的 vars
├── host_vars
│   ├── prod.yml         # 正式环境的主机 vars
│   └── stage.yml        # 测试环境的主机 vars
├── library/             # 自定义的模块
├── requirements.yml     # 依赖的 role
├── playbooks/
│   └── site.yml         # 主 playbook
│   └── site-local.yml   # 本机开发的 playbook
│   └── site-prod.yml    # 正式环境的 playbook
│   └── site-stage.yml   # 测试环境的 playbook
└── inventories/
    ├── prod/
    │   ├── group_vars/   # 组 vars
    │   ├── host_vars/    # 主机 vars
    │   └── inventory/    # 主机清单文件
    └── stage/
        ├── group_vars/   # 组 vars
        ├── host_vars/    #
        └── inventory/    #
└── roles/
    └── <role_name>/        # role name
        ├── tasks/        #
        │   └── main.yml  # main tasks file
        ├── handlers/     #
        │   └── main.yml  # handlers file
        ├── templates/    #
        │   └── ntp.conf.j2 # templates end in .j2
        ├── files/        #
        │   ├── bar.txt   # files
        │   └── foo.sh    # script files
        ├── vars/         #
        │   └── main.yml  # variables with this role
        ├── defaults/     #
        │   └── main.yml  # default variables
        └── meta/         #
            └── main.yml  # role dependencies
└── tests/
    └── test.yml        # playbook for testing

Metadata

Release files for asb-pl-template 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for asb-pl-template 0.1.5
File Interpreter ABI Platform
asb_pl_template-0.1.5-py3-none-any.whl Python 3 none any Details

Release files / asb_pl_template-0.1.5-py3-none-any.whl

Download URL asb_pl_template-0.1.5-py3-none-any.whl
Size 11.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
db8c259e424a9a37bf395b642db2d18682fa9a6b089272a6d6c3de5ff4509c90
BLAKE2b-256 checksum
How to use checksums
6f44aff99bd80c950e2e74c0a975bf334a93446214934970a95b53dbfe915c90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.6

Release history Release notifications | RSS feed

This release

0.1.5 This release

1 release file

0.1.4

2 release files

0.1.3

2 release files

0.1.1

2 release files

0.1.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page