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

Airship specific implementation of KRM Function Specification #597

Closed
kozhukalov opened this issue Jul 8, 2021 · 2 comments
Closed

Airship specific implementation of KRM Function Specification #597

kozhukalov opened this issue Jul 8, 2021 · 2 comments
Assignees
Labels
design needed New Design or Redesign required enhancement New feature or request priority/low Items that are considered non-critical for functionality, such as quality of life improvements
Milestone

Comments

@kozhukalov
Copy link
Contributor

Problem description (if applicable)
At the moment Airship uses two types of generic containers: krm (kyaml/runfn) and airship (airship specific docker wrapper). kyaml/runfn has some limitations that do not allow to use it everywhere. For example, sometimes we want a container to be run from a privileged user. Also kyaml/runfn does not provide some of the functionality we potentially would like to have (e.g. running timeout).

Proposed change
Instead of using two container runtimes, let's use just one. The suggestion is

  1. Get rid of Airship specific docker client
  2. Copy the code from kyaml/runfn and modify it to cover Airship specific needs

The goal is to have one container runtime that would implement KRM Function Specification https://github.com/kubernetes-sigs/kustomize/blob/master/cmd/config/docs/api-conventions/functions-spec.md#krm-functions-specification and have all necessary functionality needed for Airship.

The same approach is used in https://github.com/GoogleContainerTools/kpt. They copied kyaml/runfn and modified the code according to their needs.

@kozhukalov kozhukalov added enhancement New feature or request triage Needs evaluation by project members labels Jul 8, 2021
@kozhukalov
Copy link
Contributor Author

Please assign this to me

@jezogwza jezogwza added priority/low Items that are considered non-critical for functionality, such as quality of life improvements and removed triage Needs evaluation by project members labels Jul 14, 2021
@jezogwza jezogwza added this to the Future milestone Jul 14, 2021
@jezogwza jezogwza added the design needed New Design or Redesign required label Jul 14, 2021
@eak13 eak13 assigned kozhukalov and unassigned kozhukalov Jul 26, 2021
@kozhukalov
Copy link
Contributor Author

kozhukalov commented Sep 14, 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design needed New Design or Redesign required enhancement New feature or request priority/low Items that are considered non-critical for functionality, such as quality of life improvements
Projects
None yet
Development

No branches or pull requests

3 participants