Thanks, Bryan. Part of me was afraid someone was going to point out this (rather obvious) position. The "afraid" comes only from my perspective of not knowing how to go about doing this correctly (i.e. upstream) and lack of overall knowledge of the OpenStack client itself that makes me feel like I would not know where to start.
Having said that, I think I can take your point of vetting any shortcomings in an OPNFV repo and then proposing them upstream. I am just not sure if I have the time or resources to get involved in the overall "is Heat part of the OpenStack client" discussion :( What would be the next steps in moving towards this goal? Continue with the common OpenStack (and extras like Heat) library in OPNFV and then engage upstream? Regards, Mark Mark Beierl Advisory Solutions Architect Dell EMC | Office of the CTO mobile +1 613 314 8106<tel:1-613-314-8106> mark.bei...@dell.com<mailto:mark.bei...@dell.com> On Nov 16, 2016, at 20:32, SULLIVAN, BRYAN L <bs3...@att.com<mailto:bs3...@att.com>> wrote: I would say that: 1) We should strive to directly leverage upstream clients directly, and specifically the python-openstackclient in all cases where it serves our need for the specific OPNFV system version. a. Exceptions do exist, but we will not help promote removal of those exceptions by creating a shim client that shields us from the pain of the gaps, and the OpenStack python-openstackclient project from the need to address those gaps. b. After all, we are here to identity and address-upstream issues with the upstream projects. 2) We should not own code intended as a long-term shim of an upstream project, even one that ostensibly simplifies how test code interacts with the openstack clients (the python-openstackclient or any of the others). a. An experimental shim might help the upstream teams to understand and address gaps/issues we have, but would have little real, long-term value to OPNFV beyond that. b. One key reason is any simplification/abstraction is likely to mask things that some project needs, and then we are right back to an exception/kludge situation, with the exception that to address the issue we now have to issue patches against another (and not even upstream) project. 3) We should document all issues with the plan-of-record of the OpenStack community to converge on the python-openstackclient, and put any efforts to address them directly upstream, not in OPNFV. a. For now we have plenty of workaround approaches to those issues, e.g. use a different client/version. b. The implications/limitations of those workarounds should also be documented so we can decide which really are sufferable until the upstream client issues are addressed. Thanks, Bryan Sullivan | AT&T From: opnfv-tech-discuss-boun...@lists.opnfv.org<mailto:opnfv-tech-discuss-boun...@lists.opnfv.org> [mailto:opnfv-tech-discuss-boun...@lists.opnfv.org] On Behalf Of yaohelan Sent: Monday, November 14, 2016 7:32 PM To: Jose Lausuch <jose.laus...@ericsson.com<mailto:jose.laus...@ericsson.com>>; Beierl, Mark <mark.bei...@dell.com<mailto:mark.bei...@dell.com>> Cc: opnfv-tech-discuss@lists.opnfv.org<mailto:opnfv-tech-discuss@lists.opnfv.org> Subject: [opnfv-tech-discuss] 答复: [functest] [yardstick] Client version can't support Newton - solution proposal Hi all, Here is the drafted proposal for the Newton support. Your feedback is appreciated. If you have other solution, feel free to come up with. Once we know every detail of each solution, we may vote for which one to use. A common OpenStack utility library/module is needed to handle all operations against OpenStack, and it will be used by projects including Yardstick, Functest, Storperf, Bottleneck and other projects that have the requirements to interact with OpenStack. Benefit: Only OpenStack utility library/module is required to be updated when there is any request for upgrading/change. Effort will be saved for projects and they can focus on the main business. In real world, all projects are maintaining their own repository for OpenStack operation. The effort to upgrade the process will not be shared among projects. Area to Investigate Look at the existing codes and come up with a solution to put them together. Two possible solutions to deal with client version change for different OpenStack Idea 1: Leverage OpenStackClient[1] to take care of different OpenStack version Reason: OpenStack should be able to handle the version switching and support the backward compatibility. It is quite challengeable for downstream projects to take care of the version with limited knowledge. Areas to investigate 1. Identify the all scenarios that we are leveraging clients 2. Test with OpenStackClient to make sure all scenarios can be fulfilled Risks/Challenges 1. Functest and Yardstick are mainly using components including Nova, Keystone, Neutron, Heat, etc. OpenStackClient provides a shell.py to wrapping the call into CLI and it seems that this way provides almost every possible alternatives to our currently implementation. However, if we wants to import openstackclient as module in the code, heat might be lost and we have to implement the logic to support calling different version of heatclient. 2. The learning curve might be long as it requires developers to map all of current implementation to openstackclient. Idea 2: Design the logic to handle different clients Areas to investigate 1. Come up with the client list for different OpenStack version 2. Put the client requirements into separate configuration per OpenStack version 3. Dynamically decide which configuration to use Risks/Challenges 1. A wise and general architecture is required as more OpenStack upgrades are expected [1] https://github.com/openstack/python-openstackclient 发件人: Jose Lausuch [mailto:jose.laus...@ericsson.com] 发送时间: 2016年11月11日 23:43 收件人: Beierl, Mark <mark.bei...@dell.com<mailto:mark.bei...@dell.com>>; yaohelan <yaohe...@huawei.com<mailto:yaohe...@huawei.com>> 抄送: liyuenan <liyue...@huawei.com<mailto:liyue...@huawei.com>>; opnfv-tech-discuss@lists.opnfv.org<mailto:opnfv-tech-discuss@lists.opnfv.org> 主题: RE: [opnfv-tech-discuss] [functest] [yardstick] Client version can't support Newton Hi, That is something to be tested. I don’t know yet. We had some problems with version in the past, that’s why we hard-code some client versions in the import commands. We created this task https://jira.opnfv.org/browse/FUNCTEST-529 to keep track of that upgrade. Helen Yao will be our hero for that activity. JOSE LAUSUCH Senior Systems Designer Ericsson From: Beierl, Mark [mailto:mark.bei...@dell.com] Sent: Friday, November 11, 2016 16:32 PM To: Jose Lausuch Cc: liyuenan; opnfv-tech-discuss@lists.opnfv.org<mailto:opnfv-tech-discuss@lists.opnfv.org> Subject: Re: [opnfv-tech-discuss] [functest] [yardstick] Client version can't support Newton Hello, Jose. Question - what about the transitional state where some installers are still on v2? Will the v3 client still work? Regards, Mark Mark Beierl Advisory Solutions Architect Dell EMC | Office of the CTO mobile +1 613 314 8106<tel:1-613-314-8106> mark.bei...@dell.com<mailto:mark.bei...@dell.com> On Nov 11, 2016, at 10:26, Jose Lausuch <jose.laus...@ericsson.com<mailto:jose.laus...@ericsson.com>> wrote: Hi, We are aware of that and are in the process of supporting Newton in Functest. Related JIRA Epic: https://jira.opnfv.org/browse/FUNCTEST-528 Basically, there are 2 actions the test projects need to do: 1) Upgrade the OpenStack python clients (pip install --upgrade …) 2) Update the module version that is imported in the code (from neutronclient.v3_0 import client) I have created a wiki collecting this information to align in what we are installing in our Docker image https://wiki.opnfv.org/display/functest/OpenStack+python+clients Feel free to provide feedback. JOSE LAUSUCH Senior Systems Designer Ericsson From: opnfv-tech-discuss-boun...@lists.opnfv.org<mailto:opnfv-tech-discuss-boun...@lists.opnfv.org> [mailto:opnfv-tech-discuss-boun...@lists.opnfv.org] On Behalf Of Beierl, Mark Sent: Friday, November 11, 2016 16:16 PM To: liyuenan Cc: opnfv-tech-discuss@lists.opnfv.org<mailto:opnfv-tech-discuss@lists.opnfv.org> Subject: Re: [opnfv-tech-discuss] [functest] [yardstick] Client version can't support Newton Hello, This does raise an interesting dilemma: a project often will use the Python API directly, which means a change from v2 to v3 is a code change, not a runtime configuration change. Therefore at the moment, this is not something that is selectable per installer. I know for StorPerf, this is definitely the case, and I think I will need to propose a change where the client and API to use is dynamically selectable based on a configuration file. Does any project have such code already? Regards, Mark Mark Beierl Advisory Solutions Architect Dell EMC | Office of the CTO mobile +1 613 314 8106<tel:1-613-314-8106> mark.bei...@dell.com<mailto:mark.bei...@dell.com> On Nov 11, 2016, at 02:58, liyuenan <liyue...@huawei.com<mailto:liyue...@huawei.com>> wrote: Hi everyone! Compass4nfv can deploy Newton now, but could not test it by yardstick or functest because of API version. Newton deployed by compass4nfv use the API v3 to instead of API v2.0. So I think yardstick and functest should update client version to support Newton. Error log is in attachment. And you can deploy Newton by compass4nfv. Best Regards! Yuenan Li <functest_healthcheck_error.log><functest_prepare_error.log><yardstick_ping_error.log>_______________________________________________ opnfv-tech-discuss mailing list opnfv-tech-discuss@lists.opnfv.org<mailto:opnfv-tech-discuss@lists.opnfv.org> https://lists.opnfv.org/mailman/listinfo/opnfv-tech-discuss
_______________________________________________ opnfv-tech-discuss mailing list opnfv-tech-discuss@lists.opnfv.org https://lists.opnfv.org/mailman/listinfo/opnfv-tech-discuss