summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
f5b69d5)
Issue-ID: SIM-82
Change-Id: I9371b3df894c0e7ef2dbfd5e4d9a8bdb1823cf1b
Signed-off-by: Alex Stancu <alexandru.stancu@highstreet-technologies.com>
16 files changed:
| +--rw controller-protocol? enumeration
| +--rw controller-ip? inet:ip-address
| +--rw controller-port? inet:port-number
| +--rw controller-protocol? enumeration
| +--rw controller-ip? inet:ip-address
| +--rw controller-port? inet:port-number
+ | +--rw controller-netconf-call-home-ip? inet:ip-address
| +--rw controller-netconf-call-home-port? inet:port-number
| +--rw controller-username? string
| +--rw controller-password? string
| +--rw controller-netconf-call-home-port? inet:port-number
| +--rw controller-username? string
| +--rw controller-password? string
- **controller-protocol** - SDN controller protocol (http/https)
- **controller-ip** - the IP address of the ODL based SDN controller where the simulated devices can be mounted. Both IPv4 and IPv6 are supported
- **controller-port** - the port of the ODL based SDN controller
- **controller-protocol** - SDN controller protocol (http/https)
- **controller-ip** - the IP address of the ODL based SDN controller where the simulated devices can be mounted. Both IPv4 and IPv6 are supported
- **controller-port** - the port of the ODL based SDN controller
+ - **controller-netconf-call-home-ip** - the IP address of the ODL based SDN controller where the simulated devices can Call Home via the NETCONF Call Home feature.
- **controller-netconf-call-home-port** - the NETCONF Call Home port of the ODL based SDN controller
- **controller-username** - the username to be used when connecting to the ODL based SDN controller
- **controller-password** - the password to be used when connecting to the ODL based SDN controller
- **controller-netconf-call-home-port** - the NETCONF Call Home port of the ODL based SDN controller
- **controller-username** - the username to be used when connecting to the ODL based SDN controller
- **controller-password** - the password to be used when connecting to the ODL based SDN controller
+--rw sdn-controller
| +--rw controller-ip? inet:ip-address
| +--rw controller-port? inet:port-number
+--rw sdn-controller
| +--rw controller-ip? inet:ip-address
| +--rw controller-port? inet:port-number
+ | +--rw controller-netconf-call-home-ip? inet:ip-address
| +--rw controller-netconf-call-home-port? inet:port-number
| +--rw controller-username? string
| +--rw controller-password? string
| +--rw controller-netconf-call-home-port? inet:port-number
| +--rw controller-username? string
| +--rw controller-password? string
- **SDN_CONTROLLER_PROTOCOL** - protocol used for communication with the SDN controller (http or https, defaults to https)
- **SDN_CONTROLLER_IP** - SDN controller IP address
- **SDN_CONTROLLER_PORT** - SDN controller port
- **SDN_CONTROLLER_PROTOCOL** - protocol used for communication with the SDN controller (http or https, defaults to https)
- **SDN_CONTROLLER_IP** - SDN controller IP address
- **SDN_CONTROLLER_PORT** - SDN controller port
+- **SDN_CONTROLLER_CALLHOME_IP** - SDN controller IP address for NETCONF call-home
- **SDN_CONTROLLER_CALLHOME_PORT** - SDN controller port for NETCONF call-home
- **SDN_CONTROLLER_USERNAME** - SDN controller username
- **SDN_CONTROLLER_PASSWORD** - SDN controller password
- **SDN_CONTROLLER_CALLHOME_PORT** - SDN controller port for NETCONF call-home
- **SDN_CONTROLLER_USERNAME** - SDN controller username
- **SDN_CONTROLLER_PASSWORD** - SDN controller password
DOCKER_REPO=o-ran-sc/
NTS_MANAGER_PORT=8300
DOCKER_REPO=o-ran-sc/
NTS_MANAGER_PORT=8300
IPv6_ENABLED=false
SSH_CONNECTIONS=1
IPv6_ENABLED=false
SSH_CONNECTIONS=1
NTS_HOST_TRANSFER_SFTP_BASE_PORT=2000
NTS_NF_MOUNT_POINT_ADDRESSING_METHOD=host-mapping
NTS_HOST_TRANSFER_SFTP_BASE_PORT=2000
NTS_NF_MOUNT_POINT_ADDRESSING_METHOD=host-mapping
-NTS_NF_STANDALONE_START_FEATURES="datastore-populate ves-heartbeat ves-file-ready ves-pnf-registration web-cut-through"
+NTS_NF_STANDALONE_START_FEATURES="datastore-populate ves-heartbeat ves-file-ready ves-pnf-registration web-cut-through netconf-call-home"
SDN_CONTROLLER_PROTOCOL=http
SDN_CONTROLLER_IP=172.40.0.21
SDN_CONTROLLER_PORT=8181
SDN_CONTROLLER_PROTOCOL=http
SDN_CONTROLLER_IP=172.40.0.21
SDN_CONTROLLER_PORT=8181
+SDN_CONTROLLER_CALLHOME_IP=172.40.0.22
SDN_CONTROLLER_CALLHOME_PORT=6666
SDN_CONTROLLER_USERNAME=admin
SDN_CONTROLLER_PASSWORD=admin
SDN_CONTROLLER_CALLHOME_PORT=6666
SDN_CONTROLLER_USERNAME=admin
SDN_CONTROLLER_PASSWORD=admin
description
"This module contains common yang definitions YANG definitions for the Network Topology Simulator.";
description
"This module contains common yang definitions YANG definitions for the Network Topology Simulator.";
+ revision 2021-10-29 {
+ description
+ "Added separete SDN Controller IP address for NETCONF Call Home.";
+ reference
+ "O-RAN-SC SIM project";
+ }
revision 2021-06-08 {
description
"Moved NTS_PROTOCOL_TYPE_BASE identities from nts-manager.";
revision 2021-06-08 {
description
"Moved NTS_PROTOCOL_TYPE_BASE identities from nts-manager.";
description
"The port exposed by the SDN Controller.";
}
description
"The port exposed by the SDN Controller.";
}
+ leaf controller-netconf-call-home-ip {
+ type inet:host;
+ description
+ "The IP address of the SDN Controller for the NETCONF Call Home connection.";
+ }
leaf controller-netconf-call-home-port {
type inet:port-number;
description
leaf controller-netconf-call-home-port {
type inet:port-number;
description
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
-tag: 1.3.6
\ No newline at end of file
+tag: 1.3.7
\ No newline at end of file
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
+ SDN_CONTROLLER_CALLHOME_IP: ${SDN_CONTROLLER_CALLHOME_IP}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
+ SDN_CONTROLLER_CALLHOME_IP: ${SDN_CONTROLLER_CALLHOME_IP}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
+ SDN_CONTROLLER_CALLHOME_IP: ${SDN_CONTROLLER_CALLHOME_IP}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
framework_environment.sdn_controller.protocol = getenv(ENV_VAR_SDN_CONTROLLER_IP) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_PROTOCOL)) : strdup("https");
framework_environment.sdn_controller.ip = getenv(ENV_VAR_SDN_CONTROLLER_IP) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_IP)) : strdup("127.0.0.1");
framework_environment.sdn_controller.port = get_int_from_string_with_default(getenv(ENV_VAR_SDN_CONTROLLER_PORT), 8181);
framework_environment.sdn_controller.protocol = getenv(ENV_VAR_SDN_CONTROLLER_IP) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_PROTOCOL)) : strdup("https");
framework_environment.sdn_controller.ip = getenv(ENV_VAR_SDN_CONTROLLER_IP) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_IP)) : strdup("127.0.0.1");
framework_environment.sdn_controller.port = get_int_from_string_with_default(getenv(ENV_VAR_SDN_CONTROLLER_PORT), 8181);
+ framework_environment.sdn_controller.callhome_ip = getenv(ENV_VAR_SDN_CONTROLLER_CALLHOME_IP) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_CALLHOME_IP)) : strdup("127.0.0.1");
framework_environment.sdn_controller.callhome_port = get_int_from_string_with_default(getenv(ENV_VAR_SDN_CONTROLLER_CALLHOME_PORT), 6666);
framework_environment.sdn_controller.username = getenv(ENV_VAR_SDN_CONTROLLER_USERNAME) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_USERNAME)) : strdup("admin");
framework_environment.sdn_controller.password = getenv(ENV_VAR_SDN_CONTROLLER_PASSWORD) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_PASSWORD)) : strdup("admin");
framework_environment.sdn_controller.callhome_port = get_int_from_string_with_default(getenv(ENV_VAR_SDN_CONTROLLER_CALLHOME_PORT), 6666);
framework_environment.sdn_controller.username = getenv(ENV_VAR_SDN_CONTROLLER_USERNAME) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_USERNAME)) : strdup("admin");
framework_environment.sdn_controller.password = getenv(ENV_VAR_SDN_CONTROLLER_PASSWORD) ? strdup(getenv(ENV_VAR_SDN_CONTROLLER_PASSWORD)) : strdup("admin");
log_add_verbose(2, "[framework-env] sdn_controller.protocol = %s\n", framework_environment.sdn_controller.protocol);
log_add_verbose(2, "[framework-env] sdn_controller.ip = %s\n", framework_environment.sdn_controller.ip);
log_add_verbose(2, "[framework-env] sdn_controller.port = %d\n", framework_environment.sdn_controller.port);
log_add_verbose(2, "[framework-env] sdn_controller.protocol = %s\n", framework_environment.sdn_controller.protocol);
log_add_verbose(2, "[framework-env] sdn_controller.ip = %s\n", framework_environment.sdn_controller.ip);
log_add_verbose(2, "[framework-env] sdn_controller.port = %d\n", framework_environment.sdn_controller.port);
+ log_add_verbose(2, "[framework-env] sdn_controller.callhome_ip = %s\n", framework_environment.sdn_controller.callhome_ip);
log_add_verbose(2, "[framework-env] sdn_controller.callhome_port = %d\n", framework_environment.sdn_controller.callhome_port);
log_add_verbose(2, "[framework-env] sdn_controller.username = %s\n", framework_environment.sdn_controller.username);
log_add_verbose(2, "[framework-env] sdn_controller.password = %s\n", framework_environment.sdn_controller.password);
log_add_verbose(2, "[framework-env] sdn_controller.callhome_port = %d\n", framework_environment.sdn_controller.callhome_port);
log_add_verbose(2, "[framework-env] sdn_controller.username = %s\n", framework_environment.sdn_controller.username);
log_add_verbose(2, "[framework-env] sdn_controller.password = %s\n", framework_environment.sdn_controller.password);
free(framework_environment.host.ip);
free(framework_environment.sdn_controller.protocol);
free(framework_environment.sdn_controller.ip);
free(framework_environment.host.ip);
free(framework_environment.sdn_controller.protocol);
free(framework_environment.sdn_controller.ip);
+ free(framework_environment.sdn_controller.callhome_ip);
free(framework_environment.sdn_controller.username);
free(framework_environment.sdn_controller.password);
free(framework_environment.ves_endpoint.common_header_version);
free(framework_environment.sdn_controller.username);
free(framework_environment.sdn_controller.password);
free(framework_environment.ves_endpoint.common_header_version);
#define ENV_VAR_SDN_CONTROLLER_PROTOCOL "SDN_CONTROLLER_PROTOCOL"
#define ENV_VAR_SDN_CONTROLLER_IP "SDN_CONTROLLER_IP"
#define ENV_VAR_SDN_CONTROLLER_PORT "SDN_CONTROLLER_PORT"
#define ENV_VAR_SDN_CONTROLLER_PROTOCOL "SDN_CONTROLLER_PROTOCOL"
#define ENV_VAR_SDN_CONTROLLER_IP "SDN_CONTROLLER_IP"
#define ENV_VAR_SDN_CONTROLLER_PORT "SDN_CONTROLLER_PORT"
+#define ENV_VAR_SDN_CONTROLLER_CALLHOME_IP "SDN_CONTROLLER_CALLHOME_IP"
#define ENV_VAR_SDN_CONTROLLER_CALLHOME_PORT "SDN_CONTROLLER_CALLHOME_PORT"
#define ENV_VAR_SDN_CONTROLLER_USERNAME "SDN_CONTROLLER_USERNAME"
#define ENV_VAR_SDN_CONTROLLER_PASSWORD "SDN_CONTROLLER_PASSWORD"
#define ENV_VAR_SDN_CONTROLLER_CALLHOME_PORT "SDN_CONTROLLER_CALLHOME_PORT"
#define ENV_VAR_SDN_CONTROLLER_USERNAME "SDN_CONTROLLER_USERNAME"
#define ENV_VAR_SDN_CONTROLLER_PASSWORD "SDN_CONTROLLER_PASSWORD"
char *protocol;
char *ip;
uint16_t port;
char *protocol;
char *ip;
uint16_t port;
uint16_t callhome_port;
char *username;
char *password;
uint16_t callhome_port;
char *username;
char *password;
- char *controller_ip = strdup(controller->ip);
+ char *controller_ip = strdup(controller->nc_callhome_ip);
uint16_t controller_callhome_port = controller->nc_callhome_port;
controller_details_free(controller);
uint16_t controller_callhome_port = controller->nc_callhome_port;
controller_details_free(controller);
- char *controller_ip = strdup(controller->ip);
+ char *controller_ip = strdup(controller->nc_callhome_ip);
uint16_t controller_callhome_port = controller->nc_callhome_port;
controller_details_free(controller);
uint16_t controller_callhome_port = controller->nc_callhome_port;
controller_details_free(controller);
ret->protocol = 0;
ret->ip = 0;
ret->port = 0;
ret->protocol = 0;
ret->ip = 0;
ret->port = 0;
+ ret->nc_callhome_ip = 0;
ret->nc_callhome_port = 0;
ret->auth_method = 0;
ret->username = 0;
ret->nc_callhome_port = 0;
ret->auth_method = 0;
ret->username = 0;
else if(strcmp(chd->schema->name, "controller-port") == 0) {
ret->port = ((const struct lyd_node_leaf_list *)chd)->value.uint16;
}
else if(strcmp(chd->schema->name, "controller-port") == 0) {
ret->port = ((const struct lyd_node_leaf_list *)chd)->value.uint16;
}
+ else if(strcmp(chd->schema->name, "controller-netconf-call-home-ip") == 0) {
+ ret->nc_callhome_ip = strdup(val);
+ }
else if(strcmp(chd->schema->name, "controller-netconf-call-home-port") == 0) {
ret->nc_callhome_port = ((const struct lyd_node_leaf_list *)chd)->value.uint16;
}
else if(strcmp(chd->schema->name, "controller-netconf-call-home-port") == 0) {
ret->nc_callhome_port = ((const struct lyd_node_leaf_list *)chd)->value.uint16;
}
- if((ret->protocol == 0) || (ret->ip == 0) || (ret->auth_method == 0) || (ret->username == 0) || (ret->password == 0) || (ret->base_url == 0)) {
+ if((ret->protocol == 0) || (ret->ip == 0) || (ret->nc_callhome_ip == 0) || (ret->auth_method == 0) || (ret->username == 0) || (ret->password == 0) || (ret->base_url == 0)) {
free(ret->protocol);
free(ret->ip);
free(ret->protocol);
free(ret->ip);
+ free(ret->nc_callhome_ip);
free(ret->auth_method);
free(ret->username);
free(ret->password);
free(ret->auth_method);
free(ret->username);
free(ret->password);
free(instance->protocol);
free(instance->ip);
free(instance->protocol);
free(instance->ip);
+ free(instance->nc_callhome_ip);
free(instance->base_url);
free(instance->auth_method);
free(instance->username);
free(instance->base_url);
free(instance->auth_method);
free(instance->username);
+ if(strlen(framework_environment.sdn_controller.callhome_ip)) {
+ if(manager) {
+ rc = sr_set_item_str(current_session, NTS_MANAGER_SDN_CONTROLLER_CONFIG_XPATH"/controller-netconf-call-home-ip", (const char*)framework_environment.sdn_controller.callhome_ip, 0, 0);
+ }
+ else {
+ rc = sr_set_item_str(current_session, NTS_NF_SDN_CONTROLLER_CONFIG_XPATH"/controller-netconf-call-home-ip", (const char*)framework_environment.sdn_controller.callhome_ip, 0, 0);
+ }
+ if(rc != SR_ERR_OK) {
+ log_error("sr_set_item_str failed\n");
+ return NTS_ERR_FAILED;
+ }
+ }
+
sprintf(int_to_str, "%d", framework_environment.sdn_controller.callhome_port);
if(manager) {
rc = sr_set_item_str(current_session, NTS_MANAGER_SDN_CONTROLLER_CONFIG_XPATH"/controller-netconf-call-home-port", (const char*)int_to_str, 0, 0);
sprintf(int_to_str, "%d", framework_environment.sdn_controller.callhome_port);
if(manager) {
rc = sr_set_item_str(current_session, NTS_MANAGER_SDN_CONTROLLER_CONFIG_XPATH"/controller-netconf-call-home-port", (const char*)int_to_str, 0, 0);
typedef struct {
char *ip;
uint16_t port;
typedef struct {
char *ip;
uint16_t port;
uint16_t nc_callhome_port;
char *username;
char *password;
uint16_t nc_callhome_port;
char *username;
char *password;