Are you excited about Knative and open-source development? You're in the right place! This is a mini-project for the upcoming 48h Knative eventβa 48-hour hackathon designed to boost contributions to the Knative Client project. For more details, check out Issue #1842.
π― Project Description
This story is about creating profiles for annotation and labels. A "profile" is a named collection of such meta-data that can be selected when creating or updating Knative services.
There can be built in profiles like "istio" which select a set of predefined labels, but profiles should be also able to be configured in the kn configuration file.
For example, assume that a profile istio is defined that would set the annotations:
Having profiles makes it much easier for integration with other Kubernetes add-ons that require a set of annotation and/or labels for triggering a certain behavior. The Istio annotations above are a good example for such an integration.
π Difficulty Level
Challenging
π₯ Recommended Team Size
1-3
π Expected Outcome
It would be great to get the foundation for this features within the 2 days of hackathon. Having hard-coded profiles for the beginning would be great, having the option to configure it via the configuration file would be the icing on the cake.
π Hello awesome contributor!
Are you excited about Knative and open-source development? You're in the right place! This is a mini-project for the upcoming 48h Knative eventβa 48-hour hackathon designed to boost contributions to the Knative Client project. For more details, check out Issue #1842.
π― Project Description
This story is about creating profiles for annotation and labels. A "profile" is a named collection of such meta-data that can be selected when creating or updating Knative services.
There can be built in profiles like "istio" which select a set of predefined labels, but profiles should be also able to be configured in the
kn
configuration file.For example, assume that a profile
istio
is defined that would set the annotations:then when running
kn service create myservice --image .... --profile=istio
those annotation would be applied.For non-builtin profiles, the configuration that goes to
~/.config/kn/config.yml
should look like:π Benefits
Having profiles makes it much easier for integration with other Kubernetes add-ons that require a set of annotation and/or labels for triggering a certain behavior. The Istio annotations above are a good example for such an integration.
π Difficulty Level
Challenging
π₯ Recommended Team Size
1-3
π Expected Outcome
It would be great to get the foundation for this features within the 2 days of hackathon. Having hard-coded profiles for the beginning would be great, having the option to configure it via the configuration file would be the icing on the cake.
π€ Mentor
π Additional Information
π Entrypoints
π Organizer Checklist