This commit consists of:
1) Dockerizing the netconf server
2) Update proto2yang to support module imports
3) Provide a set of yang modules derived from the proto files in voltha.
These files as well as the slight mmodifications to the proto files are
provided in the experiments/netconf/proto2yang directory
4) Code to automatically pull proto files from voltha into the netconf server,
compiles them and produce the yang equivalent files.
5) Add a getvoltha netconf API to provide voltha state information (basic at
this time). There is potential to make this generic once we experiment
with additional APIs
Change-Id: I94f3a1f871b8025ad675d5f9b9b626d1be8b8d36
diff --git a/experiments/netconf/proto2yang/ietf-common.yang b/experiments/netconf/proto2yang/ietf-common.yang
new file mode 100644
index 0000000..b2f6fab
--- /dev/null
+++ b/experiments/netconf/proto2yang/ietf-common.yang
@@ -0,0 +1,111 @@
+
+module ietf-common {
+
+
+ namespace "urn:opencord:params:xml:ns:voltha:ietf-common";
+ prefix common;
+
+
+ organization "CORD";
+ contact
+ " Any name";
+
+ description
+ "";
+
+ revision "2016-11-15" {
+ description "Initial revision.";
+ reference "reference";
+ }
+
+ typedef LogLevel {
+ type enumeration {
+ enum DEBUG {
+ description "";
+ }
+ enum INFO {
+ description "";
+ }
+ enum WARNING {
+ description "";
+ }
+ enum ERROR {
+ description "";
+ }
+ enum CRITICAL {
+ description "";
+ }
+ }
+ description
+ "Logging verbosity level";
+ }
+ typedef AdminState {
+ type enumeration {
+ enum AS_UNKNOWN {
+ description "";
+ }
+ enum AS_PREPROVISIONED {
+ description "";
+ }
+ enum AS_ENABLED {
+ description "";
+ }
+ enum AS_DISABLED {
+ description "";
+ }
+ }
+ description
+ "Administrative State";
+ }
+ typedef OperStatus {
+ type enumeration {
+ enum OS_UNKNOWN {
+ description "";
+ }
+ enum OS_DISCOVERED {
+ description "";
+ }
+ enum OS_ACTIVATING {
+ description "";
+ }
+ enum OS_TESTING {
+ description "";
+ }
+ enum OS_ACTIVE {
+ description "";
+ }
+ enum OS_FAILED {
+ description "";
+ }
+ }
+ description
+ "Operational Status";
+ }
+ typedef ConnectStatus {
+ type enumeration {
+ enum CS_UNKNOWN {
+ description "";
+ }
+ enum CS_UNREACHABLE {
+ description "";
+ }
+ enum CS_REACHABLE {
+ description "";
+ }
+ }
+ description
+ "Connectivity Status";
+ }
+
+ grouping ID {
+ description
+ "Convey a resource identifier";
+ leaf id {
+ type string;
+ description
+ "";
+ }
+
+ }
+
+}
\ No newline at end of file