Skip to content
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

kustomize build {repoUrl} #32

Closed
monopole opened this issue May 23, 2018 · 3 comments
Closed

kustomize build {repoUrl} #32

monopole opened this issue May 23, 2018 · 3 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@monopole
Copy link
Contributor

No description provided.

@rothgar
Copy link

rothgar commented May 31, 2018

I'm assuming this is to have the base yaml files live in a centralized repository and all the customization in the local directory.

I too was curious how remote manifests would work. Maybe store it in the kustomization.yaml file?

@Liujingfang1 Liujingfang1 added the kind/feature Categorizes issue or PR as related to a new feature. label Jun 14, 2018
@Liujingfang1 Liujingfang1 added this to the 1.0.4 milestone Jun 20, 2018
@monopole
Copy link
Contributor Author

This needs some fleshing out.

Say the command

kustomize build git@github.com:someOrg/someRepo.git/{tag}

exists and operates equivalently to

git clone --branch {tag} git@github.com:someOrg/someRepo.git
kustomize build someRepo

Then there's a a win, in that your command history shows that you built your cluster spec from a clear, immutable tag, rather than from a local directory which has who knows what in it.

The repo has to have a kustomization.yaml file at the top level, along with all the resource files it needs, or it the command fails.

To build on this, you modify kustomize more deeply to be able to specify any base or patch as a URI.

@monopole
Copy link
Contributor Author

The argument to kustomize build and the items in a bases list have the same type - they are both targets. Currently they are just a string that refers to a local directory containing a kustomization.yaml file. A patch could be specified as a URI, but it's not the same type as a target (a patch is just a partial resource file, not a kustomization).

When this is tackled, the solution for build and bases should be the same. Currently the arguments to these things are loaded by a FileLoader, which implements the Loader interface. To treat this string as a github URL with a tag, it might make sense to have a GithubLoader, and a schema detector to decide which loader to use.

Regardless, these two things (built target and base) should have the same target-enhancing solution.

@Liujingfang1 Liujingfang1 removed this from the 1.0.4 milestone Aug 2, 2018
@Liujingfang1 Liujingfang1 self-assigned this Aug 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants