diff --git a/ocp/deployments/manifests/basic/deployment_number_service.yaml b/ocp/deployments/manifests/basic/deployment_number_service.yaml new file mode 100644 index 0000000..c761484 --- /dev/null +++ b/ocp/deployments/manifests/basic/deployment_number_service.yaml @@ -0,0 +1,29 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: number-service + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + replicas: 1 + selector: + matchLabels: *labels + template: + metadata: + labels: *labels + spec: + containers: + - name: number-service + image: ghcr.io/leonsteinhaeuser/rh-ocp-examples-number:main + ports: + - containerPort: 8081 + resources: + limits: + cpu: 100m + memory: 32Mi + requests: + cpu: 10m + memory: 32Mi diff --git a/ocp/deployments/manifests/basic/deployment_view_service.yaml b/ocp/deployments/manifests/basic/deployment_view_service.yaml new file mode 100644 index 0000000..b3032ea --- /dev/null +++ b/ocp/deployments/manifests/basic/deployment_view_service.yaml @@ -0,0 +1,32 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: view-service + labels: &labels + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + replicas: 1 + selector: + matchLabels: *labels + template: + metadata: + labels: *labels + spec: + containers: + - name: view-service + image: ghcr.io/leonsteinhaeuser/rh-ocp-examples-view:main + ports: + - containerPort: 8080 + env: + - name: NUMBER_SERVICE_URL + value: http://number-service.apps-crc.testing + resources: + limits: + cpu: 100m + memory: 32Mi + requests: + cpu: 10m + memory: 32Mi diff --git a/ocp/deployments/manifests/basic/networkpolicy_number_service.yaml b/ocp/deployments/manifests/basic/networkpolicy_number_service.yaml new file mode 100644 index 0000000..299e73a --- /dev/null +++ b/ocp/deployments/manifests/basic/networkpolicy_number_service.yaml @@ -0,0 +1,22 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: number-service + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + podSelector: + matchLabels: *labels + policyTypes: + - Ingress + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo diff --git a/ocp/deployments/manifests/basic/route_view_service.yaml b/ocp/deployments/manifests/basic/route_view_service.yaml new file mode 100644 index 0000000..b297e4a --- /dev/null +++ b/ocp/deployments/manifests/basic/route_view_service.yaml @@ -0,0 +1,19 @@ +apiVersion: route.openshift.io/v1 +kind: Route +metadata: + name: view-service + labels: + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + host: view-service.apps-crc.testing + port: + targetPort: 8080 + tls: + insecureEdgeTerminationPolicy: None + termination: passthrough + to: + kind: Service + name: view-service diff --git a/ocp/deployments/manifests/basic/service_number_service.yaml b/ocp/deployments/manifests/basic/service_number_service.yaml new file mode 100644 index 0000000..4996984 --- /dev/null +++ b/ocp/deployments/manifests/basic/service_number_service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: number-service + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8081 + targetPort: 8081 + selector: *labels diff --git a/ocp/deployments/manifests/basic/service_view_service.yaml b/ocp/deployments/manifests/basic/service_view_service.yaml new file mode 100644 index 0000000..2dc4e67 --- /dev/null +++ b/ocp/deployments/manifests/basic/service_view_service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: view-service + labels: &labels + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8080 + targetPort: 8080 + selector: *labels diff --git a/ocp/deployments/manifests/progressive/networkpolicy_number_service.yaml b/ocp/deployments/manifests/progressive/networkpolicy_number_service.yaml new file mode 100644 index 0000000..299e73a --- /dev/null +++ b/ocp/deployments/manifests/progressive/networkpolicy_number_service.yaml @@ -0,0 +1,22 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: number-service + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + podSelector: + matchLabels: *labels + policyTypes: + - Ingress + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo diff --git a/ocp/deployments/manifests/progressive/rollout_number_service.yaml b/ocp/deployments/manifests/progressive/rollout_number_service.yaml new file mode 100644 index 0000000..300c156 --- /dev/null +++ b/ocp/deployments/manifests/progressive/rollout_number_service.yaml @@ -0,0 +1,48 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Rollout +metadata: + name: rollouts-demo + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + replicas: 3 + strategy: + canary: + canaryService: number-service-canary + stableService: number-service + trafficRouting: + plugins: + argoproj-labs/openshift: + routes: + - number-service + steps: + - setWeight: 20 + - pause: {} + - setWeight: 40 + - pause: {duration: 45} + - setWeight: 60 + - pause: {duration: 20} + - setWeight: 80 + - pause: {duration: 10} + revisionHistoryLimit: 2 + selector: + matchLabels: *labels + template: + metadata: + labels: *labels + spec: + containers: + - name: number-service + image: ghcr.io/leonsteinhaeuser/rh-ocp-examples-number:main + ports: + - containerPort: 8081 + resources: + limits: + cpu: 100m + memory: 32Mi + requests: + cpu: 10m + memory: 32Mi diff --git a/ocp/deployments/manifests/progressive/rollout_view_service.yaml b/ocp/deployments/manifests/progressive/rollout_view_service.yaml new file mode 100644 index 0000000..4d7eedd --- /dev/null +++ b/ocp/deployments/manifests/progressive/rollout_view_service.yaml @@ -0,0 +1,51 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Rollout +metadata: + name: view-service + labels: &labels + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + replicas: 3 + strategy: + canary: + canaryService: view-service-canary + stableService: view-service + trafficRouting: + plugins: + argoproj-labs/openshift: + routes: + - view-service + steps: + - setWeight: 20 + - pause: {} + - setWeight: 40 + - pause: {duration: 45} + - setWeight: 60 + - pause: {duration: 20} + - setWeight: 80 + - pause: {duration: 10} + revisionHistoryLimit: 2 + selector: + matchLabels: *labels + template: + metadata: + labels: *labels + spec: + containers: + - name: view-service + image: ghcr.io/leonsteinhaeuser/rh-ocp-examples-view:main + ports: + - containerPort: 8080 + env: + - name: NUMBER_SERVICE_URL + value: http://number-service.apps-crc.testing + resources: + limits: + cpu: 100m + memory: 32Mi + requests: + cpu: 10m + memory: 32Mi diff --git a/ocp/deployments/manifests/progressive/route_number_service.yaml b/ocp/deployments/manifests/progressive/route_number_service.yaml new file mode 100644 index 0000000..771d224 --- /dev/null +++ b/ocp/deployments/manifests/progressive/route_number_service.yaml @@ -0,0 +1,24 @@ +apiVersion: route.openshift.io/v1 +kind: Route +metadata: + name: number-service + labels: + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + host: number-service.apps-crc.testing + port: + targetPort: 8081 + to: + kind: Service + name: number-service + weight: 100 + alternateBackends: + - kind: Service + name: number-service-canary + weight: 0 + endpointPublishingStrategy: + scope: Internal + type: LoadBalancerService diff --git a/ocp/deployments/manifests/progressive/route_view_service.yaml b/ocp/deployments/manifests/progressive/route_view_service.yaml new file mode 100644 index 0000000..5bf30bb --- /dev/null +++ b/ocp/deployments/manifests/progressive/route_view_service.yaml @@ -0,0 +1,24 @@ +apiVersion: route.openshift.io/v1 +kind: Route +metadata: + name: view-service + labels: + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + host: view-service.apps-crc.testing + port: + targetPort: 8080 + tls: + insecureEdgeTerminationPolicy: None + termination: passthrough + to: + kind: Service + name: view-service + weight: 100 + alternateBackends: + - kind: Service + name: view-service-canary + weight: 0 diff --git a/ocp/deployments/manifests/progressive/service_number_service.yaml b/ocp/deployments/manifests/progressive/service_number_service.yaml new file mode 100644 index 0000000..b98608d --- /dev/null +++ b/ocp/deployments/manifests/progressive/service_number_service.yaml @@ -0,0 +1,29 @@ +apiVersion: v1 +kind: Service +metadata: + name: number-service + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8081 + targetPort: 8081 + selector: *labels +--- +apiVersion: v1 +kind: Service +metadata: + name: number-service-canary + labels: &labels + app.kubernetes.io/name: number-service + app.kubernetes.io/instance: number-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8081 + targetPort: 8081 + selector: *labels diff --git a/ocp/deployments/manifests/progressive/service_view_service.yaml b/ocp/deployments/manifests/progressive/service_view_service.yaml new file mode 100644 index 0000000..85a9f10 --- /dev/null +++ b/ocp/deployments/manifests/progressive/service_view_service.yaml @@ -0,0 +1,29 @@ +apiVersion: v1 +kind: Service +metadata: + name: view-service + labels: &labels + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8080 + targetPort: 8080 + selector: *labels +--- +apiVersion: v1 +kind: Service +metadata: + name: view-service-canary + labels: &labels + app.kubernetes.io/name: view-service + app.kubernetes.io/instance: view-service + app.kubernetes.io/component: api + app.kubernetes.io/part-of: microservies-demo +spec: + ports: + - port: 8080 + targetPort: 8080 + selector: *labels