Deploy to AKS (.NET Core) - Tyk
Overview
The Deploy to AKS (.NET Core) - Tyk template automates the deployment of a Tyk API Gateway alongside .NET Core applications on Azure Kubernetes Service (AKS). The script builds Docker images for each .NET Core project, pushes them to Azure Container Registry, and performs code scanning using SonarQube. It configures DNS records, deploys applications with Kubernetes manifests, and sets up Tyk API Gateway through a Bash script, making API requests to Tyk's platform. The template provides a comprehensive solution, integrating containerization, Azure services, code scanning, and Tyk API Gateway configuration for efficient deployment.
Input Variables
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 |