Skip to content

Commit

Permalink
fix indexing into addresses if its not set
Browse files Browse the repository at this point in the history
  • Loading branch information
dshuffma-ibm committed Sep 5, 2023
1 parent c444768 commit 56d86a4
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 4 deletions.
9 changes: 7 additions & 2 deletions packages/apollo/src/rest/ChannelApi.js
Original file line number Diff line number Diff line change
Expand Up @@ -709,7 +709,12 @@ class ChannelApi {
consenters.forEach(consenter => {
ordererAddresses.push(consenter.host + ':' + consenter.port);
});
node.values.OrdererAddresses.value.addresses = ordererAddresses;

// the "addresses" field is legacy for fabric, if its not already populated, don't bother updating it
// fabric will find orderer addresses in the "consenters" field
if (node.values.OrdererAddresses.value && node.values.OrdererAddresses.value.addresses) {
node.values.OrdererAddresses.value.addresses = ordererAddresses;
}
}

static getNodeOUIdentifier(certificate) {
Expand Down Expand Up @@ -1307,7 +1312,7 @@ class ChannelApi {
const port = parsedURL.port;

let consenterNodes = updated_json.channel_group.groups.Orderer.values.ConsensusType.value.metadata.consenters;
let ordererAddresses = updated_json.channel_group.values.OrdererAddresses.value.addresses;
let ordererAddresses = _.get(updated_json, 'channel_group.values.OrdererAddresses.value.addresses', []);

if (opts.mode === 'delete') {
ChannelApi.deleteConsenters(consenterNodes, ordererAddresses, host, port);
Expand Down
2 changes: 1 addition & 1 deletion packages/apollo/src/rest/OrdererRestApi.js
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ class OrdererRestApi {

static async modifyConsenter(options, channel_group, orderer) {
let consenterNode = channel_group.groups.Orderer.values.ConsensusType.value.metadata.consenters;
let ordererAddresses = channel_group.values.OrdererAddresses.value.addresses;
let ordererAddresses = _.get(channel_group, 'values.OrdererAddresses.value.addresses', []);

let parsedURL = urlParser.parse(options.consenter_url || options.api_url);
const host = parsedURL.hostname;
Expand Down
3 changes: 2 additions & 1 deletion packages/stitch/src/libs/config_block.ts
Original file line number Diff line number Diff line change
Expand Up @@ -707,7 +707,8 @@ const template = {
"mod_policy": "/Channel/Orderer/Admins",
"value": {

// we are leaving this blank so that fabric uses the addresses defined in each org's section
// we are leaving this blank so that fabric uses the addresses defined in each org's section consenter field
// legacy
// include port, no protocol
"addresses": []
},
Expand Down

0 comments on commit 56d86a4

Please sign in to comment.