Skip to content

Commit

Permalink
Merge branch 'main' into gcp-secret-manager-triggerauth
Browse files Browse the repository at this point in the history
  • Loading branch information
neelanjan00 authored Jan 15, 2024
2 parents 1da328f + 5648b57 commit d70edbe
Show file tree
Hide file tree
Showing 10 changed files with 29 additions and 37 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/main-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**

# keda-tools is built from github.com/test-tools/tools/Dockerfile
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
steps:
- name: Check out code
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pr-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ jobs:
needs: triage
runs-on: ubuntu-latest
name: Build images
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
if: needs.triage.outputs.run-e2e == 'true'
steps:
- name: Set status in-progress
Expand Down Expand Up @@ -112,7 +112,7 @@ jobs:
needs: [triage, build-test-images]
runs-on: e2e
name: Execute e2e tests
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
if: needs.triage.outputs.run-e2e == 'true'
steps:
- name: Set status in-progress
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/pr-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
validate:
name: validate - ${{ matrix.name }}
runs-on: ${{ matrix.runner }}
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
strategy:
matrix:
include:
Expand Down Expand Up @@ -73,7 +73,7 @@ jobs:
validate-dockerfiles:
name: validate-dockerfiles - ${{ matrix.name }}
runs-on: ${{ matrix.runner }}
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
strategy:
matrix:
include:
Expand Down Expand Up @@ -104,7 +104,7 @@ jobs:
validate-dev-container:
name: Validate dev-container - ${{ matrix.name }}
runs-on: ${{ matrix.runner }}
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
strategy:
matrix:
include:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**

# keda-tools is built from github.com/test-tools/tools/Dockerfile
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
steps:
- name: Check out code
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/static-analysis-codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
codeQl:
name: Analyze CodeQL Go
runs-on: ubuntu-latest
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
if: (github.actor != 'dependabot[bot]')
steps:
- name: Checkout repository
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/template-main-e2e-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
name: Run e2e test
runs-on: ARM64
# keda-tools is built from github.com/test-tools/tools/Dockerfile
container: ghcr.io/kedacore/keda-tools:1.21.5
container: ghcr.io/kedacore/keda-tools:1.21.6
concurrency: e2e-tests
steps:
- name: Check out code
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build the manager binary
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.5 AS builder
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.6 AS builder

ARG BUILD_VERSION=main
ARG GIT_COMMIT=HEAD
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.adapter
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build the adapter binary
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.5 AS builder
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.6 AS builder

ARG BUILD_VERSION=main
ARG GIT_COMMIT=HEAD
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.webhooks
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build the manager binary
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.5 AS builder
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.21.6 AS builder

ARG BUILD_VERSION=main
ARG GIT_COMMIT=HEAD
Expand Down
42 changes: 17 additions & 25 deletions pkg/scalers/nats_jetstream_scaler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -222,9 +222,7 @@ var testNATSJetStreamMockResponses = []parseNATSJetStreamMockResponsesTestData{
}

var testNATSJetStreamServerMockResponses = map[string][]byte{
"not-leader-1.localhost:8222": []byte(`{"server_name": "not-leader-1", "cluster": {"urls": ["leader.localhost.nats.svc:8222", "not-leader-2.localhost.nats.svc:8222"]}}`),
"not-leader-2.localhost:8222": []byte(`{"server_name": "not-leader-2", "cluster": {"urls": ["leader.localhost.nats.svc:8222", "not-leader-1.localhost.nats.svc:8222"]}}`),
"leader.localhost:8222": []byte(`{"server_name": "leader", "cluster": {"urls": ["not-leader-1.localhost.nats.svc:8222", "not-leader-2.localhost.nats.svc:8222"]}}`),
"localhost:8222": []byte(`{"server_name": "leader", "cluster": {"urls": ["leader.localhost.nats.svc:8222","not-leader-1.localhost.nats.svc:8222", "not-leader-2.localhost.nats.svc:8222"]}}`),
}

func TestNATSJetStreamIsActive(t *testing.T) {
Expand All @@ -234,8 +232,7 @@ func TestNATSJetStreamIsActive(t *testing.T) {
t.Fatal("Could not parse mock response struct:", err)
}

srv := natsMockHTTPJetStreamServer(t, mockResponseJSON)
defer srv.Close()
client, srv := natsMockHTTPJetStreamServer(t, mockResponseJSON)

ctx := context.Background()
meta, err := parseNATSJetStreamMetadata(&ScalerConfig{TriggerMetadata: mockResponse.metadata.metadataTestData.metadata, TriggerIndex: mockResponse.metadata.triggerIndex})
Expand All @@ -246,7 +243,7 @@ func TestNATSJetStreamIsActive(t *testing.T) {
mockJetStreamScaler := natsJetStreamScaler{
stream: nil,
metadata: meta,
httpClient: http.DefaultClient,
httpClient: client,
logger: InitializeLogger(&ScalerConfig{TriggerMetadata: mockResponse.metadata.metadataTestData.metadata, TriggerIndex: mockResponse.metadata.triggerIndex}, "nats_jetstream_scaler"),
}

Expand Down Expand Up @@ -285,12 +282,7 @@ func TestNATSJetStreamGetMetrics(t *testing.T) {
t.Fatal("Could not parse mock response struct:", err)
}

tr := http.DefaultTransport.(*http.Transport).Clone()
srv := natsMockHTTPJetStreamServer(t, mockResponseJSON)
defer func() {
srv.Close()
http.DefaultTransport = tr
}()
client, srv := natsMockHTTPJetStreamServer(t, mockResponseJSON)

ctx := context.Background()
meta, err := parseNATSJetStreamMetadata(&ScalerConfig{TriggerMetadata: mockResponse.metadata.metadataTestData.metadata, TriggerIndex: mockResponse.metadata.triggerIndex})
Expand All @@ -301,7 +293,7 @@ func TestNATSJetStreamGetMetrics(t *testing.T) {
mockJetStreamScaler := natsJetStreamScaler{
stream: nil,
metadata: meta,
httpClient: http.DefaultClient,
httpClient: client,
logger: InitializeLogger(&ScalerConfig{TriggerMetadata: mockResponse.metadata.metadataTestData.metadata, TriggerIndex: mockResponse.metadata.triggerIndex}, "nats_jetstream_scaler"),
}

Expand All @@ -316,14 +308,17 @@ func TestNATSJetStreamGetMetrics(t *testing.T) {
}
}

func natsMockHTTPJetStreamServer(t *testing.T, mockResponseJSON []byte) *httptest.Server {
func natsMockHTTPJetStreamServer(t *testing.T, mockResponseJSON []byte) (*http.Client, *httptest.Server) {
dialer := &net.Dialer{
Timeout: 30 * time.Second,
KeepAlive: 30 * time.Second,
}

// redirect leader.localhost for the clustered test
http.DefaultTransport.(*http.Transport).DialContext = func(ctx context.Context, network, addr string) (net.Conn, error) {
client := &http.Client{
Transport: &http.Transport{},
}
client.Transport.(*http.Transport).DialContext = func(ctx context.Context, network, addr string) (net.Conn, error) {
if strings.HasSuffix(addr, ".localhost:8222") {
addr = "127.0.0.1:8222"
}
Expand Down Expand Up @@ -367,16 +362,13 @@ func natsMockHTTPJetStreamServer(t *testing.T, mockResponseJSON []byte) *httptes
srv.Listener = l
srv.Start()

return srv
return client, srv
}

func TestNATSJetStreamgetNATSJetstreamMonitoringData(t *testing.T) {
tr := http.DefaultTransport.(*http.Transport).Clone()

invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
client, invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
defer func() {
invalidJSONServer.Close()
http.DefaultTransport = tr
}()

ctx := context.Background()
Expand All @@ -388,7 +380,7 @@ func TestNATSJetStreamgetNATSJetstreamMonitoringData(t *testing.T) {
mockJetStreamScaler := natsJetStreamScaler{
stream: nil,
metadata: meta,
httpClient: http.DefaultClient,
httpClient: client,
logger: InitializeLogger(&ScalerConfig{TriggerMetadata: testNATSJetStreamGoodMetadata, TriggerIndex: 0}, "nats_jetstream_scaler"),
}

Expand All @@ -399,7 +391,7 @@ func TestNATSJetStreamgetNATSJetstreamMonitoringData(t *testing.T) {
}

func TestNATSJetStreamGetNATSJetstreamNodeURL(t *testing.T) {
invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
client, invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
defer invalidJSONServer.Close()

meta, err := parseNATSJetStreamMetadata(&ScalerConfig{TriggerMetadata: testNATSJetStreamGoodMetadata, TriggerIndex: 0})
Expand All @@ -410,7 +402,7 @@ func TestNATSJetStreamGetNATSJetstreamNodeURL(t *testing.T) {
mockJetStreamScaler := natsJetStreamScaler{
stream: nil,
metadata: meta,
httpClient: http.DefaultClient,
httpClient: client,
logger: InitializeLogger(&ScalerConfig{TriggerMetadata: testNATSJetStreamGoodMetadata, TriggerIndex: 0}, "nats_jetstream_scaler"),
}

Expand All @@ -423,7 +415,7 @@ func TestNATSJetStreamGetNATSJetstreamNodeURL(t *testing.T) {
}

func TestNATSJetStreamGetNATSJetstreamServerURL(t *testing.T) {
invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
client, invalidJSONServer := natsMockHTTPJetStreamServer(t, []byte(`{invalidJSON}`))
defer invalidJSONServer.Close()

meta, err := parseNATSJetStreamMetadata(&ScalerConfig{TriggerMetadata: testNATSJetStreamGoodMetadata, TriggerIndex: 0})
Expand All @@ -434,7 +426,7 @@ func TestNATSJetStreamGetNATSJetstreamServerURL(t *testing.T) {
mockJetStreamScaler := natsJetStreamScaler{
stream: nil,
metadata: meta,
httpClient: http.DefaultClient,
httpClient: client,
logger: InitializeLogger(&ScalerConfig{TriggerMetadata: testNATSJetStreamGoodMetadata, TriggerIndex: 0}, "nats_jetstream_scaler"),
}

Expand Down

0 comments on commit d70edbe

Please sign in to comment.