tigattack.rclone_rc_remotes
Ansible ロール: rclone_rc_remotes
Ansibleロールは、Rcloneのrc APIを使用してRcloneリモートを作成および削除します。
ロールをインストールする: ansible-galaxy role install tigattack.rclone_rc_remotes
要件
なし。
依存関係
なし。
ロール変数
rclone_host
: Rclone rcのホスト名またはIPアドレス。デフォルトは{{ ansible_fqdn }}
。rclone_port
: Rclone rcのポート。デフォルトは5572
、rcのデフォルトポートです。rclone_username
: Rclone rcのユーザー名。rclone_password
: Rclone rcのパスワード。rclone_remotes
: Rcloneリモートのリスト(配列)。remove_undefined_remotes
:true
の場合、rclone_remotes
変数に定義されていないリモートが削除されます。デフォルトはfalse
です。
rclone_remotes
の例は、シンプルなGoogleドライブのリモート構成に基づいています:
rclone_remotes:
- name: my-remote
type: drive
parameters:
scope: drive
client_id: "01234"
client_secret: "56789"
root_folder_id: "abcde"
Rcloneリモートの認証
OAuthを必要とするバックエンド(リモート)タイプは、対話式認証を必要とし、完全に自動化することはできません。
その場合、Ansibleは指示を表示し、実行を一時停止し、対話式認証が完了し、実行を再開するとリモートに接続できることを確認します。
例プレイブック
- hosts: all
roles:
- role: tigattack.rclone_rc_remotes
vars:
rclone_remotes:
- name: my-remote
type: drive
parameters:
scope: drive
client_id: "01234"
client_secret: "56789"
root_folder_id: "abcde"
rclone rcなしでのリモートの認証の使用法
このロールの主な目的ではありませんが、認証が必要な場合、タスクファイルの1つを使用して既存のリモートを認証できます:
- name: Rcloneリモートを構成する
ansible.builtin.include_role:
name: tigattack.rclone_rc_remotes
tasks_from: rclone-authenticate-remote.yml
vars:
remote_name: my-remote
テストに関する注意
このロールは、Rcloneに使用可能なリモートを定義する必要があるため、自動的にはテストされません。
実世界のサービスに頼らずに、どのように実行できるかについてアイデアがあれば、ぜひ提案してください。