Comments (4)
It is not about Kopf, it is about running a generic Python app and is (or is not) an issue of Python. Afair, this was the default behavor for years, but they reverted this behaviour — presumably, for security reasons. It is not up to a specialised niche framework to override that general approach of Python. The app developers can do this if they want, as they control the whole environment.
Also, if kopf is installed as a package normally, it will run without any path manipulation — because it (i.e. pip/poetry/whatnot) installs a bin script named kopf
. I did not get what exactly is not working in your example.
from kopf.
when running kopf with -m some.module
(assuming ./some/module dir exists and all paths include __init__.py) the import fails since PWD is not in path.
from kopf.
i didn't know that behavior has changed, and I agree that it shouldn't be overridden in the framework - but maybe we can add that as a cli flag
from kopf.
CLI already allows this, basically in any shell:
PYTHONPATH=. kopf run -m some.module
PYTHONPATH=/home/…/dir1:/opt/myoperator/dir2 kopf run -m some.module
Not specific to Kopf, this is a Python feature:
from kopf.
Related Issues (20)
- Using named import in kopf
- Handle large resource spec being annotated to `last-handled-configuration` HOT 3
- Namespace deletion is stuck when using namespace selector startup mode HOT 1
- Infinite watch-streams stopping immediately with no obvious reasons why. The watched resources do then spin up.
- Liveness probe stops working HOT 2
- Kubernetes client not configured in startup handler HOT 3
- Admission Controller Path
- `FieldSpec` and `resolve` does not support list access
- Attach to container start event
- Behaviour of timer with finalizer
- Finalisers race condition
- Finalizers from other controllers conflicting with kopf finalizer
- Kopf does not restart after 429 too many requests error HOT 3
- How to avoid Errors accessing metrics API and CRDs HOT 1
- Allow kopf.adopt to Communicate Resource Readiness to ArgoCD HOT 4
- Object stuck in loop with inconsistent status updates and handler failure HOT 1
- kopf suddenly stop detecting any changes approximately after 20 mins
- Make Probes access logs configurable
- kopf.timer / kopf.daemon disable kopf.on* handlers
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 kopf.