Giter VIP home page Giter VIP logo

Comments (4)

sbidoul avatar sbidoul commented on July 30, 2024

Do you have a PR with the issue so I can see the context and the full logs?

from oca-ci.

theangryangel avatar theangryangel commented on July 30, 2024

I've created a minimal example at https://github.com/GlodoUK/oca-ci-issue-33. The failure at https://github.com/GlodoUK/oca-ci-issue-33/runs/7308997757?check_suite_focus=true specifically is my area of interest :)

Like I say, I'm happy to do the work, I'm just not sure if it's a manifestoo, or oca-ci issue, or a bit of both :)

from oca-ci.

sbidoul avatar sbidoul commented on July 30, 2024

I see. The deb external_dependencies in manifests are meant for runtime dependencies. Here some libraries are required at build time to compile pycurl which does not provide binary wheels on PyPI.

As you noticed, in this case we added the common dependencies in the ci image. So far for OCA it has not been too much of an issue in practice.

I'm a bit reluctant to add this library to the oca-ci image because then where do we draw the line?

Possible solutions that come to mind:

  • create your own oca-ci derived image, but then I guess your next move will be to make it configurable in the oca-addons-repo-template :)
  • add a question in the template to configure pre-install scripts, but the problem with that is that you'll need to add it in all repos that depend on the repo which needs the build time dependency

Not sure what's best...

Out of curiosity, why pycurl instead of a pure python library ?

from oca-ci.

theangryangel avatar theangryangel commented on July 30, 2024

The deb external_dependencies in manifests are meant for runtime dependencies.

Ah, that's my misunderstanding. It's obvious now you've pointed it out :)

I'm a bit reluctant to add this library to the oca-ci image because then where do we draw the line?

Fully understand, and this wasn't something I was expecting at all :)

add a question in the template to configure pre-install scripts, but the problem with that is that you'll need to add it in all repos that depend on the repo which needs the build time dependency

I'll see if we can prototype something and propose it over the next few days :) For now we've just added an extra step to our GitHub workflow.

Out of curiosity, why pycurl instead of a pure python library ?

We've had a scenario where we needed to talk to several different FTP servers directly from Odoo via a connector, and unfortunately every pure Python FTP library we tried had some form of problem.

The main pain point was around TLS and session resumption. Anything that ultimately was based on ftplib we specifically hit https://bugs.python.org/issue10808 and https://bugs.python.org/issue19500. Workarounds to manage the issue were viable for 1 FTP server and then would break another.

We needed a solution somewhat quickly and I reached for cURL because to date I've rarely had an issue.

from oca-ci.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.