Unfortunately, you cannot process a Python list (or Java) in a template variable - $ACL_RULES.
Recall that in the interface from code (Python, Java) the variable passed is a simple _STRING_.. not a data structure of any kind. Since you can use various languages for your create_cb/action_cb it would require an interesting design to handle list structures from each of the languages to input into variable.
As you point out, if the acl_rules are a list in the service yang, the template processing can take knowledge of it being a list and loop on the available entries in the list.
Generally, you would loop in your python code and apply the same template with the $ACL_RULE set to a single item in the list.
It is possible from your python code, although may not be worth the work, to write your ACL_RULES into a list in CDB, and then have your template point to the new list (instead of the list in the service) or change context at that point in the template to point at your new list. Then you could use the same for-each for that list.
Step 1 : configure debug server in Pycharm
Go to Run => Edit Configurations, click on "+" => Python Remote Debug
In "Local Host name " enter ip or host name of your local machine. Enter a available port in "Port :"
Give a name, here it's "NSO debug...
Abstract: RFM services can be hard to implement. Especially the lifecycle management of the delete case of the service can be a challenge. Nano Services uses an executable plan and kickers to supports the full lifecycle of a RFM service.
Previous instalments of this blog post series have covered requirements (parts I and II) and baselining, profiling/optimising and monitoring (part III). In this final part we will discuss some architectures you may want to consider as your system grows in...
In part I and part II of this blog, we have been discussing scale and performance requirements. In this third instalment we are going to look at baselining, profiling, optimising and monitoring scale and performance.
Baselining Scale and Perfo...
In part I of our Unlocking Performance in your NSO System blog we started discussing scale and performance requirements, including
Size of device configuration
Number of service instances
Frequency of operation