refactor
This commit is contained in:
37
infrastructures/argo-events/env/k3s-cluster/examples/event-source.yaml
vendored
Normal file
37
infrastructures/argo-events/env/k3s-cluster/examples/event-source.yaml
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: EventSource
|
||||
metadata:
|
||||
name: webhook
|
||||
spec:
|
||||
service:
|
||||
ports:
|
||||
- port: 12000
|
||||
targetPort: 12000
|
||||
webhook:
|
||||
# event-source can run multiple HTTP servers. Simply define a unique port to start a new HTTP server
|
||||
example:
|
||||
# port to run HTTP server on
|
||||
port: "12000"
|
||||
# endpoint to listen to
|
||||
endpoint: /example
|
||||
# HTTP request method to allow. In this case, only POST requests are accepted
|
||||
method: POST
|
||||
|
||||
# example-foo:
|
||||
# port: "12000"
|
||||
# endpoint: /example2
|
||||
# method: POST
|
||||
|
||||
# Uncomment to use secure webhook
|
||||
# example-secure:
|
||||
# port: "13000"
|
||||
# endpoint: "/secure"
|
||||
# method: "POST"
|
||||
# # k8s secret that contains the cert
|
||||
# serverCertSecret:
|
||||
# name: my-secret
|
||||
# key: cert-key
|
||||
# # k8s secret that contains the private key
|
||||
# serverKeySecret:
|
||||
# name: my-secret
|
||||
# key: pk-key
|
||||
24
infrastructures/argo-events/env/k3s-cluster/examples/eventbus.yaml
vendored
Normal file
24
infrastructures/argo-events/env/k3s-cluster/examples/eventbus.yaml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: EventBus
|
||||
metadata:
|
||||
name: default
|
||||
spec:
|
||||
nats:
|
||||
native:
|
||||
# Optional, defaults to 3. If it is < 3, set it to 3, that is the minimal requirement.
|
||||
replicas: 3
|
||||
# Optional, authen strategy, "none" or "token", defaults to "none"
|
||||
auth: token
|
||||
# containerTemplate:
|
||||
# resources:
|
||||
# requests:
|
||||
# cpu: "10m"
|
||||
# metricsContainerTemplate:
|
||||
# resources:
|
||||
# requests:
|
||||
# cpu: "10m"
|
||||
# antiAffinity: false
|
||||
# persistence:
|
||||
# storageClassName: standard
|
||||
# accessMode: ReadWriteOnce
|
||||
# volumeSize: 10Gi
|
||||
21
infrastructures/argo-events/env/k3s-cluster/examples/ingress.yaml
vendored
Normal file
21
infrastructures/argo-events/env/k3s-cluster/examples/ingress.yaml
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: event-example-ingress
|
||||
namespace: argo-events
|
||||
annotations:
|
||||
nginx.ingress.kubernetes.io/ssl-redirect: "false"
|
||||
nginx.ingress.kubernetes.io/use-regex: "true"
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: "event-example.cluster.edward.sydney"
|
||||
http:
|
||||
paths:
|
||||
- pathType: Prefix
|
||||
path: "/"
|
||||
backend:
|
||||
service:
|
||||
name: webhook-eventsource-svc
|
||||
port:
|
||||
number: 12000
|
||||
33
infrastructures/argo-events/env/k3s-cluster/examples/sensor.yaml
vendored
Normal file
33
infrastructures/argo-events/env/k3s-cluster/examples/sensor.yaml
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: operate-workflow-sa
|
||||
---
|
||||
# Similarly you can use a ClusterRole and ClusterRoleBinding
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: operate-workflow-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
verbs:
|
||||
- "*"
|
||||
resources:
|
||||
- workflows
|
||||
- workflowtemplates
|
||||
- cronworkflows
|
||||
- clusterworkflowtemplates
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: operate-workflow-role-binding
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: operate-workflow-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: operate-workflow-sa
|
||||
46
infrastructures/argo-events/env/k3s-cluster/examples/webhook.yaml
vendored
Normal file
46
infrastructures/argo-events/env/k3s-cluster/examples/webhook.yaml
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Sensor
|
||||
metadata:
|
||||
name: webhook
|
||||
spec:
|
||||
template:
|
||||
serviceAccountName: operate-workflow-sa
|
||||
dependencies:
|
||||
- name: test-dep
|
||||
eventSourceName: webhook
|
||||
eventName: example
|
||||
triggers:
|
||||
- template:
|
||||
name: webhook-workflow-trigger
|
||||
k8s:
|
||||
operation: create
|
||||
source:
|
||||
resource:
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Workflow
|
||||
metadata:
|
||||
generateName: webhook-
|
||||
spec:
|
||||
entrypoint: whalesay
|
||||
arguments:
|
||||
parameters:
|
||||
- name: message
|
||||
# the value will get overridden by event payload from test-dep
|
||||
value: hello world!
|
||||
templates:
|
||||
- name: whalesay
|
||||
inputs:
|
||||
parameters:
|
||||
- name: message
|
||||
container:
|
||||
image: docker/whalesay:latest
|
||||
command: [cowsay]
|
||||
args: ["{{inputs.parameters.message}}"]
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: amd64
|
||||
parameters:
|
||||
- src:
|
||||
dependencyName: test-dep
|
||||
dataKey: body
|
||||
dest: spec.arguments.parameters.0.value
|
||||
29
infrastructures/argo-events/env/k3s-cluster/examples/workflow.yaml
vendored
Normal file
29
infrastructures/argo-events/env/k3s-cluster/examples/workflow.yaml
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
# This file enables a Workflow Pod (running Emissary executor) to be able to read and patch WorkflowTaskResults,
|
||||
# which get shared with the Workflow Controller. The Controller uses the results to update Workflow status.
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
annotations:
|
||||
workflows.argoproj.io/description: |
|
||||
Recomended minimum permissions for the `emissary` executor.
|
||||
name: executor
|
||||
rules:
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- workflowtaskresults
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: executor-default
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: executor
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: default
|
||||
Reference in New Issue
Block a user