Comments (4)
I ended up finding that werkzeug is at the latest version and after digging pretty deep in it's source, it seemed like what was being sent over by ansible-galaxy wasn't parsing right by werkzeug. My ansible-core version was 2.9.6. Upgrading to 2.13.10 seemed to change how the response body was constructed such that galactory didn't error on publihs.
from galactory.
Hi @debben , I see you were able to get working with a newer version of ansible-core. 2.9.6 is incredibly old even for 2.9 (which itself is long EoL). If you must use 2.9, try newer version of it, I think the last one is something like 2.9.26.
But in general, I will probably be looking to support more modern versions of core. Keeping in mind mind that core doesn't use semver, and that the first two components combined are major versions, 2.9 is 6 major versions behind the current latest, 2.15.
In places that still need to use 2.9, I've also seen limited success with using a newer version of ansible-core
installed in a virtual environment (python venv) and using that only to run ansible-galaxy
commands while they use their existing environment for 2.9.
Other than that, I'd love to hear more about your experience with galactory , how you're using it, any feedback you might have. Thanks!
from galactory.
So far so good. I'm in need of roles support though so I'm trying to gauge what effort would be needed there. If it would be #23 or if also v1 api would be needed. I'm currently using artifactory generic artifact storage to host .tar.gz of collections and roles and then referencing them as by url. I'm hoping that by using galactory I can take advantage of renovatebot/renovate#19486 once it's ready.
from galactory.
Thanks @debben , I planned from the beginning not to support standalone roles. The overwhelming direction in the community is toward collections, which offer a better package experience for all ansible content, including roles.
If your interest is primarily for roles as internal content, I would recommend putting them in collections and publishing those. If your interest is more about proxying to upstream roles, then I'd suggest setting up your ansible.cfg to point to both your "internal" galactory-based repository for collections, and a second "server" that points directly at galaxy for roles. Or to do installation in separate runs with separate targets.
Although I might consider a PR to add v1/roles support, my inkling at the moment is that I would not, due to the maintenance burden of it vs. the benefit given the direction of the community.
I would recommend we open a separate issue or discussion before you spend significant time on coding.
For me, the biggest problem right now with the whole project has been the difficulty of getting working tests, and if I were to consider role support it would have to be with test coverage and support, something that's very difficult now because I'm lacking it even for the rest of the project (which is on me).
If you want to continue talking about it, let's do so via a discussion so that it can be an ongoing conversation and others in the community can weigh in.
Thanks very much for your feedback I appreciate it a lot!
from galactory.
Related Issues (20)
- Remove deprecated key/auth options
- Look at using flask-caching
- Support pagination
- internals: "fast detection" for collection iteration doesn't work for non-stable versions
- Direct collection URL (`href` field) is wrong
- Collection publishing doesn't work if the tarball is not base64 encoded
- Consider converting codebase to async
- Implement collection deletion
- Single-source the version
- 500 error on any collection that doesn't exist locally
- Forcing page counts onto upstream URLs broke v2 proxying partially
- Galactory no longer support proxying to galaxy.ansible.com out of the box HOT 4
- The arm64 container build doesn't run the container
- "When specifying '_scheme', '_external' must be True." HOT 9
- Galaxy v2 - upstream response href fields are not rewritten
- Some errors in requests are not retried
- Allow for skipping logging of requests that meet some criteria
- theforeman.foreman collection could not be installed when using Galactory as a proxy. HOT 2
- docs: Example config for Artifactory generic remote repository?
- Add open telemetry
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 galactory.