Giter Club home page Giter Club logo

kube-trigger's Introduction



Make shipping applications more enjoyable.

Build status Go Report Card Docker Pulls codecov LICENSE Releases TODOs Twitter Artifact HUB CII Best Practices E2E status OpenSSF Scorecard

Introduction

KubeVela is a modern application delivery platform that makes deploying and operating applications across today's hybrid, multi-cloud environments easier, faster and more reliable.

kubevela

Highlights

KubeVela practices the "render, orchestrate, deploy" workflow with below highlighted values added to existing ecosystem:

Deployment as Code

Declare your deployment plan as workflow, run it automatically with any CI/CD or GitOps system, extend or re-program the workflow steps with CUE. No ad-hoc scripts, no dirty glue code, just deploy. The deployment workflow in KubeVela is powered by Open Application Model.

Built-in observability, multi-tenancy and security support

Choose from the wide range of LDAP integrations we provided out-of-box, enjoy enhanced multi-tenancy and multi-cluster authorization and authentication, pick and apply fine-grained RBAC modules and customize them as per your own supply chain requirements. All delivery process has fully automated observability dashboards.

Multi-cloud/hybrid-environments app delivery as first-class citizen

Natively supports multi-cluster/hybrid-cloud scenarios such as progressive rollout across test/staging/production environments, automatic canary, blue-green and continuous verification, rich placement strategy across clusters and clouds, along with automated cloud environments provision.

Lightweight but highly extensible architecture

Minimize your control plane deployment with only one pod and 0.5c1g resources to handle thousands of application delivery. Glue and orchestrate all your infrastructure capabilities as reusable modules with a highly extensible architecture and share the large growing community addons.

Getting Started

Documentation

Full documentation is available on the KubeVela website.

Blog

Official blog is available on KubeVela blog.

Community

We want your contributions and suggestions! One of the easiest ways to contribute is to participate in discussions on the Github Issues/Discussion, chat on IM or the bi-weekly community calls. For more information on the community engagement, developer and contributing guidelines and more, head over to the KubeVela community repo.

Contact Us

Reach out with any questions you may have and we'll make sure to answer them as soon as possible!

Community Call

Every two weeks we host a community call to showcase new features, review upcoming milestones, and engage in a Q&A. All are welcome!

Talks and Conferences

Check out KubeVela videos for these talks and conferences.

Contributing

Check out CONTRIBUTING to see how to develop with KubeVela.

Report Vulnerability

Security is a first priority thing for us at KubeVela. If you come across a related issue, please send email to [email protected] .

Code of Conduct

KubeVela adopts CNCF Code of Conduct.

kube-trigger's People

Contributors

charlie0129 avatar fogdong avatar leejanee avatar leil24 avatar mcduller avatar semmet95 avatar somefive avatar wonderflow avatar yangsoon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kube-trigger's Issues

Add api group to clusterrole's first rule in config/manager

Describe the bug
Getting the error

The ClusterRole "kube-trigger-manager-role" is invalid: rules[0].apiGroups: Required value: resource rules must supply at least one api group

when applying config/manager/role.yaml file.

To Reproduce
Steps to reproduce the behavior:

  1. Follow the Quick Start guide.
  2. Apply all the files in config/crd, config/definition, and config/manager respectively.
  3. kubectl apply -f will throw the error when trying to apply role.yaml.

Expected behavior
Successful creation of ClusterRole kube-trigger-manager-role

Kube Trigger Version

  • kube-trigger version: 1.0.0 (kube-trigger addon)

Cluster information

  • Minikube version: v1.30.1
  • Kuberentes version: v1.24.13
  • Kubevela version: v1.8.1

Additional context
I enabled the kube-trigger addon after installing kubevela .

User experience enhancements

  • Start a default TriggerInstance once controller is deployed, named default (optionally this feature can be disabled)
  • TriggerService without selectors automatically uses the default instance
  • change label app: xxx to instance: xxx

make kind name "KubeTriggerConfig" to be "TriggerService"

Let's refactor the schema to be:

triggers:
  -   k8s-resource-watcher:
       apiVersion: v1
       kind: ConfigMap
       namespace: default
       # Only watch update event.
       events:
         - update
    filters:
      # Filter the events above.
      - cue-validator:
          template: |
            metadata: name: =~"this-will-trigger-update-.*"
    actions:
      - bump-application-revision:
          namespace: default
          labelSelectors:
            my-label: my-value

It can be more convenient as trigger config.

[Question] Execute kubectl command / create k8s resource

There is the following task - need to create a kubernetes job (or triger it from a cronjob) or execute a kubectl command at a certain Kubernetes event.

I couldn't find such functionality (v0.1.1).
Please tell me if such functionality is available now or these are plans for the future.
Where can I view all possible "actions"?

Thank you!

support collecting event of pods in vela application

  1. vela ql can get the pods from application, with resource topology featrues.
  2. kube-trigger could watch and filter events from pods.
  3. kube-trigger could send the event to loki/clickhouse or other storage for log.
  4. o11y addon can read that events.
  5. we can also add vector addon for transform logs.

Real scenario: kubevela/kubevela#1365

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.