tehtbl.ssh_server
角色描述
在你的系统上安装和配置 openssh-server。
示例剧本
这个示例来自 molecule/default/converge.yml
,并在每次推送、拉取请求和发布时进行测试。
---
- name: 整合
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.ssh_server
你运行此命令的机器可能需要准备。我使用这个剧本来确保一切就绪,能够顺利运行角色。
---
- name: 准备
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.bootstrap
角色变量
这些变量在 defaults/main.yml
中设置:
---
# ------------------------------------------------------------------------
# ssh_server 的默认文件
# ------------------------------------------------------------------------
# 重新生成所有 sshd 服务器密钥
ssh_server_renew_keys: false
# 复制 issue.net
ssh_server_copy_issue_net: true
# AllowUsers 指令,指定谁可以连接到 ssh 服务器
ssh_server_allow_users:
- "*"
要求
- 访问包含软件包的仓库,可能在互联网上。
- 一个较新版本的 Ansible。(测试在当前、上一个和下一个版本的 Ansible 上运行。)
背景
这个角色是许多兼容角色的一部分。请查看 我的其他角色 以获取更多信息。
兼容性
该角色已在以下 Docker 镜像上进行测试:
容器 | 标签 | 允许失败 |
---|---|---|
debian | stable | 否 |
debian | testing | 否 |
debian | unstable | 是 |
ubuntu | xenial | 是 |
ubuntu | bionic | 否 |
ubuntu | focal | 否 |
ubuntu | devel | 是 |
该角色已在以下 Ansible 版本上进行测试:
- ansible>=2.8, <2.9
- ansible>=2.9
- git+https://github.com/ansible/ansible.git@devel
使用 Tox 进行测试
单元测试在每次提交、拉取请求、发布和定期进行。
如果你发现问题,请在 GitHub 中提交。
Tox 测试多个 Ansible 版本。 Molecule 测试多个发行版。
要使用默认值进行测试(任何已安装的 Ansible 版本,命名空间: tehtbl
,镜像: ubuntu
,标签: latest
):
molecule test
# 或选择特定的镜像:
IMAGE="ubuntu" molecule test
# 或选择特定的镜像和特定标签:
IMAGE="debian" TAG="stable" tox
或者你可以测试多个 Ansible 版本,并选择正确的镜像:
Tox 允许测试多个版本的 Ansible。运行默认的测试(命名空间: tehtbl
,镜像: ubuntu
,标签: latest
):
tox
# 运行 Ubuntu 的测试(命名空间: `tehtbl`,标签: `latest`)
IMAGE="ubuntu" tox
# 或者更多自定义:
IMAGE="debian" TAG="stable" tox -e py37-ansible-current
使用 Vagrant 进行测试
通过以下方式安装 vagrant
插件:
vagrant plugin install vagrant-reload
通过 VirtualBox 提供者启动测试:
vagrant up
许可证
MIT 许可
作者信息
来源
这项工作基于许多人的伟大工作,例如 Robert de Bock、Jeff Geerling 和 Thomas Waldmann。谢谢!