Commit Graph

63 Commits

Author SHA1 Message Date
Jirka Kremser 9047390737
migrate from v1.Endpoints to discoveryv1.EndpointSlices (#1298)
* Migration to EndpointSlices

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>

* finish migration from v1.Endpoints to discoveryv1.EndpointSlices

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* handle multiple EndpointSlices per service

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* remove deletecollection rbac for endpoint slices

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

---------

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>
Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>
Co-authored-by: Jan Wozniak <wozniak.jan@gmail.com>
2025-09-18 14:42:54 +02:00
Guilhem Lettron 1ae653f3e3
feat(middleware-logging): implement http.Hijacker (#835)
* feat(middleware-logging): implement http.Hijacker

http.Hijacker is mandatory to forward websocket connexions

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

* test: add e2e testing

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

* fix: mock imports

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

* fix: indentation in tests

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

* lint: avoid some tests

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>

---------

Signed-off-by: Guilhem Lettron <guilhem@barpilot.io>
2025-08-07 21:06:17 +00:00
Tristan Smagghe d032b8b4f1
feat: add fallbackTargetRef to CRD and required changes (#1280)
Signed-off-by: yyewolf <yyewolf@gmail.com>
2025-08-07 11:05:24 +02:00
Jorge Turrado Ferrero 9afe55b5fc
chore: Bump go version and deps (#1305)
* chore: Bump go version and deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Bump golangci

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Bump golangci

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
2025-07-25 11:34:31 +00:00
Alexander Pykavy bf355649c6
Implement HTTPScaledObject scoped timeout (#1285)
* Implement HTTPScaledObject scoped timeout

Signed-off-by: Alexander Pykavy <aleksandrpykavyj@gmail.com>

* Add tests for HTTPScaledObject scoped timeout

Signed-off-by: Alexander Pykavy <aleksandrpykavyj@gmail.com>

---------

Signed-off-by: Alexander Pykavy <aleksandrpykavyj@gmail.com>
2025-07-11 07:41:43 +00:00
ilia-medvedev-codefresh 29a6c2b509
feat(interceptor): Add possibility to skip tls verification for upstreams (#1307)
* Feat(interceptor): Add possibility to skip tls verification for upstreams

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Update readme

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Update CHANGELOG.md

Signed-off-by: ilia-medvedev-codefresh <ilia.medvedev@codefresh.io>

* run goimports

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
Signed-off-by: ilia-medvedev-codefresh <ilia.medvedev@codefresh.io>
2025-07-10 13:34:49 +00:00
Jirka Kremser dc863c6fcd
Add a way to turn off the profiling for all three http add-on components (#1308)
* Add a way to turn off the profiling for all three http add-on components

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>

* linter - The linter 'exportloopref' is deprecated (since v1.60.2) due to: Since Go1.22 (loopvar) this linter is no longer relevant. Replaced by copyloopvar.

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>

---------

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>
2025-06-17 13:32:02 +02:00
bhussain91 d2bed33270
feat: Add support for tracing (#1021)
Signed-off-by: Bilal Hussain <bilal.hussain@10xbanking.com>
Signed-off-by: bhussain91 <161487948+bhussain91@users.noreply.github.com>
2025-05-19 10:51:45 +02:00
Jorge Turrado Ferrero 30e3ecc2ea
chore(deps): bump the all-updates group across 1 directory with 11 up… (#1268)
* chore(deps): bump the all-updates group across 1 directory with 11 updates

Bumps the all-updates group with 7 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/google/go-cmp](https://github.com/google/go-cmp) | `0.6.0` | `0.7.0` |
| [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) | `2.22.2` | `2.23.0` |
| [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) | `1.34.0` | `1.35.0` |
| [go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp](https://github.com/open-telemetry/opentelemetry-go) | `1.34.0` | `1.35.0` |
| [golang.org/x/sync](https://github.com/golang/sync) | `0.11.0` | `0.12.0` |
| [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) | `1.20.5` | `1.21.1` |
| [go.opentelemetry.io/otel/exporters/prometheus](https://github.com/open-telemetry/opentelemetry-go) | `0.56.0` | `0.57.0` |



Updates `github.com/google/go-cmp` from 0.6.0 to 0.7.0
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](https://github.com/google/go-cmp/compare/v0.6.0...v0.7.0)

Updates `github.com/onsi/ginkgo/v2` from 2.22.2 to 2.23.0
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.22.2...v2.23.0)

Updates `go.opentelemetry.io/otel` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.34.0...v1.35.0)

Updates `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.34.0...v1.35.0)

Updates `go.opentelemetry.io/otel/sdk` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.34.0...v1.35.0)

Updates `golang.org/x/sync` from 0.11.0 to 0.12.0
- [Commits](https://github.com/golang/sync/compare/v0.11.0...v0.12.0)

Updates `google.golang.org/grpc` from 1.70.0 to 1.71.0
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.70.0...v1.71.0)

Updates `github.com/prometheus/client_golang` from 1.20.5 to 1.21.1
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.5...v1.21.1)

Updates `go.opentelemetry.io/otel/exporters/prometheus` from 0.56.0 to 0.57.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/exporters/prometheus/v0.56.0...exporters/prometheus/v0.57.0)

Updates `go.opentelemetry.io/otel/metric` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.34.0...v1.35.0)

Updates `go.opentelemetry.io/otel/sdk/metric` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.34.0...v1.35.0)

---
updated-dependencies:
- dependency-name: github.com/google/go-cmp
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel/exporters/prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel/metric
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
- dependency-name: go.opentelemetry.io/otel/sdk/metric
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-updates
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix the test

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 13:09:30 +01:00
Zbynek Roubalik 20478e7f2d
bump go to 1.23.6 (#1258)
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
2025-02-20 18:37:28 +01:00
Jorge Turrado Ferrero 4bfcd9fc6d
chore: Bump deps (#1225)
* chore: Bump deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bump go versions

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
2024-12-26 16:49:23 +01:00
Manuel Boillod ade3bb090b
add support for AWS ELB healthcheck probe (#1199)
Signed-off-by: Manuel Boillod <manuel.boillod@ratp.fr>
Co-authored-by: Manuel Boillod <manuel.boillod@ratp.fr>
2024-12-03 18:50:43 +00:00
Jan Wozniak f5ab058701
support portName in HTTPScaledObject service scaleTargetRef (#1174)
* support portName in HTTPScaledObject service scaleTargetRef

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* mutually exclusive port and portName

Co-authored-by: Jirka Kremser <535866+jkremser@users.noreply.github.com>
Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* make manifests

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* fix CEL syntax

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* e2e test for portName

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* use service lister instead of endpoints cache to get port from portName

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

* docs for v0.8.1 HTTPScaledObject

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>

---------

Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>
Co-authored-by: Jirka Kremser <535866+jkremser@users.noreply.github.com>
2024-10-25 09:13:36 +02:00
Zbynek Roubalik 5d2e0add55
bump deps (#1135)
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
2024-10-23 19:21:14 +00:00
Jan Wozniak 8a1d49050a
feat: support setting multiple TLS certs for different domains on the interceptor proxy (#1116)
Signed-off-by: Jan Wozniak <wozniak.jan@gmail.com>
2024-08-27 14:13:49 +02:00
Zbynek Roubalik cf2c4a98eb
feat!: remove deprecated `spec.scaleTarget.deployment` field (#1060)
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
2024-06-24 13:31:42 +00:00
zorocloud 84a9560331
fix: aligning the interceptor metrics vars with the OTEL spec (#1039)
* fix: aligning the interceptor metrics vars with the OTEL spec

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

* chore: update skip urls in linkinator GithubAction

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

* chore: removing unused metricsCfg references

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

---------

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>
2024-06-24 12:08:25 +00:00
zorocloud 38f50bfb0a
feat: Adding support to the interceptor proxy for TLS on the wire (#928)
* feat: Adding support to the interceptor proxy for TLS on the wire

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

* chore: adding e2e tests and tidying up changes

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

* chore: changing interceptor tls port for e2e tests

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

---------

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>
2024-05-01 19:47:18 +02:00
Jorge Turrado Ferrero 7feda00373
chore: bump go and deps (#991)
* chore: bump go and deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bump linter

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bumps deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bumps deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bump deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update CIs

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update manifests

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* .

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix kustomize

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* some updates

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* pin deps

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>

* bump deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* bump deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>
2024-04-30 21:17:04 +00:00
zorocloud 0237611b6a
feat: add support to collect metrics using the OTEL library (#927)
* feat: Add support to collect metrics using either a prometheus compatible endpoint or by sending metrics to an OTEL http endpoint

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

* fix: use UpDounCounter rather than gauge for pending request count and
specify otel image for e2e tests

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>

---------

Signed-off-by: Joe Wogan <joe.wogan@10xbanking.com>
2024-04-24 08:06:54 +00:00
Jorge Turrado Ferrero a4f9f39ac5
feat: Support aggregation options (#961)
* feat: Support aggregation options

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Updates

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Updates

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix changelog

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* style & codegen

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* add mocks

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update docs

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix e2e test

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* merge issues

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update manifests

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
2024-04-10 21:41:18 +00:00
Jorge Turrado Ferrero e658582052
chore: Bump deps (#884)
* bump deps

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update codegen

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix link

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update linter

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update keda and k8s versions

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
2024-01-19 17:00:54 +01:00
Sam Critchley 15718d165a
Set the proxy RawPath to original requests RawPath (#873)
Signed-off-by: Sam Critchley <critchley.sj@gmail.com>
2024-01-04 10:47:38 +00:00
Max Moeschinger 814f33330d
Add new probe user agent (#863)
* Add new user agent probe

Signed-off-by: Max Moeschinger <max@birdsview.no>

* Add fix information to changelog

Signed-off-by: Max Moeschinger <max@birdsview.no>

* Update CHANGELOG.md

Co-authored-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>
Signed-off-by: Max Moeschinger <maxmoeschinger@users.noreply.github.com>

---------

Signed-off-by: Max Moeschinger <max@birdsview.no>
Signed-off-by: Max Moeschinger <maxmoeschinger@users.noreply.github.com>
Co-authored-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>
2023-12-22 08:30:54 +00:00
Jorge Turrado Ferrero 214431250a
feat: Add support for any resource which implementes `/scale` subresource (#852) 2023-12-13 16:33:28 +01:00
Jorge Turrado Ferrero bd556c794f
chore: bump deps (#853) 2023-12-10 14:49:04 +01:00
Itay Ariel 0a1d1ded4e
feat: flush writes to http response on every chunk (#743)
Co-authored-by: Jorge Turrado <jorge.turrado@scrm.lidl>
2023-10-04 21:38:30 +02:00
Jorge Turrado Ferrero ee89db0759
chore: bump deps (#800) 2023-10-04 11:07:16 +02:00
Cookie fe493ad3f0
doc: correct the sentence structure (#782) 2023-09-13 08:02:31 +02:00
Jorge Turrado Ferrero 04204c20bd
chore: bump deps (#700) 2023-08-22 14:10:09 +02:00
similark fe035b9682
interceptor: don't override Host header (#746) 2023-07-31 12:55:02 +02:00
Pedro Tôrres a3039f6135
Fix Graceful Shutdown of Interceptor and Scaler (#732)
Co-authored-by: Tom Kerkhove <kerkhove.tom@gmail.com>
2023-07-14 10:36:29 +02:00
Pedro Tôrres fb17e777c9
HTTPSO-based Routing Table (#669) 2023-06-15 00:33:59 +02:00
Pedro Tôrres 1bfc7abcb5
operator: upgrade kubebuilder to v3 (#626) 2023-03-09 10:37:20 +01:00
Pedro Tôrres 653ddb64d3
rbac: narrow permissions (#613)
* fix(rbac): narrow permissions

Signed-off-by: Pedro Tôrres <pedrotorres@microsoft.com>

* feat(rbac): generate manifests with kubebuilder

Signed-off-by: Pedro Tôrres <pedrotorres@microsoft.com>

---------

Signed-off-by: Pedro Tôrres <pedrotorres@microsoft.com>
Signed-off-by: Pedro Tôrres <t0rr3sp3dr0@gmail.com>
2023-03-02 08:36:55 +01:00
Pedro Tôrres 1bd8ba1180
routing: lookup host without port (#609)
Co-authored-by: Pedro Tôrres <pedrotorres@microsoft.com>
2023-02-25 01:11:23 +00:00
Jorge Turrado Ferrero b5c41c8c2a
chore: add golangci-lint (#584) 2023-01-27 08:52:15 +01:00
Jorge Turrado Ferrero 3f326b1b50
chore: bump deps (#581)
Co-authored-by: Tom Kerkhove <kerkhove.tom@gmail.com>
2023-01-25 09:38:45 +00:00
Jorge Turrado Ferrero 4764c18c93
chore: Bump deps and go version (#572) 2023-01-13 20:07:49 +01:00
Jorge Turrado Ferrero 50e4958f79
feat: use make for scripting unifying the KEDA tools (#564)
* feat: use make for scripting

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>

* Update CONTRIBUTING.md

Co-authored-by: Tom Kerkhove <kerkhove.tom@gmail.com>
Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>

* Update CONTRIBUTING.md

Co-authored-by: Tom Kerkhove <kerkhove.tom@gmail.com>
Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>

* Update config/interceptor/interceptor.yaml

Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>

* apply feedback

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>
Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>
Co-authored-by: Tom Kerkhove <kerkhove.tom@gmail.com>
2023-01-13 16:20:53 +01:00
Aaron Schlesinger bc165b7287
Upgrading to go 1.18 (#416)
* upgrading to go 1.18

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Bump to 1.18.3

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>

Co-authored-by: Aaron Wislang <aaron.wislang@microsoft.com>
2022-06-20 22:37:30 +00:00
Aaron Wislang 08b0509400
Compile binaries and docker images with git SHA (#377)
* Compile binaries and docker images with git SHA

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>
Signed-off-by: Ubuntu <azureuser@vm1.dwkkbikwkshepl1jlyp52keone.bx.internal.cloudapp.net>

* Fix test

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>
Signed-off-by: Ubuntu <azureuser@vm1.dwkkbikwkshepl1jlyp52keone.bx.internal.cloudapp.net>

* Apply suggestions from @arschles

Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
Signed-off-by: Ubuntu <azureuser@vm1.dwkkbikwkshepl1jlyp52keone.bx.internal.cloudapp.net>

Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
2022-01-24 23:39:02 +00:00
Aaron Wislang a65ceb05bf
Return custom header when request was returned from a cold start (#366)
* Add X-KEDA-HTTP-Cold-Start header

- Add X-KEDA-HTTP-Cold-Start header
- Change signature of forwardWaitFunc to include deployment.Status.ReadyReplicas

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>

* Update tests for X-KEDA-HTTP-Cold-Start header

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>

* Update interceptor/main_test.go

Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>

* add bracket

Signed-off-by: Aaron Wislang <aaron.wislang@microsoft.com>

Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
2022-01-19 23:23:57 +00:00
Aaron Schlesinger eb4e1e9f42
Allowing cluster-global operation (#269)
* Allowing cluster-global operation

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* passing less unnecessary data in the operator

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* setting namespace

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* updating tests:

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Updating deployment cache interfaces

To accommodate multi-namespace gets and watches

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* starting on deployment cache informer

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* switching over to informer-based deployment cache

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* fixing test compile errors and merging fake and in-memory deployment caches

Signed-off-by: Aaron <aaron@ecomaz.net>

* fixing tests

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* fixing more compile errs

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* improving logging, and several other small changes

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* go mod tidy

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Adding config validation

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* improving ns and svc name var names to indicate interceptor

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* running go mod tidy

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* removing unused code

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* passing a function to transform target to in-cluster URL

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* not requiring namespace for operator

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* splitting namespace config for operator into watch and current

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* removing appInfo, passing current namespace everywhere in its place

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* using proper namespace when creating scaled object

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* allowing xkcd chart to set ingress namespace

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* printing namespace in error

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* using proper fully-qualified hostname of external scaler in scaledobject

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding note on cluster-global vs. namespaced mode

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding note about installing the xkcd chart in cluster-global mode

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* fixing hostname test

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* merging scaler queue counts with routing table hosts. removing merge functionality from interceptors

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* fix assumption in tests that queue has all hosts from routing table

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding test for MergeCountsWithRoutingTable

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* sleep for longer to wait for server to start

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding handler test for merging hosts

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding test to GetMetrics test cases for host not in queue pinger

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>
2022-01-13 14:50:49 -08:00
Aaron Schlesinger c076979b19
Upgrading images to use Go 1.17.2 (#349) 2021-12-15 08:25:15 +01:00
laminar 201c7cb7bf
Add configMap informer (#326)
Signed-off-by: laminar <fangtian@kubesphere.io>
Signed-off-by: laminar <fangtian@kubesphere.io>

Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
2021-12-14 10:06:27 -08:00
Aaron Schlesinger 93bf69958e
adding test for interceptor headers and redirection (#258)
Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
2021-10-25 12:43:07 -07:00
Aaron Schlesinger 41e86c124a
Follow-up tests for multi-tenant work (#279)
* add test for addEvt in deployment cache

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Adding TestRunProxyServerCountMiddleware

Currently failing :)

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding resize timeout to the queue fake

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* StartTestServer => NewTestServer

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* StartTestServer => NewTestServer

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Going back to StartTestServer

I forgot that it actually does start the test server in the background

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* using targetFromURL

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* more StartTestServer

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* Keeping track of the running queue count in the fake

Also protecting that map with a mutex

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* finishing the interceptor test

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding test comment

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* more movement over to targetFromURL

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* additional checks

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>
2021-10-25 12:33:02 -07:00
Aaron Schlesinger a3aeb62a4d
Adding config endpoints on admin servers for scaler, interceptor and operator (#280)
* adding config endpoint to interceptor

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding documentation about configuration  endpointss

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* adding operator and scaler config endpoints

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* testing scaler and operator

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* serving operator and scaler admin servers on random ports for tests

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* implementing json.Marshaler for FakeDeploymentCache

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* implementing TestRunAdminServerDeploymentsEndpoint

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>
2021-10-25 11:38:53 -07:00
Aaron Schlesinger f8d7c0bbe4
Adding configurability to the interceptor's HTTP round tripper (#250)
* multi-tenant interceptor and scaler

Signed-off-by: Aaron Schlesinger <aaron@ecomaz.net>

* specifying host in XKCD ingress

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* routing the xkcd chart to the interceptor properly

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* check host header first

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* sending true active response in stream

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* passing target pending requests through to the underlying ScaledObject (so the scaler can read it later)

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* removing broken target pending requests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* using getHost in proxy handler

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding integration test

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding more tests to the integration test

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* splitting up integration tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* more checks

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* mark new test TODO

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* expanding interceptor integration tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* error messages

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* refactor test

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* more test improvements

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* rolling back target pending requests in ScaledObject

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* removing target metric error. it's not used anymore

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* improving waitFunc test

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* Refactoring the deployment cache to add better error handing and resilience.

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding doc comment

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* refactoring deploy cache and adding tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* Using interfaces for deployment watch & list

this makes tests easier

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding more deploy cache tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* Fixing up TestK8sDeploymentCacheRewatch

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* shutting down everything else when one thing errors, and adding a deployments cache endpoint

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* removing commented code

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* clarifying deployment cache JSON output, and simplifying deployment watch function

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding TODO tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* error logs and restoring the count middleware

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* using consistent net/http package name throughout main.go

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* Refactoring deployment cache deployment storage

Also, running go mod tidy and adding new TODO (i.e. failing) tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* using deployment.Status.ReadyReplicas, instead of just replicas

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* integration_tets ==> proxy_handlers_integration_test

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding some resilience to tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding deployment cache endpoint documentation

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* running the global test target with sh.RunV

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* adding timeout to magefile test target

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* finishing one TODO test and adding issue for the rest:

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* Adding configurability to the interceptor's HTTP round tripper

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>

* fixing compile errs in tests

Signed-off-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
2021-09-22 12:07:00 +05:30