cloudbeat icon indicating copy to clipboard operation
cloudbeat copied to clipboard

Poetry installation with hermit

Open amirbenun opened this issue 2 years ago • 3 comments

Motivation

We use poetry for running integration tests written in python. Poetry have to be installed separately and doesn't include in hermit. Also, it's installation is not trivial and it has to be installed with a specific python version 3.9 (not sure why). Therefore, its installation repeats more than once in our CI, and developers have to install it manually.

Definition of done

  • [ ] Add poetry to hermit as cloudbeat dependency (not trivial)
  • [ ] Remove poetry installation from our testing setup
  • [ ] Remove poetry installation documentation

Out of scope

Related tasks/epics

Reference related issues and epics

amirbenun avatar Aug 02 '23 11:08 amirbenun

Note: poetry has a "CI recommendations" section on its website: https://python-poetry.org/docs/#ci-recommendations

Additionally, it might be quite challenging to add a hermit package for poetry as hermit packages mostly just describe how to download a released binary. I think non-trivial installation commands are not supported.

orestisfl avatar Aug 02 '23 13:08 orestisfl

I agree that adding poetry as a hermit package is not trivial just from first glance. However, poetry's "CI Recommendations" is what we have so far and we are still not happy about it. (code duplication, manual setup for developers)

Maybe we can start with a discussion here about the desired setup and take it from there.

amirbenun avatar Aug 02 '23 14:08 amirbenun

I wonder how easy it is to have our own all-in-one github action that roughly does the following:

  1. Checkout repo
  2. Set up hermit
  3. Set up go + caching
  4. Build cloudbeat
  5. (optional, based on args) set up poetry
  6. (optional, based on args) run necessary docker builds + cache
  7. (optional, based on args) set up elasticsearch (can also be a service container, don't know pros/cons)

Still doesn't solve the manual setup for devs but I am not convinced we can avoid that.

orestisfl avatar Aug 02 '23 14:08 orestisfl