Update the Netconf custom rpc as follows:
1) Create a message/field YANG reference. This is used to keep the
XML tags in the same order as the fields appear in the YANG schema.
This applies only for custom RPCs (one of Netconf twist)
2) Annotate the proto RPCs with custom annotations which are used
when constructing an XML response
Change-Id: I07a8a3f2a44b7081c78e00dab05734a7c6b0a358
diff --git a/netconf/protos/Makefile b/netconf/protos/Makefile
index 94bfaab..98ac79a 100644
--- a/netconf/protos/Makefile
+++ b/netconf/protos/Makefile
@@ -27,7 +27,7 @@
PROTOC_PREFIX := /usr/local
PROTOC_LIBDIR := $(PROTOC_PREFIX)/lib
-build: $(PROTO_PB2_FILES) copyfiles
+build: copyprotos $(PROTO_PB2_FILES) copypb2files
%_pb2.py: %.proto Makefile
@echo "Building protocol buffer artifacts from $<"
@@ -43,16 +43,22 @@
TARGET_YANG_OPTION_DIR := $(VOLTHA_BASE)/netconf/protoc_plugins
YANG_OPTION_FILE := yang_options_pb2.py
+YANG_PROTO_FILE := yang_options.proto
+SCHEMA_PROTO_FILE := schema.proto
-copyfiles:
+copyprotos:
+ cp $(SOURCE_PROTO_DIR)/$(SCHEMA_PROTO_FILE) $(TARGET_PROTO_DIR)
+ cp $(SOURCE_PROTO_DIR)/$(YANG_PROTO_FILE) $(TARGET_PROTO_DIR)
+
+copypb2files:
rsync -av --include '*/' --exclude='third_party/__init__.py' --include '*.py' --exclude='*' $(SOURCE_PROTO_DIR)/ $(TARGET_PROTO_DIR)
cp $(SOURCE_PROTO_DIR)/$(YANG_OPTION_FILE) $(TARGET_YANG_OPTION_DIR)
clean:
rm -f $(PROTO_PB2_FILES) $(PROTO_DESC_FILES)
- rm $(TARGET_YANG_OPTION_DIR)/$(YANG_OPTION_FILE)
- rm $(TARGET_PROTO_DIR)/*.py
- rm $(TARGET_PROTO_DIR)/*.pyc
-
+ rm -f $(TARGET_YANG_OPTION_DIR)/$(YANG_OPTION_FILE)
+ rm -f $(TARGET_PROTO_DIR)/*.py
+ rm -f $(TARGET_PROTO_DIR)/*.pyc
+ rm -f $(TARGET_PROTO_DIR)/*.proto