external_ordering_service – Manage an external Hyperledger Fabric ordering service

Synopsis

Import or remove an external Hyperledger Fabric ordering service by using the IBM Blockchain Platform.

This module works with the IBM Blockchain Platform managed service running in IBM Cloud, or the IBM Blockchain Platform software running in a Red Hat OpenShift or Kubernetes cluster.

Parameters

api_endpoint (required)

The URL for the IBM Blockchain Platform console.

Type: str
api_authtype (required)

ibmcloud - Authenticate to the IBM Blockchain Platform console using IBM Cloud authentication. You must provide a valid API key using api_key.

basic - Authenticate to the IBM Blockchain Platform 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 IBM Blockchain Platform console.

Type: str
api_secret

The API secret for the IBM Blockchain Platform console.

Only required when api_authtype is basic.

Type: str
api_timeout

The timeout, in seconds, to use when interacting with the IBM Blockchain Platform console.

Type: int
Default value: 60
api_token_endpoint

The IBM Cloud IAM token endpoint to use when using IBM Cloud authentication.

Only required when api_authtype is ibmcloud, and you are using IBM internal staging servers for testing.

Type: str
Default value: https://iam.cloud.ibm.com/identity/token
state

absent - An ordering service matching the specified name will be stopped and removed.

present - Asserts that an ordering service matching the specified name and configuration exists. If no ordering service matches the specified name, an ordering service will be created. If an ordering service matches the specified name but the configuration does not match, then the ordering service will be updated, if it can be. If it cannot be updated, it will be removed and re-created with the specified configuration.

Type: str
Default value: present
name

The name of the external ordering service.

Only required when state is absent.

Type: str
ordering_service

The definition of the external ordering service, as a list of ordering service nodes.

Only required when state is present.

Type: list
Elements: dict
name

The name of the ordering service node.

Type: str
api_url

The URL for the API of the ordering service node.

Type: str
operations_url

The URL for the operations service of the ordering service node.

Type: str
grpcwp_url

The URL for the gRPC web proxy of the ordering service node.

Type: str
msp_id

The MSP ID of the ordering service node.

Type: str
pem

The TLS certificate chain for the ordering service node.

Type: str
tls_ca_root_cert

The TLS certificate chain for the ordering service node.

Type: str
tls_cert

The TLS certificate for the ordering service node.

Type: str
location

The location of the ordering service node.

Type: str
system_channel_id

The name of the system channel for the ordering service node.

Type: str
client_tls_cert

The client TLS certificate for the ordering service node.

Type: str
server_tls_cert

The client TLS certificate for the ordering service node.

Type: str
cluster_id

The unique ID of the ordering service cluster.

Type: str
cluster_name

The name of the ordering service cluster.

Type: str

Examples

- name: Import the ordering service
  ibm.blockchain_platform.external_ordering_service:
    state: present
    api_endpoint: https://ibp-console.example.org:32000
    api_authtype: basic
    api_key: xxxxxxxx
    api_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    ordering_service: "{{ lookup('file', 'Ordering Service.json') }}"

- name: Remove the imported ordering service
  ibm.blockchain_platform.external_ordering_service:
    state: absent
    api_endpoint: https://ibp-console.example.org:32000
    api_authtype: basic
    api_key: xxxxxxxx
    api_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    name: Ordering Service

Return Values

ordering_service

The ordering service, as a list of ordering service nodes.

Returned: when state is present
Type: list
Elements: dict
name

The name of the ordering service node.

Type: str
Sample: Ordering Service_1
api_url

The URL for the API of the ordering service node.

Type: str
Sample: grpcs://orderingservice1-api.example.org:32000
operations_url

The URL for the operations service of the ordering service node.

Type: str
Sample: https://orderingservice1-operations.example.org:32000
grpcwp_url

The URL for the gRPC web proxy of the ordering service node.

Type: str
Sample: https://orderingservice1-grpcwebproxy.example.org:32000
msp_id

The MSP ID of the ordering service node.

Type: str
Sample: OrdererOrgMSP
pem

The TLS certificate chain for the ordering service node.

The TLS certificate chain is returned as a base64 encoded PEM.

Type: str
Sample: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...
tls_ca_root_cert

The TLS certificate chain for the ordering service node.

The TLS certificate chain is returned as a base64 encoded PEM.

Type: str
Sample: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...
tls_cert

The TLS certificate for the ordering service node.

The TLS certificate is returned as a base64 encoded PEM.

Type: str
Sample: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...
location

The location of the ordering service node.

Type: str
Sample: ibmcloud
system_channel_id

The name of the system channel for the ordering service node.

Type: str
Sample: testchainid
client_tls_cert

The client TLS certificate for the ordering service node.

The client TLS certificate is returned as a base64 encoded PEM.

Type: str
Sample: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...
server_tls_cert

The server TLS certificate for the ordering service node.

The server TLS certificate is returned as a base64 encoded PEM.

Type: str
Sample: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...
cluster_id

The unique ID of the ordering service cluster.

Type: str
Sample: abcdefgh
cluster_name

The name of the ordering service cluster.

Type: str
Sample: Ordering Service