36 lines
803 B
JavaScript
36 lines
803 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
export const createPolicies = function (item) {
|
|
return item.Policies.map(function (item) {
|
|
return {
|
|
template: '',
|
|
...item,
|
|
};
|
|
})
|
|
.concat(
|
|
item.ServiceIdentities.map(function (item) {
|
|
const policy = {
|
|
template: 'service-identity',
|
|
Name: item.ServiceName,
|
|
};
|
|
if (typeof item.Datacenters !== 'undefined') {
|
|
policy.Datacenters = item.Datacenters;
|
|
}
|
|
return policy;
|
|
})
|
|
)
|
|
.concat(
|
|
item.NodeIdentities.map(function (item) {
|
|
const policy = {
|
|
template: 'node-identity',
|
|
Name: item.NodeName,
|
|
Datacenter: item.Datacenter,
|
|
};
|
|
return policy;
|
|
})
|
|
);
|
|
};
|