Comments (4)
Do you have a PR with the issue so I can see the context and the full logs?
from oca-ci.
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.
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.
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)
- No licence specified HOT 2
- Question : how to install non-oca modules present in other repo ? HOT 15
- Do an apt-get update before installing `deb` dependencies, if any HOT 6
- lxml issue in recent python 3.6 images HOT 2
- Searchpanel multi with style Hierarchy like default searchpanel (many2one) HOT 1
- Use Odoo Enterprise modules in test with OCA tools
- Question : how to use odoo Enterprise modules in test with OCA tools HOT 1
- Running the tests hangs indefinitely HOT 1
- Allow to configure deb build dependencies by repository HOT 1
- Create a docker-compose to run tests
- Is there a proper way to set server_wide_modules option before running tests? HOT 1
- need to re-enable workflow? HOT 1
- Windows CI
- Circular dependencies between repo
- Circular dependency feature not compatible with template's rebel modules HOT 4
- issue with same repo dependencies HOT 2
- Mismatch in test passing/failure vs. Odoo.sh and local Odoo dev installed from sources HOT 5
- Issue when installing existing addon from same repo from a PR
- Odoo 17 now requires pg_trgm HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from oca-ci.