An open API service indexing awesome lists of open source software.

https://github.com/linuxsuren/argo-workflow-atomic-plugin

An atomic plugin of Argo workflows
https://github.com/linuxsuren/argo-workflow-atomic-plugin

argo-workflows atomic

Last synced: 6 months ago
JSON representation

An atomic plugin of Argo workflows

Awesome Lists containing this project

README

          

[![](https://goreportcard.com/badge/linuxsuren/argo-workflow-atomic-plugin)](https://goreportcard.com/report/linuxsuren/argo-workflow-atomic-plugin)
[![](http://img.shields.io/badge/godoc-reference-5272B4.svg?style=flat-square)](https://godoc.org/github.com/linuxsuren/argo-workflow-atomic-plugin)
[![Contributors](https://img.shields.io/github/contributors/linuxsuren/argo-workflow-atomic-plugin.svg)](https://github.com/linuxsuren/argo-workflow-atomic-plugin/graphs/contributors)
[![GitHub release](https://img.shields.io/github/release/linuxsuren/argo-workflow-atomic-plugin.svg?label=release)](https://github.com/linuxsuren/argo-workflow-atomic-plugin/releases/latest)
![GitHub All Releases](https://img.shields.io/github/downloads/linuxsuren/argo-workflow-atomic-plugin/total)

This plugin could reduce unnecessary Argo workflows. For example, there are mutiple commits against a pull request in a short time.
In most cases, only the last time of the workflow running is necessary. This plugin will stop all the workflows which have the same
parameters and come from same WorkflowTemplate.

## Install
First, enable the plugin feature of Argo workflows:
```shell
kubectl patch deployment \
workflow-controller \
--namespace argo \
--type='json' \
-p='[{"op": "add", "path": "/spec/template/spec/containers/0/env/0", "value": {
"name": "ARGO_EXECUTOR_PLUGINS",
"value": "true",
}}]'
```

then, install this plugin as a ConfigMap:
```shell
cat <