1006 Commits
Author SHA1 Message Date
Anton Kislitcyn f56b6dd6a7 Add annotations prefix for ingresses 2019-09-06 11:36:06 +02:00
Jeff WenzbauerandGitHub 0421b32834 Enhanced error logging
Updated the formatting of the `out` to be logged as a string rather than a bunch of bytes.
2019-08-28 12:43:08 -06:00
stefanprodan 2cfe2a105a Release Flagger v0.18.3 2019-08-22 18:30:46 +03:00
stefanprodan 0a418eb88a Add notifier tests 2019-08-12 09:47:11 +03:00
stefanprodan 040dbb8d03 Add http listener to virtual router reconciliation 2019-08-10 11:04:15 +03:00
stefanprodan 64f2288bdd Add listeners to AppMesh virtual router 2019-08-10 10:58:20 +03:00
stefanprodan a305a0b705 Release v0.18.2 2019-08-05 18:43:57 +03:00
Félix Cantournet 0ca48d77be Fix Port discovery with multiple port services
This fixes issue https://github.com/weaveworks/flagger/issues/263

We actually don't need to specify any ports in the VirtualService
and DestinationRules.
Istio will create clusters/listerners for each named port we have declared in
the kubernetes services and the router can be shared as it operates only on L7 criterias

Also contains a tiny clean-up of imports
2019-08-02 10:07:00 +02:00
stefanprodan e8d91a0375 Release v0.18.1 2019-07-30 13:22:51 +03:00
stefanprodan c31e9e5a96 Use Linkerd metrics for ingress and kubernetes routers 2019-07-30 13:00:28 +03:00
stefanprodan 11d84bf35d Enable kubernetes metric provider 2019-07-30 12:27:53 +03:00
stefanprodan fc676e3cb7 Release v0.18.0 2019-07-29 15:06:30 +03:00
stefanprodan c463b6b231 Add finalising state tests 2019-07-29 14:02:16 +03:00
stefanprodan b2ca0c4c16 Implement finalising state
Set the canary status to finalising after routing the traffic back to the primary. Run one final loop before scaling the canary to zero so that the canary has a chance to process all inflight requests.
2019-07-29 13:52:11 +03:00
stefanprodan 69875cb3dc Add finalising status phase to CRD 2019-07-29 13:43:30 +03:00
stefanprodan 163f5292b0 Push a notification when a canary is waiting for approval 2019-07-25 19:13:22 +03:00
stefanprodan f204fe53f4 Implement canary gating API with in-memory storage
POST /gate/[check|open|close]
2019-07-24 16:14:22 +03:00
stefanprodan 28e7e89047 Pause or resume analysis on confirmation gate toggle 2019-07-24 16:09:13 +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 919dafa567 Add gate halt and approve endpoints 2019-07-24 12:02:44 +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 ff4aa62061 Retry canary status update on conflict 2019-07-10 11:31:20 +03:00
stefanprodan 9d89e0c83f Log status update error 2019-07-10 09:55:20 +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 3e84799644 Detect changes in pod template metadata
Use the pod template spec hash to track changes (breaking)
2019-07-09 08:52:31 +03:00
stefanprodan 78233fafd3 Release v0.17.0 2019-07-08 13:35:36 +03:00
stefanprodan 10c61daee4 Exit when losing leadership 2019-07-07 13:09:05 +03:00
stefanprodan b847345308 Add 5 seconds timeout to notifier 2019-07-06 18:02:45 +03:00
stefanprodan 8ca9cf24bb Implement MS Teams notifier 2019-07-06 17:14:21 +03:00
stefanprodan 61d0216c21 Add traffic routing to notifications 2019-07-06 17:13:09 +03:00
stefanprodan ba4a2406ba Refactor notifier to allow more implementations 2019-07-06 15:47:12 +03:00
stefanprodan 85ee7d17cf Set min analysis interval to 10s 2019-07-01 09:23:05 +03:00
stefanprodan ad8d02f701 Use Linkerd metrics when NGINX is the mesh ingress
Set the metrics provider to Linkerd Prometheus when using NGINX as Linkerd Ingress. This mitigates the lack of canary metrics in the NGINX controller exporter.
2019-06-30 13:03:27 +03:00
stefanprodan 00fa5542f7 Add linkerd as mesh provider 2019-06-30 12:46:23 +03:00
stefanprodan d651e8fe48 Fix Linkerd metrics test 2019-06-29 15:23:40 +03:00
stefanprodan e3321118e5 Fix linkerd success rate query 2019-06-29 15:03:36 +03:00
stefanprodan 93f37a3022 Update primary HPA only when canary changed 2019-06-24 16:21:22 +03:00
stefanprodan d076f0859e Release v0.16.0 2019-06-23 13:48:39 +03:00
Stefan ProdanandGitHub 6800181594 Merge pull request #217 from weaveworks/provider
Add the service mesh provider to the canary spec
2019-06-21 11:13:17 +03:00
stefanprodan fd23a2f98f Add kubernetes provider type
Synonym to provider `none`, to be used for blue/green deployments
2019-06-20 15:18:48 +03:00
stefanprodan 63cb8a5ba5 Lookup the canary provider field during reconciliation
Override the global provider if one is specified in the canary spec
2019-06-20 14:52:43 +03:00
stefanprodan 4a9e3182c6 Add the mesh provider field to canary CRD 2019-06-20 14:50:21 +03:00
stefanprodan dcadc2303f Add HPA promotion tests 2019-06-20 13:31:34 +03:00
stefanprodan cf5f364ed2 Update the primary HPA on canary promotion 2019-06-20 13:30:55 +03:00
stefanprodan 647d02890f Add HTTP metrics when no mesh provider is specified
Implement request-success-rate and request-duration checks using http_request_duration_seconds histogram
2019-06-19 13:15:17 +03:00
stefanprodan 9fada306f0 Add a service mesh provider of type none
To be used for Kubernetes blue/green deployments with the no-operations router
2019-06-19 12:02:40 +03:00
stefanprodan 8d1cc83405 Add a no-operation router
To be used for Kubernetes blue/green deployments (no service mesh or ingress controller)
2019-06-19 12:01:02 +03:00
stefanprodan bf7ebc9708 Skip readiness check on init for Istio SMI 2019-06-19 11:16:11 +03:00