Investigate what needs to be done to make versions 4.X of coludify-common to work with a 5.1 manager

Description

As part of fixing the integration test agent_tests/test_existing_vm::ExistingVMTest::test_source_plugin_requires_old_package we've found out that using a 4.X package of cloudify-common with a 5.1 manager causes failures, mainly having to do with pika/rabbitmq:

We'd like for older packages of coludify-common to work with a 5.1 manager

Activity

Show:
Michael Glokhman
September 10, 2020, 9:41 AM
Edited
  1. An example that Lukasz gives is that the user packages a plugin which uses e.g cloudify-common==4.6 in setup.py. That probably shouldn’t work because 4.6 can’t run on Python 3, but the above error doesn’t seem connected to Py2 vs. Py3 so worth investigating. So,

  2. Doesn’t seem critical, not a blocker

  3. No (test checks only with cloudify-common==5.0.0 currently, after the latest PR)

Alex Molev
September 10, 2020, 9:50 AM

I guess all our plugins that were ported to py3 are using common 5?

Is there a reason why a customer when porting a plugin to py3 won’t bump common version to 5?

Adar Saked
September 10, 2020, 10:52 AM
Edited

yes.
we set cloudify-common>=4.5.5 in setup.py .
but:
I we had similar issue when investigating mgmtworker packages.
If user runs cloudify <5.1 so the common in the plugin will be the same common as mgmtworker(mgmtworker will not allow to the plugin to install its cloudify-common).
If we are on 5.1 so every plugin has its own virtual environment and its own common.
correct me if im wrong.

Trammell -
September 10, 2020, 10:54 AM

My understanding from is that:

  1. We package the plugin with 4.5.5 or whatever is the oldest supported version since the plugin was developed.

  2. But the manager will disregard that and use the version in the management worker.

Łukasz Maksymczuk
October 22, 2020, 10:09 AM

we find that 4.x common will simply Not Work™ because it's just not python3-compatible, and so currently it's not really possible to even create a wagon for it, which is able to be installed on a py3 worker

Done

Assignee

Łukasz Maksymczuk

Reporter

Michael Glokhman

Labels

None

Target Version

5.2

Premium Only

no

Release Notes

yes

Priority

None

Why Blocked?

None

Epic Link

Sprint

5.1 Sprint 15

Priority

Unprioritized
Configure