Loading .gitignore +0 −1 Original line number Diff line number Diff line Loading @@ -193,4 +193,3 @@ libyang/ # Other logs **/logs/*.log.* deploy/tfs.sh +12 −4 Original line number Diff line number Diff line Loading @@ -220,8 +220,12 @@ else fi printf "\n" if [[ "$TFS_COMPONENTS" == *"telemetry"* ]]; then echo "Configuring Telemetry Service..." # Before deployment change the telemetry LOAD_BALANCER_IP sed -i "s|_LOAD_BALANCER_IP_|$LOAD_BALANCER_IP|g" manifests/telemetryservice.yaml fi for COMPONENT in $TFS_COMPONENTS; do echo "Processing '$COMPONENT' component..." Loading Loading @@ -605,8 +609,12 @@ if [[ "$TFS_COMPONENTS" == *"monitoring"* ]] && [[ "$TFS_COMPONENTS" == *"webui" printf "\n\n" fi if [[ "$TFS_COMPONENTS" == *"telemetry"* ]]; then echo "Deconfiguring Telemetry Service..." # Revert _LOAD_BALANCER_IP_ for the next deployment sed -i "s|$LOAD_BALANCER_IP|_LOAD_BALANCER_IP_|g" manifests/telemetryservice.yaml fi echo "Pruning Docker Images..." docker image prune --force Loading my_deploy.sh +1 −1 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" # Set the list of components, separated by spaces, you want to build images for, and deploy. export TFS_COMPONENTS="context device pathcomp service slice nbi webui" export TFS_COMPONENTS="context device pathcomp service nbi webui" # Uncomment to activate Monitoring (old) #export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" Loading proto/context.proto +53 −6 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package context; import "google/protobuf/any.proto"; import "acl.proto"; import "ip_link.proto"; import "kpi_sample_types.proto"; service ContextService { Loading Loading @@ -93,6 +94,10 @@ service ContextService { rpc DeleteOpticalLink (LinkId ) returns (Empty ) {} rpc GetOpticalLinkList (Empty ) returns (OpticalLinkList ) {} rpc GetOpticalBand (Empty ) returns (OpticalBandList) {} rpc SelectOpticalBand (OpticalBandId ) returns (OpticalBand) {} rpc DeleteServiceConfigRule(ServiceConfigRule) returns (Empty ) {} } Loading Loading @@ -246,7 +251,8 @@ enum DeviceDriverEnum { DEVICEDRIVER_MORPHEUS = 17; DEVICEDRIVER_RYU = 18; DEVICEDRIVER_GNMI_NOKIA_SRLINUX = 19; DRVICEDRIVER_NETCONF_DSCM = 20; DEVICEDRIVER_OPENROADM = 20; DRVICEDRIVER_NETCONF_DSCM = 21; } enum DeviceOperationalStatusEnum { Loading Loading @@ -348,6 +354,7 @@ enum ServiceTypeEnum { SERVICETYPE_L1NM = 8; SERVICETYPE_INT = 9; SERVICETYPE_ACL = 10; SERVICETYPE_IP_LINK = 11; } enum ServiceStatusEnum { Loading Loading @@ -561,11 +568,17 @@ message ConfigRule_ACL { acl.AclRuleSet rule_set = 2; } message ConfigRule_IP_LINK { EndPointId endpoint_id = 1; ip_link.IpLinkRuleSet rule_set = 2; } message ConfigRule { ConfigActionEnum action = 1; oneof config_rule { ConfigRule_Custom custom = 2; ConfigRule_ACL acl = 3; ConfigRule_IP_LINK ip_link = 4; } } Loading Loading @@ -688,6 +701,8 @@ message AuthenticationResult { bool authenticated = 2; } // ---------------- Experimental ------------------------ message OpticalConfigId { string opticalconfig_uuid = 1; Loading @@ -708,6 +723,8 @@ message OpticalConfigEvent { } // ---- Optical Link ---- message OpticalEndPointId { Loading @@ -723,6 +740,7 @@ message OpticalLinkList { message OpticalLinkDetails { float length = 1; string src_port = 2; string dst_port = 3; Loading @@ -732,6 +750,7 @@ message OpticalLinkDetails { map<string, int32> c_slots = 7; map<string, int32> l_slots = 8; map<string, int32> s_slots = 9; } message OpticalLink { Loading @@ -742,6 +761,34 @@ message OpticalLink { } message ChannelId { Uuid channel_uuid = 1; } message OpticalBandId { Uuid opticalband_uuid = 1; } message OpticalBand { OpticalBandId opticalband_id = 1 ; ConnectionId connection_id =2 ; ChannelId channel_id = 3; ServiceId service_id =4; oneof field { Service service =5 ; Connection connection =6 ; string channel = 7; } } message OpticalBandList { repeated OpticalBand opticalbands =1 ; } ////////////////// Config Rule Delete //////////// Loading proto/ip_link.proto 0 → 100644 +22 −0 Original line number Diff line number Diff line // Copyright 2022-2025 ETSI OSG/SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; package ip_link; message IpLinkRuleSet { string ip = 1; string mask = 3; string vlan = 4; } Loading
.gitignore +0 −1 Original line number Diff line number Diff line Loading @@ -193,4 +193,3 @@ libyang/ # Other logs **/logs/*.log.*
deploy/tfs.sh +12 −4 Original line number Diff line number Diff line Loading @@ -220,8 +220,12 @@ else fi printf "\n" if [[ "$TFS_COMPONENTS" == *"telemetry"* ]]; then echo "Configuring Telemetry Service..." # Before deployment change the telemetry LOAD_BALANCER_IP sed -i "s|_LOAD_BALANCER_IP_|$LOAD_BALANCER_IP|g" manifests/telemetryservice.yaml fi for COMPONENT in $TFS_COMPONENTS; do echo "Processing '$COMPONENT' component..." Loading Loading @@ -605,8 +609,12 @@ if [[ "$TFS_COMPONENTS" == *"monitoring"* ]] && [[ "$TFS_COMPONENTS" == *"webui" printf "\n\n" fi if [[ "$TFS_COMPONENTS" == *"telemetry"* ]]; then echo "Deconfiguring Telemetry Service..." # Revert _LOAD_BALANCER_IP_ for the next deployment sed -i "s|$LOAD_BALANCER_IP|_LOAD_BALANCER_IP_|g" manifests/telemetryservice.yaml fi echo "Pruning Docker Images..." docker image prune --force Loading
my_deploy.sh +1 −1 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ export TFS_REGISTRY_IMAGES="http://localhost:32000/tfs/" # Set the list of components, separated by spaces, you want to build images for, and deploy. export TFS_COMPONENTS="context device pathcomp service slice nbi webui" export TFS_COMPONENTS="context device pathcomp service nbi webui" # Uncomment to activate Monitoring (old) #export TFS_COMPONENTS="${TFS_COMPONENTS} monitoring" Loading
proto/context.proto +53 −6 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package context; import "google/protobuf/any.proto"; import "acl.proto"; import "ip_link.proto"; import "kpi_sample_types.proto"; service ContextService { Loading Loading @@ -93,6 +94,10 @@ service ContextService { rpc DeleteOpticalLink (LinkId ) returns (Empty ) {} rpc GetOpticalLinkList (Empty ) returns (OpticalLinkList ) {} rpc GetOpticalBand (Empty ) returns (OpticalBandList) {} rpc SelectOpticalBand (OpticalBandId ) returns (OpticalBand) {} rpc DeleteServiceConfigRule(ServiceConfigRule) returns (Empty ) {} } Loading Loading @@ -246,7 +251,8 @@ enum DeviceDriverEnum { DEVICEDRIVER_MORPHEUS = 17; DEVICEDRIVER_RYU = 18; DEVICEDRIVER_GNMI_NOKIA_SRLINUX = 19; DRVICEDRIVER_NETCONF_DSCM = 20; DEVICEDRIVER_OPENROADM = 20; DRVICEDRIVER_NETCONF_DSCM = 21; } enum DeviceOperationalStatusEnum { Loading Loading @@ -348,6 +354,7 @@ enum ServiceTypeEnum { SERVICETYPE_L1NM = 8; SERVICETYPE_INT = 9; SERVICETYPE_ACL = 10; SERVICETYPE_IP_LINK = 11; } enum ServiceStatusEnum { Loading Loading @@ -561,11 +568,17 @@ message ConfigRule_ACL { acl.AclRuleSet rule_set = 2; } message ConfigRule_IP_LINK { EndPointId endpoint_id = 1; ip_link.IpLinkRuleSet rule_set = 2; } message ConfigRule { ConfigActionEnum action = 1; oneof config_rule { ConfigRule_Custom custom = 2; ConfigRule_ACL acl = 3; ConfigRule_IP_LINK ip_link = 4; } } Loading Loading @@ -688,6 +701,8 @@ message AuthenticationResult { bool authenticated = 2; } // ---------------- Experimental ------------------------ message OpticalConfigId { string opticalconfig_uuid = 1; Loading @@ -708,6 +723,8 @@ message OpticalConfigEvent { } // ---- Optical Link ---- message OpticalEndPointId { Loading @@ -723,6 +740,7 @@ message OpticalLinkList { message OpticalLinkDetails { float length = 1; string src_port = 2; string dst_port = 3; Loading @@ -732,6 +750,7 @@ message OpticalLinkDetails { map<string, int32> c_slots = 7; map<string, int32> l_slots = 8; map<string, int32> s_slots = 9; } message OpticalLink { Loading @@ -742,6 +761,34 @@ message OpticalLink { } message ChannelId { Uuid channel_uuid = 1; } message OpticalBandId { Uuid opticalband_uuid = 1; } message OpticalBand { OpticalBandId opticalband_id = 1 ; ConnectionId connection_id =2 ; ChannelId channel_id = 3; ServiceId service_id =4; oneof field { Service service =5 ; Connection connection =6 ; string channel = 7; } } message OpticalBandList { repeated OpticalBand opticalbands =1 ; } ////////////////// Config Rule Delete //////////// Loading
proto/ip_link.proto 0 → 100644 +22 −0 Original line number Diff line number Diff line // Copyright 2022-2025 ETSI OSG/SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; package ip_link; message IpLinkRuleSet { string ip = 1; string mask = 3; string vlan = 4; }