stefanprodan
46579d2ee6
Refactor Gloo integration
...
- build Gloo UpstreamGroup clientset
- drop solo-io, envoyproxy, hcl, consul, opencensus, apiextensions deps
- use the native routers with supergloo
2019-10-21 16:33:47 +03:00
stefanprodan
cdcd97244c
Add the metrics server field to CRD
2019-10-17 11:36:25 +03:00
stefanprodan
9b36794c9d
Update App Mesh CRD
2019-10-14 20:26:46 +03:00
stefanprodan
45df96ff3c
Format imports
2019-10-06 12:54:01 +03:00
stefanprodan
67a6366906
Add service.targetPort field to Canary CRD
2019-10-06 10:04:21 +03:00
Stefan Prodan
9a9baadf0e
Merge pull request #311 from andrewjjenkins/mirror
...
Add traffic mirroring for Istio service mesh
2019-10-05 10:34:25 +03:00
Andrew Jenkins
e384b03d49
Add Traffic Mirroring for Istio Service Mesh
...
Traffic mirroring is a pre-stage for canary deployments. When mirroring
is enabled, at the beginning of a canary deployment traffic is mirrored
to the canary instead of shifted for one canary period. The service
mesh should mirror by copying the request and sending one copy to the
primary and one copy to the canary; only the response from the primary
is sent to the user. The response from the canary is only used for
collecting metrics.
Once the mirror period is over, the canary proceeds as usual, shifting
traffic from primary to canary until complete.
Added TestScheduler_Mirroring unit test.
2019-10-03 14:33:49 -06:00
Ben Wells
01962c32cd
Fix JSON tag on virtual node condition
2019-10-03 08:46:39 +01:00
stefanprodan
b58e13809c
Add promoting phase to canary status conditions
2019-09-23 21:48:09 +03:00
stefanprodan
8282f86d9c
Implement confirm-promotion hook
...
The confirm promotion hooks are executed right before the promotion step. The canary promotion is paused until the hooks return HTTP 200. While the promotion is paused, Flagger will continue to run the metrics checks and load tests.
2019-09-22 13:23:19 +03:00
stefanprodan
64f2288bdd
Add listeners to AppMesh virtual router
2019-08-10 10:58:20 +03:00
stefanprodan
69875cb3dc
Add finalising status phase to CRD
2019-07-29 13:43:30 +03:00
stefanprodan
04cbacb6e0
Implement confirm rollout gate and hook
...
The confirm-rollout hooks are executed before the pre-rollout hooks. Flagger will halt the canary rollout until the confirm webhook returns HTTP status 200.
2019-07-24 12:09:39 +03:00
stefanprodan
dfdcfed26e
Add Waiting canary status phase
...
means the canary rollout is paused (waiting for confirmation to proceed)
2019-07-24 12:00:04 +03:00
stefanprodan
b26542f38d
Do not trigger a canary deployment on manual rollback
...
Save the primary spec hash and check if it matches the canary spec. If the canary hash is identical with the primary one skip promotion.
2019-07-10 09:08:33 +03:00
stefanprodan
108bf9ca65
Add initializing canary phase/status condition reason
...
Fix HPA reconciliation min replicas diff
2019-07-09 17:10:43 +03:00
stefanprodan
438f952128
Implement status conditions
...
Add Promoted status condition with the following reasons: Initialized, Progressing, Succeeded, Failed
Usage: `kubectl wait canary/app --for=condition=promoted`
Fix : #184
2019-07-09 15:22:56 +03:00
stefanprodan
85ee7d17cf
Set min analysis interval to 10s
2019-07-01 09:23:05 +03:00
stefanprodan
4a9e3182c6
Add the mesh provider field to canary CRD
2019-06-20 14:50:21 +03:00
stefanprodan
2ebedd185c
Add port discovery field to canary service spec
2019-06-15 16:18:54 +03:00
stefanprodan
028933b635
Switch to go mod from dep
2019-06-11 19:37:36 +03:00
stefanprodan
2285bd210e
Add traffic policy to canary service spec
...
Attach traffic policy to canary and primary destination rules
2019-06-07 13:58:59 +03:00
stefanprodan
c243756802
Make Istio port selector optional
2019-06-07 13:22:39 +03:00
stefanprodan
27b1b882ea
Add destination rule to Istio clientset
2019-06-07 11:52:51 +03:00
stefanprodan
0e8b1ef20f
Generate the SMI TrafficSplit clientset
2019-05-11 12:49:23 +03:00
stefanprodan
921ac00383
Add ingress ref to CRD and RBAC
2019-05-06 18:33:00 +03:00
stefanprodan
e0fc5ecb39
Add hook type to CRD
...
- pre-rollout execute webhook before routing traffic to canary
- rollout execute webhook during the canary analysis on each iteration
- post-rollout execute webhook after the canary has been promoted or rolled back
Add canary phase to webhook payload
2019-04-13 15:37:41 +03:00
stefanprodan
b9075dc6f9
Update App Mesh to v1beta1
2019-03-26 20:29:40 +02:00
Trond Nordheim
f5b97fbb74
Add support for naming generated service ports
2019-03-21 12:37:02 +01:00
stefanprodan
b4ae060122
Move to weaveworks org
2019-03-20 18:26:04 +02:00
stefanprodan
59f5a0654a
Add AppMesh fields to Canary CRD
2019-03-16 14:11:24 +02:00
stefanprodan
6da2e11683
Add AppMesh CRDs and Kubernetes client
2019-03-16 14:10:09 +02:00
stefanprodan
62b906d30b
Add canary HTTP match conditions and iterations
2019-03-08 11:49:32 +02:00
stefanprodan
119c2ff464
Add CORS policy to Canary CRD
2019-03-06 15:33:53 +02:00
stefanprodan
7d0df82861
Add header manipulation rules to Canary CRD
2019-03-06 12:41:53 +02:00
stefanprodan
7f0cd27591
Add Header manipulation rules to Istio Virtual Service
2019-03-06 12:17:41 +02:00
stefanprodan
a8d8bb2d6f
Fix go fmt
2019-03-06 01:54:31 +02:00
stefanprodan
b0b6198ec8
Add Istio virtual service and signal packages
2019-03-06 01:43:09 +02:00
stefanprodan
c6e96ff1bb
Add append headers field to Canary CRD
2019-03-02 13:33:03 +02:00
stefanprodan
44d7e96e96
Add timeout and retries fields to Canary CRD
2019-02-28 00:02:01 +02:00
stefanprodan
5d81876d07
Make the metric interval optional
...
- set default value to 1m
2019-02-27 16:03:56 +02:00
stefanprodan
d148933ab3
Add metric query field to Canary CRD
2019-02-27 15:46:09 +02:00
stefanprodan
b3e7fb3417
Add HTTP match and rewrite to Canary service spec
2019-02-25 00:06:14 +02:00
stefanprodan
9b79af9fcd
Add skipAnalysis field to Canary CRD
2019-02-13 15:27:45 +02:00
stefanprodan
3fd039afd1
Add tracked configs checksum to canary status
2019-01-26 12:33:15 +02:00
stefanprodan
f7a439274e
Go format API types
2019-01-20 14:10:10 +02:00
stefanprodan
02236374d8
Run the wekbooks before the metrics checks
...
- log warning when no values are found for Istio metric due to lack of traffic
2019-01-20 13:54:44 +02:00
stefanprodan
1ef310f00d
Add traffic weight to canary status
...
- show current weight on kubectl get canaries and kubectl get all
2019-01-16 16:29:59 +02:00
stefanprodan
acdd2c46d5
Refactor Canary status
...
- add status phases (Initialized, Progressing, Succeeded, Failed)
- rename status revision to LastAppliedSpec
2019-01-16 15:06:38 +02:00
stefanprodan
aa2c28c733
Make autoscalerRef optional
...
- use anyOf as a workaround for the openAPI object validation not accepting empty values
- fix #23
2019-01-11 13:42:32 +02:00