我想问你如何使用Ansible实现这样的案例。
我的主要目标是使用裸机存储库并将其克隆到同一台机器(/ var / www)。 我通常的步骤是:
1)git init -bare(在/ git / project-name中运行)
2)git clone / git / project-name -no-hardlinks(在в/ var / www中运行)
当我愿意使用Ansible做这个案例时,我无法实现第一步 - 初始化如果是一个空的git裸存储库。
Ansible git模块要求'repo'param应该填充存储库地址,但是如果我只创建一个地址,我该如何定义它?
git:repo = ?? dest = / git / project-name bare = yes
答案 0 :(得分:3)
以下是使用新的裸仓库设置git服务器的示例手册:
---
- hosts: git.example.org
become: true
tasks:
- user:
name: git
shell: /usr/bin/git-shell
home: /srv/git
- authorized_key:
user: git
state: present
key: https://github.com/myuser.keys
- command: git init --bare /srv/git/myrepo.git
args:
creates: /srv/git/myrepo.git/HEAD
become_user: git
如果您已经在服务器上设置了git
用户,那么您只需要关注command
任务。享受!