Giter Club home page Giter Club logo

argoworkflow-addon's Introduction

argoworkflow-addon

** Now bundled in https://github.com/mikeshng/argo-workflow-multicluster **

PoC ArgoWorkflow Addon for Open Cluster Management (OCM).

By applying this add-on to your OCM hub cluster, automatically Argo Workflow installation will be applied to all your managed (spoke) clusters and all your to be registered managed (spoke) clusters. You can then apply a ManifestWork wrapping the Workflow CR on your hub cluster and the Workflow CR will be reconciled on your managed (spoke) clusters.

Inside the controllers/manifests folder it contains the Argo Workflow install version of:

v3.4.2

Prerequisite

Setup an Open Cluster Management environment. See: https://open-cluster-management.io/getting-started/quick-start/ for more details

Get started

Git Clone the repo.

Edit the Makefile and replace the docker.io/mikeshng to the registry of your choice.

Create the image:

make docker-build

Push the image:

make docker-push

Edit the deploy/deployment.yaml file and replace the docker.io/mikeshng to the registry of your choice.

Deploy the add-on the OCM hub cluster:

$ kubectl apply -f deploy
$ kubectl -n open-cluster-management get deploy
NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
argoworkflow-addon-controller   1/1     1            1           29s

The controller will automatically install the add-on to all managed (spoke) clusters.

Validate the add-on is installed on a managed (spoke) cluster:

kubectl -n argo get deploy
NAME                  READY   UP-TO-DATE   AVAILABLE   AGE
argo-server           1/1     1            1           24s
workflow-controller   1/1     1            1           24s

You can also validate the add-on is available on the hub cluster:

$ kubectl -n cluster1 get managedclusteraddon # replace "cluster1" with your managed cluster name
NAME          AVAILABLE   DEGRADED   PROGRESSING
argoworkflow   True                   

Deploy an example of a ManifestWork wrapping a Workflow CR on the hub cluster:

kubectl -n cluster1 apply -f example # replace "cluster1" with your managed cluster name

Validate the Workflow is created on the managed (spoke) cluster:

$ kubectl -n default get argoworkflow
NAME                       STATUS      AGE   MESSAGE
hello-world-multicluster   Succeeded   16s   

argoworkflow-addon's People

Contributors

mikeshng avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.