peridot/ci/istio/envoyfilter.libsonnet

29 lines
764 B
Plaintext

local base = import 'ci/istio/base.libsonnet';
{
FILTER_TYPE_CUSTOM: 'custom',
FILTER_TYPE_REDIRECT: 'redirect',
MATCH_TYPE_RESFDEPLOY: 'RESFDEPLOY',
MATCH_TYPE_ALL: 'all',
envoy_filter(info)::
local filterType = info.type;
local matchType = if filterType != $.FILTER_TYPE_CUSTOM then info.matchType;
local envoyFilterInfo = {
kind: base.KIND_ENVOYFILTER,
metadata: {
name: info.name,
namespace: 'istio-system',
},
spec: if filterType == $.FILTER_TYPE_CUSTOM then info.filter else {
workloadSelector: if matchType == $.MATCH_TYPE_ALL then {}
else if matchType == $.MATCH_TYPE_RESFDEPLOY then {
}
else non_existing_value,
},
};
base(pubSubTopicInfo),
}