channel_member – Manage a member for a Hyperledger Fabric channel

Synopsis

Add, update, and remove members for a Hyperledger Fabric channel.

This module works with the IBM Support for Hyperledger Fabric software or the Hyperledger Fabric Open Source Stack running in a Red Hat OpenShift or Kubernetes cluster.

Parameters

api_endpoint (required)

The URL for the Fabric operations console.

Type: str
api_authtype (required)

basic - Authenticate to the Fabric operations console using basic authentication. You must provide both a valid API key using api_key and API secret using api_secret.

Type: str
api_key (required)

The API key for the Fabric operations console.

Type: str
api_secret

The API secret for the Fabric operations console.

Only required when api_authtype is basic.

Type: str
api_timeout

The timeout, in seconds, to use when interacting with the Fabric operations console.

Type: int
Default value: 60
state

absent - An organization matching the specified name will be removed from the channel.

present - Asserts that an organization matching the specified name and configuration exists in the channel. If no organization matches the specified name, the organization will be added to the channel. If an organization matches the specified name but the configuration does not match, then the organization in the channel will be updated.

Type: str
Default value: present
path (required)

Path to current the channel configuration file.

This file can be fetched by using the ERROR while parsing: While parsing “M(channel_config)” at index 39: Module name “channel_config” is not a FQCN module.

This file will be updated in place. You will need to keep a copy of the original file for computing the configuration update.

Type: str
organization (required)

The organization to add, update, or remove from the channel.

You can pass a string, which is the display name of an organization registered with the Fabric operations console.

You can also pass a dictionary, which must match the result format of one of the ERROR while parsing: While parsing “M(organization_info)” at index 82: Module name “organization_info” is not a FQCN or ERROR while parsing: While parsing “M(organization[])” at index 106: Module name “organization[]” is not a FQCN modules.

Type: raw
anchor_peers

The anchor peers for this organization in this channel.

You can pass strings, which are the names of peers that are registered with the Fabric operations console.

You can also pass a dict, which must match the result format of one of the ERROR while parsing: While parsing “M(peer_info)” at index 76: Module name “peer_info” is not a FQCN or ERROR while parsing: While parsing “M(peer)” at index 92: Module name “peer” is not a FQCN modules.

Type: list
Elements: raw
policies

The set of policies for the channel member. The keys are the policy names, and the values are the policies.

You can pass strings, which are paths to JSON files containing policies in the Hyperledger Fabric format (common.Policy).

You can also pass a dict, which must correspond to a parsed policy in the Hyperledger Fabric format (common.Policy).

Default policies are provided for the Admins, Writers, Readers, and Endorsement policies. You only need to provide policies if you want to override these default policies, or add additional policies.

Type: dict

Examples

- name: Add the organization to the channel
  hyperledger.fabric_ansible_collection.channel_member:
    state: present
    api_endpoint: https://console.example.org:32000
    api_authtype: basic
    api_key: xxxxxxxx
    api_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    organization: Org2
    path: channel_config.bin

- name: Update the organization in the channel with anchor peers
  hyperledger.fabric_ansible_collection.channel_member:
    state: present
    api_endpoint: https://console.example.org:32000
    api_authtype: basic
    api_key: xxxxxxxx
    api_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    organization: Org2
    path: channel_config.bin
    anchor_peers:
      - Org2 Peer

- name: Remove the organization from the channel
  hyperledger.fabric_ansible_collection.channel_member:
    state: absent
    api_endpoint: https://console.example.org:32000
    api_authtype: basic
    api_key: xxxxxxxx
    api_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    organization: Org2
    path: channel_config.bin