mathetake
22f860a3a3
refactor pkg/controller
2020-03-08 16:06:53 +09:00
mathetake
2ec24bb17d
pkg/metrics/providers: wrap ErrNoValuesFound and modify controller accordingly
2020-03-08 00:17:52 +09:00
mathetake
5af1665ef8
pkg/controller: add unit test for daemonset target
2020-02-23 13:39:11 +09:00
stefanprodan
1a87a9be45
Implement notifications based on alert providers and severity
2020-02-10 15:25:56 +02:00
stefanprodan
898edee67e
Refactor Flagger APIs and tests
...
- add CrossNamespaceObjectReference type
- add informers collection to controller
- use the informer cache to query for metric templates
- rename mock to fixture
- regenerate clientset
2020-02-10 10:36:31 +02:00
stefanprodan
448c210324
Release API version v1beta1
...
- bump Canary and MetricTemplate version to v1beta1
- regenerate clientset and CRD
2020-02-07 12:35:56 +02:00
stefanprodan
eec287a501
Check if CRDs are registered before starting informers
2020-02-06 15:07:53 +02:00
stefanprodan
d7d9d1eabe
Migrate the builtin Prometheus checks to metric templates
2020-02-06 15:07:53 +02:00
stefanprodan
940e547e88
Implement service name override
...
Use targetRef.name as the Kubernetes service name prefix only if service name is not specified
Warn about routing conflicts when service name changes
2020-01-26 12:48:49 +02:00
stefanprodan
4776b1d285
Implement events dispatching for the event webhook type
2020-01-15 14:12:22 +02:00
Michael Parker
1d5029d607
Merge branch 'event-webhook' of github.com:mrparkers/flagger into event-webhook
2020-01-07 09:39:13 -06:00
Michael Parker
e6d1880c93
use correct event type
2020-01-07 09:38:14 -06:00
Michael Parker
6da533090a
Update controller.go
2020-01-06 19:12:39 -06:00
Michael Parker
38dfda9d8f
add event-webhook command line flag
2020-01-06 16:35:42 -06:00
stefanprodan
4454c9b5b5
Add canary factory for Kubernetes targets
...
- extract Kubernetes operations to controller interface
- implement controller interface for kind Deployment
2019-11-25 18:45:19 +02:00
stefanprodan
45df96ff3c
Format imports
2019-10-06 12:54:01 +03:00
stefanprodan
9d89e0c83f
Log status update error
2019-07-10 09:55:20 +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
10c61daee4
Exit when losing leadership
2019-07-07 13:09:05 +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
0032c14a78
Refactor metrics
...
- add observer interface with builtin metrics functions
- add metrics observer factory
- add prometheus client
- implement the observer interface for istio, envoy and nginx
- remove deprecated istio and app mesh metric aliases (istio_requests_total, istio_request_duration_seconds_bucket, envoy_cluster_upstream_rq, envoy_cluster_upstream_rq_time_bucket)
2019-05-13 17:34:08 +03:00
Yuval Kohavi
156488c8d5
Merge remote-tracking branch 'origin/master' into supergloo-updated
2019-04-17 18:24:41 -04:00
Yuval Kohavi
868482c240
basics seem working!
2019-04-16 15:10:08 -04:00
stefanprodan
6ef72e2550
Make the pod selector configurable
...
- default labels: app, name and app.kubernetes.io/name
2019-04-15 12:57:25 +03:00
stefanprodan
60f51ad7d5
Move deployer and config tracker to canary package
2019-04-15 11:27:08 +03:00
stefanprodan
6a080f3032
Rename observer and recorder
2019-03-30 11:49:43 +02:00
stefanprodan
b2c12c1131
Move observer to metrics package
2019-03-30 11:45:39 +02:00
stefanprodan
025785389d
Refactor Prometheus recorder
...
- add flagger_info gauge metric
- expose the version and mesh provider as labels
- move the recorder to the metrics package
2019-03-28 11:58:19 +02:00
stefanprodan
b4ae060122
Move to weaveworks org
2019-03-20 18:26:04 +02:00
stefanprodan
7d340c5e61
Change mesh providers based on cmd flag
2019-03-17 10:52:52 +02:00
stefanprodan
b0b6198ec8
Add Istio virtual service and signal packages
2019-03-06 01:43:09 +02:00
stefanprodan
42b850ca52
Replace controller routing management with router pkg
2019-03-05 02:04:55 +02:00
stefanprodan
71cd4e0cb7
Include ConfigMaps and Secrets in promotion
...
- create primary configs and secrets at bootstrap
- copy configs and secrets from canary to primary and update the pod spec on promotion
2019-01-25 16:03:51 +02:00
stefanprodan
1d31b5ed90
Add canary name and namespace to controller logs
...
- zap key-value: canary=name.namespace
2019-01-17 13:58:10 +02:00
stefanprodan
bec96356ec
Bump CRD version to v1alpha3
...
- new field canaryAnalysis.interval
2019-01-07 01:03:31 +02:00
stefanprodan
e6e3e500be
Schedule canary analysis based on interval
2019-01-07 00:26:01 +02:00
stefanprodan
0d96bedfee
Add webhooks to Canary CRD v1alpha2
2018-12-26 13:42:36 +02:00
Stefan Prodan
03408683c0
Add details to Slack messages
...
- attach canary analysis metadata to init/start messages
- add rollback reason to failed canary messages
2018-12-06 12:51:02 +07:00
Stefan Prodan
769aff57cb
Add Slack notifications for canary events
2018-11-25 11:44:45 +02:00
Stefan Prodan
1b2108001f
Add Prometheus registry flag to recorder
...
- fix tests
2018-10-29 14:04:45 +02:00
Stefan Prodan
4a8aa3b547
Add recorder component
...
- records the canary analysis status and current weight as Prometheus metrics
2018-10-29 11:25:36 +02:00
Stefan Prodan
344c7db968
Make golint happy and add codecov
2018-10-23 16:36:48 +03:00
Stefan Prodan
663dc82574
Controller refactoring part two
...
- share components between loops
2018-10-11 20:51:12 +03:00
Stefan Prodan
baeee62a26
Controller refactoring
...
- split controller logic into components (deployer, observer, router and scheduler)
- set the canary analysis final state (failed or finished) in a single run
2018-10-11 19:59:40 +03:00
Stefan Prodan
a4f890c8b2
Add autoscaling support
...
- add HorizontalPodAutoscaler reference to CRD
- create primary HPA on canary bootstrap
2018-10-11 11:16:56 +03:00
Stefan Prodan
302de10fec
Canary CRD refactoring
...
- set canaries.flagger.app version to v1alpha1
- replace old Canary spec with CanaryDeployment
2018-10-11 01:43:53 +03:00
Stefan Prodan
c3f4f0a925
Rename project to flagger
2018-10-07 13:08:42 +03:00
Stefan Prodan
10dfea4203
Rename CRD group and kind name to canaries.steerer.app
2018-10-04 14:52:36 +03:00
Stefan Prodan
7993ae100b
Refactor canary analysis
...
- move CRD metrics and weight setting to canary analysis
- add max weight to CRD spec
2018-09-29 11:08:40 +03:00