Complete bounded browser and API product behavior
This commit is contained in:
parent
619c2911d2
commit
ea55108f44
1 changed files with 2117 additions and 399 deletions
|
|
@ -73,6 +73,13 @@ render_application() {
|
|||
-e "s|@@S3_ACCESS_KEY@@|$s3_access_key|g" \
|
||||
-e "s|@@S3_SECRET_KEY@@|$s3_secret_key|g" \
|
||||
"$ROOT/deploy/kubernetes/nuthatch.yaml.in" > "$RUNTIME/wp05-app-$lane.yaml"
|
||||
if [[ "${NUTHATCH_PRODUCT_GATE:-0}" = 1 ]]; then
|
||||
sed -i \
|
||||
-e 's/NUTHATCH_BROWSE_PAGE_SIZE: "200"/NUTHATCH_BROWSE_PAGE_SIZE: "2"/' \
|
||||
-e 's/NUTHATCH_SEARCH_MAX_KEYS: "500"/NUTHATCH_SEARCH_MAX_KEYS: "3"/' \
|
||||
-e 's/NUTHATCH_DELETE_PAGE_SIZE: "100"/NUTHATCH_DELETE_PAGE_SIZE: "2"/' \
|
||||
"$RUNTIME/wp05-app-$lane.yaml"
|
||||
fi
|
||||
}
|
||||
|
||||
cleanup_application() {
|
||||
|
|
@ -86,6 +93,20 @@ cleanup_application() {
|
|||
rm -f "$RUNTIME/wp05-app-$lane.yaml"
|
||||
}
|
||||
|
||||
set_product_profile() {
|
||||
local profile="$1"
|
||||
local mode="$2"
|
||||
local profile_file="$RUNTIME/$profile.env"
|
||||
sed -i '/^NUTHATCH_PRODUCT_MODE=/d' "$profile_file"
|
||||
printf 'NUTHATCH_PRODUCT_MODE=%s\n' "$mode" >> "$profile_file"
|
||||
kube create configmap "$profile" \
|
||||
--namespace "$FIXTURE_NAMESPACE" \
|
||||
--from-env-file="$profile_file" \
|
||||
--dry-run=client \
|
||||
--output yaml |
|
||||
kube apply --filename - >/dev/null
|
||||
}
|
||||
|
||||
acquire_fixture_lock
|
||||
OWNS_FIXTURE=true
|
||||
setup_fixture durable coordination oidc target
|
||||
|
|
@ -98,6 +119,9 @@ load_local_image "$APP_IMAGE" "$NERDCTL_NAMESPACE"
|
|||
|
||||
while IFS=$'\t' read -r lane coordination oidc target; do
|
||||
profile="$(write_lane_profile "$lane" "$coordination" "$oidc" "$target")"
|
||||
if [[ "${NUTHATCH_PRODUCT_GATE:-0}" = 1 ]]; then
|
||||
set_product_profile "$profile" verify
|
||||
fi
|
||||
render_application "$lane" "$RUNTIME/$profile.env"
|
||||
kube apply --filename "$RUNTIME/wp05-app-$lane.yaml" >/dev/null
|
||||
kube --namespace "$FIXTURE_NAMESPACE" rollout status \
|
||||
|
|
@ -121,6 +145,28 @@ while IFS=$'\t' read -r lane coordination oidc target; do
|
|||
printf 'Running lane %s: coordination=%s oidc=%s target=%s\n' \
|
||||
"$lane" "$coordination" "$oidc" "$target"
|
||||
run_job_manifest "$job" "$RUNTIME/$job.yaml"
|
||||
if [[ "${NUTHATCH_PRODUCT_GATE:-0}" = 1 ]]; then
|
||||
sed -i \
|
||||
's/NUTHATCH_SEARCH_TIMEOUT_MS: "2000"/NUTHATCH_SEARCH_TIMEOUT_MS: "1"/' \
|
||||
"$RUNTIME/wp05-app-$lane.yaml"
|
||||
kube apply --filename "$RUNTIME/wp05-app-$lane.yaml" >/dev/null
|
||||
kube --namespace "$FIXTURE_NAMESPACE" rollout restart \
|
||||
"deployment/nuthatch-$lane" >/dev/null
|
||||
kube --namespace "$FIXTURE_NAMESPACE" rollout status \
|
||||
"deployment/nuthatch-$lane" --timeout=180s
|
||||
set_product_profile "$profile" timeout
|
||||
timeout_job="wp11-timeout-$lane"
|
||||
render_lane_job \
|
||||
"$timeout_job" \
|
||||
"$TESTBED/wp05-job.yaml.in" \
|
||||
"$CURL_LOCAL_IMAGE" \
|
||||
"$profile"
|
||||
sed -i "s|@@LANE@@|$lane|g" "$RUNTIME/$timeout_job.yaml"
|
||||
run_job_manifest "$timeout_job" "$RUNTIME/$timeout_job.yaml"
|
||||
kube --namespace "$FIXTURE_NAMESPACE" delete \
|
||||
"job/$timeout_job" --ignore-not-found >/dev/null
|
||||
rm -f "$RUNTIME/$timeout_job.yaml"
|
||||
fi
|
||||
cleanup_application "$lane"
|
||||
cleanup_lane_state "$lane" "$coordination" "$oidc" "$target"
|
||||
cleanup_lane_resources "$job" "$profile"
|
||||
|
|
|
|||
Loading…
Reference in a new issue