default_frameworkconfiguration = {"Fabric": {"Edition": "STARTER"}} default_votingpolicy = { "ApprovalThresholdPolicy": { "ThresholdPercentage": 50, "ProposalDurationInHours": 24, "ThresholdComparator": "GREATER_THAN_OR_EQUAL_TO", } } default_memberconfiguration = { "Name": "testmember1", "Description": "Test Member 1", "FrameworkConfiguration": { "Fabric": {"AdminUsername": "admin", "AdminPassword": "Admin12345"} }, "LogPublishingConfiguration": { "Fabric": {"CaLogs": {"Cloudwatch": {"Enabled": False}}} }, } default_policy_actions = {"Invitations": [{"Principal": "123456789012"}]} multiple_policy_actions = { "Invitations": [{"Principal": "123456789012"}, {"Principal": "123456789013"}] } default_nodeconfiguration = { "InstanceType": "bc.t3.small", "AvailabilityZone": "us-east-1a", "LogPublishingConfiguration": { "Fabric": { "ChaincodeLogs": {"Cloudwatch": {"Enabled": False}}, "PeerLogs": {"Cloudwatch": {"Enabled": False}}, } }, } def member_id_exist_in_list(members, memberid): return any([member["Id"] == memberid for member in members]) def create_member_configuration( name, adminuser, adminpass, cloudwatchenabled, description=None ): d = { "Name": name, "FrameworkConfiguration": { "Fabric": {"AdminUsername": adminuser, "AdminPassword": adminpass} }, "LogPublishingConfiguration": { "Fabric": {"CaLogs": {"Cloudwatch": {"Enabled": cloudwatchenabled}}} }, } if description is not None: d["Description"] = description return d def select_invitation_id_for_network(invitations, networkid, status=None): # Get invitations based on network and maybe status invitationsfornetwork = [] for invitation in invitations: if invitation["NetworkSummary"]["Id"] == networkid: if status is None or invitation["Status"] == status: invitationsfornetwork.append(invitation["InvitationId"]) return invitationsfornetwork def node_id_exist_in_list(nodes, nodeid): return any([node["Id"] == nodeid for node in nodes])