Deploy to AKS - Tyk
Overview
The Deploy to AKS - Tyk template automates Tyk API Gateway deployment on Azure Kubernetes Service (AKS). It builds and pushes a Docker image to Azure Container Registry, sets up DNS, and deploys the application to AKS. The script then configures Tyk API Gateway settings using a Bash script, making API requests to Tyk's platform to create or update API configurations. The response details, including HTTP status and message, are captured for validation.
Input Variable Name | Description | Default Values | Type | Supported Values |
---|---|---|---|---|
pipeline_number_prefix | Prefix for the pipeline number. | 1.0 | string | |
gl_package_token | GitLab package token for authentication. | myGitLabToken | string | |
gl_package_username | GitLab package username for authentication. | myGitLabUser | string | |
gl_package_path | Path to the GitLab package repository. | https://gitlab.example.com/api/packages/nuget/index.json | string | |
tyk_extendedpaths | list of extended paths for the Tyk API | {"hard_timeouts":[{"disabled":false,"path":"/getcall/","method":"GET","timeout":60}],"do_not_track_endpoints":[{"path":"/getcall/","method":"GET"}]} | list | |
tyk_check_list | list of items to check | [{"body":"","headers":{},"method":"GET","url":"https://appurl/healthcheck"}] | list | |
tyk_global_rate_limit_per | Global rate limit per value for Tyk API | 0 | number | |
tyk_global_rate_limit_rate | Global rate limit rate for Tyk API | 0 | number | |
tyk_enable_ip_whitelisting | Enable IP whitelisting for Tyk API | false | bool | true, false |
tyk_listen_path | listen path for Tyk API | /app-name | string | |
tyk_enable_load_balancing | Enable load balancing for Tyk API | true | bool | true, false |
tyk_strip_listen_path | Strip the listen path for Tyk API | true | bool | true, false |
tyk_preserve_host_header | Preserve the host header in requests | false | bool | true, false |
tyk_target_list | list of target endpoints for Tyk API | [https://appurl] | list | |
tyk_cors_options_passthrough | Enable CORS options passthrough for Tyk API | false | bool | true, false |
tyk_cors_allow_credentials | Allow credentials in CORS requests | false | bool | true, false |
tyk_cors_max_age | Maximum age for CORS requests | 0 | number | |
tyk_cors_enable | Enable CORS for Tyk API | false | bool | true, false |
tyk_cors_allowed_methods | list of allowed HTTP methods in CORS requests | [GET;POST;PUT;PATCH;DELETE] | list | |
tyk_cors_exposed_headers | list of headers exposed in CORS responses | [] | list | |
tyk_cors_allowed_headers | list of allowed headers in CORS requests | [Origin;Accept;Content-Type;X-Requested-With;Authorization] | list | |
tyk_cors_allowed_origins | list of allowed CORS origins | [*] | list | |
tyk_enable_ip_blacklisting | Enable IP blacklisting for Tyk API | false | bool | true, false |
tyk_cache_options_enable_upstream_cache_control | Enable upstream cache control | false | bool | true, false |
tyk_cache_options_cache_all_safe_requests | Cache all safe requests | false | bool | true, false |
tyk_cache_options_enable_cache | Enable caching for Tyk API | false | bool | true, false |
tyk_cache_options_cache_timeout | Cache timeout for Tyk API | 0 | number | |
tyk_disable_rate_limit | Disable rate limiting for Tyk API | true | bool | true, false |
tyk_disable_quota | Disable quotas for Tyk API | true | bool | true, false |
tyk_use_keyless | Use keyless authentication for Tyk API | true | bool | true, false |
tyk_check_host_against_uptime_tests | Check the host against uptime tests | false | bool | true, false |
tyk_internal | Set Tyk API as internal | false | bool | true, false |
tyk_enable_detailed_recording | Enable detailed request recording | true | bool | true, false |
tyk_enable_context_vars | Enable context variables for Tyk API | true | bool | true, false |
tyk_protocol | Protocol used for Tyk API | - | string | |
tyk_listen_port | listen port for Tyk API | 0 | number | |
tyk_api_name | Name of the Tyk API | my-tyk-api | string | |
acr_repo_name | Name of the Azure Container Registry. | myacr | string | |
app_name | Name of the application. | myapplication | string | |
kube_manifest_name | Name of the kubernetes manifest file. | mykubernetesmanifest | string |