Software Development Kit (SDK) and API Discussions

Contributing to netapp-lib python package


My team is starting a project using the python sdk and I found the netapp-lib pypi package is a slight improvement over the modules included in the manageability sdk lib files. However, there's some issues with it (like the fact that it depends on the six package but doesn't include it as a requirement so it's not installed) and we'd love to be able to contribute fixes for things like this.


In addition, it'd be nice to improve on the SDK as a whole. It's very light weight and weak as SDKs go. It offers handling the communications to the server but doesn't expose the concepts or resources from the netapp we would expect to be able to interact with through the sdk. Instead, we're expected know how to create xml documents used by the Zephyr API. This means anyone that uses this package or the SDK has to create their own client to expose the resource concepts (volumes, luns, igroups, lun mappings, etc). 


If the source for the above package can be shared as part of the NetApp github organization, the community would be able to sibmit pull requests with useful improvements on the package and reduce the need for users to recreate a client wrapper around it.





Certainly agree that the NMSDK could be improved.


Regarding your comment "we're expected know how to create xml documents used by the Zephyr API". I'm not sure if you are aware that there is utility available in the NMSDK called "ZExplore" located in the "zedi" folder? Based on that comment you might not be so i thought i'd mention it as an option for you if you're not aware of it.


ZExplore will enable you to browse the ZAPI's and create the XML for you. You can run the zexplore.jar or zexplore.exe depending on your development platform. You can also select python as language. EG












Select the ZAPI version in the top left then select "preferences\connect" to connect to your NetApp cluster




drag\drop the ZAPI list from the left navigation to the right and see the XML in the "Execute" tab. EG





You can then click on the develop tab and see the default phython code that has been created for you:



Hopefully that saves you time trying to figure out ZAPI\XML structure.


If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.