Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 24 additions & 13 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# TAS Baseline Infrastructure Makefile

SIGN_JOB_NAME := signing
VERIFY_JOB_NAME := verifying
SIGN_SCRIPT := tas-perf-sign-template.js
VERIFY_SCRIPT := tas-perf-verify-template.js
SIGN_JOB_NAME := signing
VERIFY_JOB_NAME := verifying
SIGN_SCRIPT := tas-perf-sign-template.js
VERIFY_SCRIPT := tas-perf-verify-template.js
INSECURE_SKIP_TLS ?= false


.PHONY: help deploy deploy-baseline deploy-optimized clean clean-apps force-clean clean-labels check status \
Expand Down Expand Up @@ -145,32 +146,37 @@ sign-smoke:
@./run-test.sh \
-e "k6_args='--vus 1 --iterations 1'" \
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)"
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

sign-fill:
@./run-test.sh \
-e "k6_args='--iterations 10000 --vus 50'" \
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)"
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

sign-load:
@./run-test.sh \
-e "k6_args='--stage 30s:20 --stage 5m:20 --stage 30s:0'" \
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)"
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

sign-stress:
@./run-test.sh \
-e "k6_args='--stage 5m:300'" \
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)"
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

sign-optimal-range:
@echo "INFO: Running a focused test on the optimal 100 VU range..."
@./run-test.sh \
-e "k6_args='--stage 30s:100 --stage 5m:100 --stage 30s:0'" \
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)"
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

generate-verify-data:
@echo "INFO: Running sign-smoke in data generation mode..."
Expand All @@ -179,6 +185,7 @@ generate-verify-data:
-e "k6_job_name=$(SIGN_JOB_NAME)" \
-e "k6_script_to_run=$(SIGN_SCRIPT)" \
-e "generate_data_mode=true" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)" \
); \
echo "Full log output:"; \
echo "$$OUTPUT"; \
Expand All @@ -195,30 +202,34 @@ verify-smoke:
-e "k6_args='--vus 1 --iterations 1'" \
-e "k6_job_name=$(VERIFY_JOB_NAME)" \
-e "k6_script_to_run=$(VERIFY_SCRIPT)" \
-e "rekor_uuids=$(UUID)"
-e "rekor_uuids=$(UUID)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

verify-load:
@echo "INFO: Running verify-load test..."
@./run-test.sh \
-e "k6_args='--stage 30s:80 --stage 5m:80 --stage 30s:0'" \
-e "k6_job_name=$(VERIFY_JOB_NAME)" \
-e "k6_script_to_run=$(VERIFY_SCRIPT)" \
-e "rekor_uuids=$(UUID)"
-e "rekor_uuids=$(UUID)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

verify-stress:
@echo "INFO: Running verify-stress test..."
@./run-test.sh \
-e "k6_args='--stage 5m:300'" \
-e "k6_job_name=$(VERIFY_JOB_NAME)" \
-e "k6_script_to_run=$(VERIFY_SCRIPT)" \
-e "rekor_uuids=$(UUID)"
-e "rekor_uuids=$(UUID)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"

verify-optimal-range:
@echo "INFO: Running a focused test on the optimal VU range..."
@./run-test.sh \
-e "k6_args='--stage 30s:100 --stage 5m:100 --stage 30s:0'" \
-e "k6_job_name=$(VERIFY_JOB_NAME)" \
-e "k6_script_to_run=$(VERIFY_SCRIPT)" \
-e "rekor_uuids=$(UUID)"
-e "rekor_uuids=$(UUID)" \
-e "insecure_skip_tls=$(INSECURE_SKIP_TLS)"


17 changes: 17 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,23 @@ make clean
- `make verify-optimal-range` - Production load test with 100 VUs (requires `UUID=<uuid>`)
- `make verify-stress` - High-load stress test (requires `UUID=<uuid>`)

### TLS Verification

On clusters with self-signed or internal CA certificates (common with OpenShift ingress), K6 tests may fail with `x509: certificate signed by unknown authority` when connecting to the Keycloak OIDC endpoint. To skip TLS verification:

```bash
INSECURE_SKIP_TLS=true make sign-smoke
```

Or export it for the entire session:

```bash
export INSECURE_SKIP_TLS=true
make sign-smoke
make generate-verify-data
UUID=<uuid> make verify-smoke
```

## Configuration

### Default Test Credentials
Expand Down