Coder Social home page Coder Social logo

client-contrib's Introduction

Knative Client Contributions

This repository is the place for curated contributions for the Knative client, especially Knative plugins

Plugins

All plugins are stored below the plugins/ directory. Currently, you can find the following plugins there:

kn-hello

kn-hello is a "Hello World" plugin which also serves as a blueprint for new plugins. It contains the pieces that a mandatory for any new (golang based) plugin.

I.e. it demonstrates:

  • How the package structure should look like
  • How the README and documentation should be structured
  • How CI and testing, in general, can be setup
  • Contains a sample build tool build.sh which can easily be customized

list of plugins to be continued ...

How to contribute a plugin

First of all, thank you for considering to contribute a kn plugin. That's so awesome, and we love contributions!

Before you start to craft a pull request, please consider to perform the following step:

  • Enter the Knative #cli slack and discuss you plugin idea there first.
  • When creating a PR, please follow the following process:
    • Copy over the plugin from the directory plugins/hello to a new directory with your plugins short name (i.e. the command name), also below plugins/. E.g. plugins/awesome if you are about to create a kn-awesome plugin enriching kn with a kn awesome command.
    • Put your code in the pkg/ and cmd/ directories, similar to the existing code.
    • Check and adapt the top-level comments and variables in hack/build.sh to reflect your plugins settings.
    • Adapt and add to the README.md which is supposed to serve as full documentation for your plugin. See the example section given there and replace it with the content for your plugin. Especially reference documentation is required as well as an example section.
    • Adapt the approved in the OWNERS file to fill in the maintainers of your plugin, but also leave the existing folks in that file (as a fallback)
    • Be sure that your plugin is entire self-contained. I.e. it must not depend on anything above its directory and should set up its dependencies.
  • Work with the reviewers to get your PR integrated.

Please note that all plugins in this repository share the same release cycle and release cadence, which is currently six weeks together with the Knative client release.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.