-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package-context content is erased when package is cloned #408
Comments
Yeah, this also makes the package context manipulation in PV basically useless. That's why I think we remove that functionality in the eventual beta version (if not in v1alpha2) of the API. See kptdev/kpt#3973 for additional context. I think maybe we should just never store the package context. Rather than it being a real, stored resource, it may be useful to introduce the concept of a sort of "virtual" resource that provides access to meta-data and other information (possibly even external?) to functions/specializers. I am not sure if it's a good idea, but we could also possibly extend this to a sort of "data source" concept seen in other tools. Effectively, these become APIs to other systems. I haven't thought through the implications of that, though. For example, if those external systems do not provide "watch" like functionality, how do we handle it? How do we track changes in return values from those APIs? What would our system look like with that functionality to access IPAM, instead of, say, our existing IPClaim mechanism? Does it introduce something imperative, or are we OK since we still use the declarative resource model to access it? |
I only have seen the visible face of Nephio, and probably have not understood some element on the underlayers, and I hope this message will be pertinent. In my opinion, today, the main impact of that behaviour is the difference between the UI/packRev and a For a package with just a setter function:
To have a package working on both UI and Sorry for those questions, but:
Whatever the option is choosen, it must be homogeneous for each way of manipulating packages. |
These are really good points, David. The UI is very limited right now. Here's one way to think about it. We have a collection of management planes, each accessible via KRM:
Sitting in front of those, we have Git repositories. For the infra and workload clusters, we generally limit our interaction with them to publishing to their Git repositories. For the Nephio Management cluster, we use both the git repository and direct interaction with the API server. Today, the UI only allows the user to manipulate packages - ie, the contents of the git repositories. This means you can effectively do anything with the UI, but it is not always the most convenient way to do it. Everything has to be deployed as a package. When we use So, my thinking is this - and I think this addresses exactly your points:
|
Triaged |
The
package-context.yaml
from a blueprint package is erased when the package is cloned.As a result, all the context elements filled in this file are not usable by Kpt functions contained in the Kptfile.
For example, https://github.com/nephio-project/free5gc-packages/blob/main/free5gc-cp/package-context.yaml contains
namespace
field, but it is not present in the deployed package.The text was updated successfully, but these errors were encountered: