GNU/Linux >> Linux の 問題 >  >> Linux

AnsibleでGitリポジトリのクローンを作成する方法

Ansibleを使用してリモートサーバーを構成する場合、Gitリポジトリからファイルを取得する必要がある場合があります。これは、パブリックリポジトリからのソフトウェアパッケージまたはプライベートリポジトリ上の構成ファイルである可能性があります。

Ansibleを使用してリモートでgitリポジトリのクローンを作成するには、このようなエントリをPlaybookに追加できます。

---
 - hosts: all
   tasks:
   - name: Clone a github repository
     git:
       repo: https://github.com/sqlite/sqlite.git
       dest: /home/debian/repos/
       clone: yes
       update: yes

心配しないで。これらのパラメータの意味と、サンプルチュートリアルでその方法を説明します。

Ansibleを使用したGitリポジトリのクローン作成

インベントリやプレイブックなどのAnsibleの基本に既に精通していると思います。そうでない場合は、Ansibleチュートリアルシリーズに従うことができます。

前提条件

ローカルマシンにAnsibleがインストールされている必要があります。このAnsibleインスタンスは、すべてのリモートホストのコントロールノードとして機能します。コントロールノードを使用して、指定したリモートマシンで実行するプレイブックとタスクを作成できます。

このチュートリアルに従うことを選択した場合は、次のことを確認してください。

  1. 1つの制御ノードと1つのリモートホスト。
  2. SSHキーペア。制御ノードの公開鍵は、リモートホストのauthorized_keysファイルで使用可能である必要があります。
  3. sudoを持つroot以外のユーザー リモートホストの特権。
  4. 複製されたリポジトリの内容を保存するために、リモートホスト上のディレクトリへのアクセスを書き込みます。
Ansibleインベントリを設定する

先に進む前に、Ansibleインベントリを設定する必要があります。 Ansibleインベントリは、Ansibleで管理するリモートサーバーに関する情報を含むファイルです。

デフォルトでは、ファイルは/etc/ansible/hostsにあります 。このファイルが終了しない場合は、手動で作成してください。

このファイルにリモートホストのIPアドレスを追加します:

vim /etc/ansible/hosts

次のようになります:

ファイルを保存します。

Ansibleプレイブックを使用したGitリポジトリのクローン作成

インベントリファイルを構成し、コントロールノードからリモートホストにアクセスするためのSSHキーを設定したので、AnsiblePlaybookを作成できます。

Vimなどのテキストエディタを使用してYAMLファイルを作成します。

vim clone.yaml

ファイルを編集して、次のエントリを追加します。

---
 - hosts: all
   tasks:
   - name: Clone a github repository
     git:
       repo: https://github.com/sqlite/sqlite.git
       dest: /home/debian/repos/
       clone: yes
       update: yes

上記のプレイブックでは、新しいタスクを定義することから始め、「CloneaGitHubrepository」という名前を付けました。

次に、gitを使用しています SQLiteGitHubリポジトリへのリンクを指定するモジュール。

次に、複製されたリポジトリの宛先の定義に進みます。これは、リモートマシンのローカルディレクトリです。

属性cloneをyesに設定して、リポジトリのクローンを作成し、update属性を使用してリポジトリを更新します。

プレイブックを実行するには、次のコマンドを使用します:

ansible-playbook clone.yaml

SSH認証が原因でプレイブックが失敗した場合は、-uフラグを使用してユーザー名を次のように指定できます。

ansible-playbook -u debian clone.yaml

タスクが実行されたら、指定されたディレクトリにリポジトリのクローンを作成する必要があります。

リモートホストにログインして、リポジトリが正しく複製されたことを確認できます。

これにより、Ansibleを使用してGitリポジトリのクローンを作成することについて適切なアイデアが得られるはずです。この情報があれば、要件に基づいてAnsibleでGitリポジトリを使用できるようになります。

ご質問やご提案がございましたら、下にコメントを残してください。


Linux
  1. Gitリポジトリを特定のフォルダに複製する方法

  2. Gitクローンの後に自動的にCdする方法は?

  3. 方法:Ansibleを使い始める

  1. Ansibleプレイブックを使用してソフトウェアパッケージをインストールする方法

  2. Git ブランチのローカルおよびリモートの名前を変更する方法

  3. Ansible を使用してリモート マシンからローカルに複数のファイルをフェッチする方法

  1. Yumまたは最新のリポジトリを使用してCentOS7にGitをインストールする方法

  2. Debian9StretchにAnsibleをインストールする方法

  3. Gitでリポジトリを管理する方法