CyVerse-Ansible.irods_cfg

cyverse-ansible.irods-cfg

Ansible Galaxy Test Status

This tool helps set up an iRODS server once iRODS is installed. Currently, it can manage these configuration files:

  • irods_environment.json
  • etc/irods/host_access_control_config.json
  • etc/irods/hosts_config.json
  • etc/irods/server_config.json
  • etc/irods/service_account.config

Requirements

You need to have iRODS version 4.2.8 installed.

How It Works

The main tasks file, main.yml, runs the same tasks as server.yml, which involves setting up the files needed for an iRODS server.

There are two specific tasks files:

  • client.yml handles configuration files for the client (like iCommands) and currently installs the irods_environment.json file.
  • server.yml manages configuration files necessary for the iRODS server.

Several tasks files focus on individual iRODS configuration files. For example, irods_environment.yml deals with the client configuration file irods_environment.json. In the etc/irods/ directory, other files deploy their respective configuration files like host_access_control_config.json and server_config.json.

Additional tasks like setup_irods.yml and init_zone_user.yml do not belong to main.yml or tier-specific tasks. setup_irods.yml prepares the ICAT database before server.yml, and init_zone_user.yml sets up the iRODS zone user on the inventory host.

Role Variables

Below are the role variables, and none of them are required.

Variable Default Choices Comment
irods_cfg_access_entries [] A list of access entries defining who can access iRODS
irods_cfg_authentication_file /var/lib/irods/.irods/.irodsA Authentication file for the client or server
irods_cfg_catalog_provider_hosts [ localhost ] List of hostnames or IP addresses for catalog service providers
irods_cfg_catalog_service_role provider consumer, provider Role of the iRODS server
irods_cfg_client_default_hash_scheme irods_cfg_default_hash_scheme MD5, SHA256 Checksum scheme for client
irods_cfg_client_default_resource irods_cfg_default_resource_name Default resource name for client operations
... (other variables)

More variables are available to configure various aspects of your iRODS setup, such as encryption settings, logging levels, and user permissions.

Facts Set

If any iRODS configuration files change, the fact irods_cfg_made_changes will be set to true.

Dependencies

None required.

Example Playbooks

# Client Setup
- hosts: webdav
  vars:
    irods_cfg_environment_file: etc/httpd/irods/irods_environment.json
    irods_cfg_authentication_file: /etc/httpd/irods/.irodsA
    irods_cfg_chown: false
    irods_cfg_host: ares.iplantcollaborative.org
    irods_cfg_zone_name: iplant
    irods_cfg_zone_user: davrods_svc
    irods_cfg_home: /iplant
  tasks:
    - include_role:
        name: cyverse-ansible.irods-cfg
        tasks_from: "{{ item }}"
      with_items:
        - client.yml
        - init_zone_user.yml

# Catalog Service Provider
- hosts: irods_catalog_provider
  roles:
    - role: cyverse-ansible.irods-cfg
      vars:
        irods_cfg_default_hash_scheme: MD5
        irods_cfg_default_resource_name: CyVerseRes
        ...
        
# Catalog Service Consumer
- hosts: irods_resource_server
  roles:
    - role: cyverse-ansible.irods-cfg
      vars:
        irods_cfg_default_resource_directory: /f2/haboob
        ...

License

See license.

Author Information

Tony Edgin
tedgin@arizona.edu
CyVerse

Informazioni sul progetto

An ansible role for configuring an iRODS server

Installa
ansible-galaxy install CyVerse-Ansible.irods_cfg
Licenza
other
Download
142
Proprietario