Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/argoproj-labs/rollout-extension
Argo Rollout visualization in Argo CD Web UI
https://github.com/argoproj-labs/rollout-extension
Last synced: 2 months ago
JSON representation
Argo Rollout visualization in Argo CD Web UI
- Host: GitHub
- URL: https://github.com/argoproj-labs/rollout-extension
- Owner: argoproj-labs
- Created: 2021-06-04T22:35:10.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-05-30T17:51:55.000Z (8 months ago)
- Last Synced: 2024-08-04T00:12:13.171Z (5 months ago)
- Language: TypeScript
- Homepage:
- Size: 738 KB
- Stars: 177
- Watchers: 10
- Forks: 44
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-argo - Argo Rollout Extension
README
# Rollout Extension
The project introduces the Argo Rollout dashboard into the Argo CD Web UI.
![image](https://user-images.githubusercontent.com/426437/136460261-00d3dc31-ad20-4044-a7be-091803b8678f.png)
## Install UI extension
To install the extension use the [argocd-extension-installer](https://github.com/argoproj-labs/argocd-extension-installer) init container which runs during the startup of the argocd server.
The init container downloads and extracts the JS file to `/tmp/extensions`. The argocd interface mounts the external JS file within the rollout resource.### Kustomize Patch
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: argocd-server
spec:
template:
spec:
initContainers:
- name: rollout-extension
image: quay.io/argoprojlabs/argocd-extension-installer:v0.0.1
env:
- name: EXTENSION_URL
value: https://github.com/argoproj-labs/rollout-extension/releases/download/v0.3.4/extension.tar
volumeMounts:
- name: extensions
mountPath: /tmp/extensions/
securityContext:
runAsUser: 1000
allowPrivilegeEscalation: false
containers:
- name: argocd-server
volumeMounts:
- name: extensions
mountPath: /tmp/extensions/
volumes:
- name: extensions
emptyDir: {}
```### Helm Values
#### Using `server.extensions`
```yaml
server:
extensions:
enabled: true
extensionList:
- name: rollout-extension
env:
- name: EXTENSION_URL
value: https://github.com/argoproj-labs/rollout-extension/releases/download/v0.3.4/extension.tar
```#### Using `server.initContainers`, `server.volumeMounts`, and `server.volumes` directly
kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/rollout.yaml
kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-rollouts/master/docs/getting-started/basic/service.yaml```yaml
server:
initContainers:
- name: rollout-extension
image: quay.io/argoprojlabs/argocd-extension-installer:v0.0.1
env:
- name: EXTENSION_URL
value: https://github.com/argoproj-labs/rollout-extension/releases/download/v0.3.4/extension.tar
volumeMounts:
- name: extensions
mountPath: /tmp/extensions/
securityContext:
runAsUser: 1000
allowPrivilegeEscalation: false
volumeMounts:
- name: extensions
mountPath: /tmp/extensions/
volumes:
- name: extensions
emptyDir: {}
```