Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump golang.org/x/net from 0.17.0 to 0.23.0 #194

Closed
wants to merge 348 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
348 commits
Select commit Hold shift + click to select a range
adaedb3
[refactor] status reporting & instantation. Remove URI tracking for now.
vmarcella Aug 1, 2023
4cf1ca0
[update] resource URIs to be populated in the end after all of the de…
vmarcella Aug 1, 2023
02e49f7
[update] status code exits by capturing the command exit status
vmarcella Aug 4, 2023
4d6ee1b
[remove] az cli error check now that exit codes are working, refactor…
vmarcella Aug 8, 2023
73dc17e
[remove] python modules no longer part of the project.
vmarcella Aug 9, 2023
ac654d6
[update] path for demo scripts.
vmarcella Aug 9, 2023
0b012de
[update] styling for step titles, spinner, and verbose output.
vmarcella Aug 9, 2023
b3407b8
[add] styling for the ocd status to set it's foreground to black.
vmarcella Aug 9, 2023
9cbf5b9
[update] cursor positioning to be simplified.
vmarcella Aug 9, 2023
efb1621
[update] moveCursorPosition to also handle printing it.
vmarcella Aug 9, 2023
826328c
[update] all cursor adjustments to be in common.go & update report OC…
vmarcella Aug 10, 2023
8154ef2
[update] resource URIs to be attached before the last interactive ssh…
vmarcella Aug 10, 2023
bdef1ea
[add] unique postfixes to ssh scenario.
vmarcella Aug 10, 2023
6d59a5e
[update] status to succeeded.
vmarcella Aug 10, 2023
7722d4e
[add] --working-directory flag for ie execute so that directories wit…
vmarcella Aug 11, 2023
4f154e2
Replace AGIC with NGINX ingress controller
rguptar Aug 14, 2023
60d2333
Add README.md to ocd scenarios
ralphr123 Aug 15, 2023
3c9f89f
Change export block to plaintext so it doesn't get run by engine
ralphr123 Aug 16, 2023
aa396f0
remove ssh clone command
ralphr123 Aug 16, 2023
8af22f7
Move export commands to the top
ralphr123 Aug 16, 2023
6619490
Added expected_similarity comments to markdown
ralphr123 Aug 16, 2023
721269f
Merge pull request #18 from ralphr123/ralph/deploy-container-app-from…
vmarcella Aug 16, 2023
7d9eb51
Fix export command typo, add note about accepting AI terms on portal
ralphr123 Aug 19, 2023
bd06316
Remove lb after similarity comments
ralphr123 Aug 19, 2023
f93a313
Add instruction to install containerapp extension
ralphr123 Aug 19, 2023
af06393
Added cd instruction after cloning repo
ralphr123 Aug 19, 2023
063baaf
[add] test for markdown title parsing.
vmarcella Aug 22, 2023
d584650
[add] first tests for markdown parsing.
vmarcella Aug 22, 2023
5529e3f
[rm] invalid test file.
vmarcella Aug 22, 2023
4a5deac
[update] deps.
vmarcella Aug 22, 2023
adade90
[update] test runner and add test for parsing a basic codeblock.
vmarcella Aug 22, 2023
4da24e6
Merge branch 'vmarcella/port-to-go' of https://github.com/Azure/Innov…
vmarcella Aug 22, 2023
1536c66
[update] test structure and add a new test.
vmarcella Aug 23, 2023
a313ba2
[update] test names.
vmarcella Aug 23, 2023
0028f4f
[update] INI parsing to return an error instead of panicking, add a t…
vmarcella Aug 23, 2023
db8bd65
[add] tests for map utilities.
vmarcella Aug 23, 2023
ab6048f
Env vars are auto generated, go bash only splits on first =
ralphr123 Aug 23, 2023
ee82495
Update source path for containerapp up
ralphr123 Aug 23, 2023
09f0139
Merge pull request #19 from ralphr123/ralph/clarify-container-app-doc
vmarcella Aug 23, 2023
6276516
Merge branch 'vmarcella/port-to-go' of https://github.com/Azure/Innov…
vmarcella Aug 23, 2023
a9ee7ab
[update] execution to compare outputs & refactor output comparisons i…
vmarcella Aug 23, 2023
59ff2bf
[add] expected similarity blocks and format outputs.
vmarcella Aug 23, 2023
3f75cb7
[update] logging to not include the caller for now, as logs were too …
vmarcella Aug 24, 2023
b2366ab
[add] cursor adjustment back.
vmarcella Aug 24, 2023
12118eb
AKS Best practice setup and NGINX Ingress Controller (#21)
naioja Aug 25, 2023
4abcf43
[add] the logic to write the command execution to the bash history fi…
vmarcella Aug 26, 2023
74b6951
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Aug 26, 2023
c1841b9
[fix] bug with interactive command error reporting.
vmarcella Aug 26, 2023
017b75d
[update] do not write interactive commands to history
rguptar Aug 28, 2023
95e7f4c
Fix SSL user email address (#25)
naioja Aug 30, 2023
5cb2d3b
[add] contributing guide.
vmarcella Aug 31, 2023
4e452a8
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Aug 31, 2023
192fd64
anonymizing resource groups and other ids (#26)
naioja Sep 5, 2023
94461a4
Using Ubuntu 22.04 and AAD extension for SSH (#28)
naioja Sep 5, 2023
26042cb
Update CONTRIBUTING.md (#27)
mbifeld Sep 5, 2023
3971b23
[update] expected output jsons to be compared despite the casing of t…
vmarcella Sep 6, 2023
e6d2145
[add] identity to the created vm & update logging so that errors are …
vmarcella Sep 7, 2023
f6acf7a
Adding LAMP scenario (#22)
naioja Sep 8, 2023
95ec51a
[add] --variables flag to allow for environment variables to be overi…
vmarcella Sep 11, 2023
e23e448
[update] parameter name to be --var & update the parser to inject the…
vmarcella Sep 11, 2023
b9abcbd
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 11, 2023
0aae1d0
[update] all scenarios to use REGION as their location variable.
vmarcella Sep 11, 2023
14e2aca
[update] documentation and organization.
vmarcella Sep 12, 2023
feff2bc
Fixing all markdownlint messages. (#35)
naioja Sep 19, 2023
49f268a
Fixing all markdownlint messages the LAMP doc. (#36)
naioja Sep 19, 2023
6feac36
Fix scenarios (#40)
rguptar Sep 19, 2023
bf5e75b
[add] command stdout and stderr to our logs.
vmarcella Sep 19, 2023
f9c61f5
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 19, 2023
6febd8b
Wait for resource to reach ready state (#43)
rguptar Sep 19, 2023
0164c76
[add] a functional but basic test mode, update logging, and add new t…
vmarcella Sep 20, 2023
1ce60b8
[fix] correlationId not being set.
vmarcella Sep 20, 2023
9e0f21d
[update] the ssh command and add a unit test to test our regex out.
vmarcella Sep 20, 2023
d135966
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 20, 2023
13cf701
[remove] access token/login auth from engine initialization for now.
vmarcella Sep 20, 2023
fdbd219
[update] scenario to send a yes into the az ssh config command on clo…
vmarcella Sep 20, 2023
8ffe4a8
[update] title.
vmarcella Sep 20, 2023
15e12fe
[update] ssh scenario to temporarily not configure the ssh config.
vmarcella Sep 20, 2023
9ae4977
[add] az ssh config command back.
vmarcella Sep 20, 2023
23dff75
Add envsubst
rguptar Sep 20, 2023
22212ef
Merge pull request #44 from Azure/guptar/scenarios
rguptar Sep 20, 2023
d6d6dfd
Alterntives to envsubst
naioja Sep 21, 2023
6b2f18b
Merge pull request #45 from naioja/aj_envsubst_alternative
rguptar Sep 21, 2023
92dceb8
[remove] az ssh command again.
vmarcella Sep 21, 2023
82f1ce8
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 21, 2023
b4e8345
[add] pipeline to run scenarios automatically.
vmarcella Sep 21, 2023
bb52ca1
[update] name of the stage.
vmarcella Sep 21, 2023
331dea8
[update] pipeline.
vmarcella Sep 21, 2023
46690a1
[update] subscription ID.
vmarcella Sep 21, 2023
8ca6735
[update] subscription to be passed in from top level scope.
vmarcella Sep 21, 2023
0853012
[fix] subscription.
vmarcella Sep 21, 2023
02a35c2
[update] pipeline to print out the ie log file.
vmarcella Sep 21, 2023
16ec206
ReadMe for LinuxSecureWebServer (#24)
brmoreir Sep 22, 2023
181d5b2
[update] ssh config name and for the scenario to assign an identity t…
vmarcella Sep 22, 2023
08f4bdc
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 22, 2023
ff798bd
[update] LEMP scenario to assign an identity and write the azure conf…
vmarcella Sep 22, 2023
a0d49bb
[remove] result block for the az ssh config scenario.
vmarcella Sep 22, 2023
512cf60
[fix] command output checking to set an error when the command output…
vmarcella Sep 22, 2023
9031085
[update] loop -> renderingLoop.
vmarcella Sep 22, 2023
2b0e418
Exclude liveness check for AKS scenario
rguptar Sep 22, 2023
c916d25
[update] json response to be properly formatted.
vmarcella Sep 22, 2023
88c14fe
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 22, 2023
cef7a1a
[update] scenario to not use az role assignment and then simplify the…
vmarcella Sep 23, 2023
76305ab
[update] utils -> lib and refactor some functions out of the engine.
vmarcella Sep 23, 2023
cd3e3bd
[remove] az ssh command from LEMP.
vmarcella Sep 25, 2023
8266409
[update] random postfix to have a bit more entropy.
vmarcella Sep 25, 2023
633bec4
[update] random postfix to have even more entropy.
vmarcella Sep 26, 2023
b08f28d
[add] to-bash command to generate scripts for both local & portal env…
vmarcella Sep 26, 2023
1340ab7
[add] identity login for the portal, update environment state file name.
vmarcella Sep 27, 2023
5ac6e33
[update] bash command executed for MSI login.
vmarcella Sep 27, 2023
1f9f0f7
Merge branch 'vmarcella/port-to-go' of github:Azure/InnovationEngine …
vmarcella Sep 28, 2023
0736eb8
[update] engine creation to be checked in ie execute.
vmarcella Sep 28, 2023
4722078
[add] token generation for one click deployments.
vmarcella Sep 28, 2023
75b46b8
[disable] access token fetching for now.
vmarcella Sep 28, 2023
8bd01fe
[refactor] SetCorrelationID, add a basic unit test, and then remove t…
vmarcella Sep 29, 2023
bdf02b8
[update] scenario testing to only run on main for now.
vmarcella Sep 29, 2023
335778e
Merge branch 'main' into vmarcella/port-to-go
vmarcella Sep 29, 2023
aa75583
[fix] gitignore.
vmarcella Sep 29, 2023
3a3f7d8
[update] workflow to run on prs into main
vmarcella Sep 29, 2023
053668f
[remove] branch from release pipeline.
vmarcella Sep 29, 2023
31f6ea5
Merge pull request #16 from Azure/vmarcella/port-to-go
vmarcella Sep 29, 2023
eb03a26
Collection of small fixes for the engine (#68)
vmarcella Oct 13, 2023
de7032b
More minor fixes (#98)
vmarcella Oct 13, 2023
33a771b
[fix] resource group name matching. (#99)
vmarcella Oct 13, 2023
48c5ca6
[add] functions to strip invalid env vars from the env state file for…
vmarcella Oct 14, 2023
fd52367
[add] quotations to all env values. (#102)
vmarcella Oct 14, 2023
41440e4
[fix] rendering of multi-line strings
rguptar Oct 16, 2023
531f3c8
[refactor] command rendering
rguptar Oct 16, 2023
0a78c14
[update] go.mod
rguptar Oct 16, 2023
6c89a08
[update] pipeline action for azure cli sign in. (#109)
vmarcella Oct 17, 2023
76e70fc
address multiline quoted case separately
rguptar Oct 17, 2023
fc51625
[add] hide value rendering behind a feature flag
rguptar Oct 17, 2023
85505f0
Fixes for scenarios (#111)
vmarcella Oct 18, 2023
44150fe
Merge pull request #106 from Azure/guptar/tutorial
rguptar Oct 19, 2023
cb791f4
[fix] subscription setting errors to be reported in the portal.
vmarcella Oct 18, 2023
2a6e0f3
LAMP Fixes
mbifeld Oct 20, 2023
69929c8
VM SSH Fixes
mbifeld Oct 20, 2023
c6aaa7d
AKS Fixes
mbifeld Oct 20, 2023
b6098e8
Bump golang.org/x/net from 0.8.0 to 0.17.0
dependabot[bot] Oct 23, 2023
28fe522
Merge pull request #97 from Azure/dependabot/go_modules/golang.org/x/…
rguptar Oct 23, 2023
f476afc
[fix] restoration of env vars
rguptar Oct 25, 2023
03880d1
[refactor] rename v to value
rguptar Oct 25, 2023
40e125e
readme: Fix path for tutorial.md (#120)
mqasimsarfraz Oct 27, 2023
c08329c
[fix] remove horizontal align (#121)
rguptar Oct 30, 2023
f299563
[update] resource URIs to be attached to the Azure status when en err…
vmarcella Nov 9, 2023
f5fa257
Add expected_contains tag. (#114)
eiffel-fl Nov 9, 2023
efef13e
Add manual scenario testing invocation and drop the requirement for r…
vmarcella Nov 10, 2023
303de1b
WP on AKS
naioja Oct 16, 2023
04e0ec0
Code ready
naioja Oct 24, 2023
203ca6f
Content ready
naioja Nov 1, 2023
60833a5
Fix possible VNet CIDR collisions
naioja Nov 2, 2023
4e41bf8
Fix Helm chart value for MySQL database name
naioja Nov 2, 2023
f7791a2
Fixes :
naioja Nov 8, 2023
f19e4ae
Updating configuration
naioja Nov 8, 2023
db3f326
Small spell fix
mbifeld Nov 20, 2023
bb6530f
scenarios: Add Inspektor Gadget on AKS use case
blanquicet Oct 5, 2023
fa0234f
[fix] scenario testing by installing make
rguptar Dec 6, 2023
eb312b6
Add installation command for ie. (#156)
vmarcella Dec 7, 2023
585633b
[update] authentication for the pipeline.
vmarcella Dec 19, 2023
0908b36
[update] pipeline environment for allowing any branch to run the scen…
vmarcella Dec 19, 2023
4f687a2
[add] comment around the environment addition.
vmarcella Dec 19, 2023
4335e88
[update] environment name.
vmarcella Dec 19, 2023
897dcd2
VMSS Scanerio update
belginceran Nov 23, 2023
3a41e28
VMSS Scanerio update
belginceran Nov 23, 2023
604f032
VMSS updates
belginceran Dec 4, 2023
d8486a1
VMSS updates
belginceran Dec 4, 2023
cdf50c0
VMSS updates
belginceran Dec 4, 2023
4ce12f9
VMSS update
belginceran Dec 5, 2023
727f7b2
VMSS update
belginceran Dec 5, 2023
b8911d7
VMSS update
belginceran Dec 5, 2023
3ea4d2a
VMSS update
belginceran Dec 5, 2023
df5506f
VMSS updates
belginceran Dec 5, 2023
02dc8cd
VMSS Updates
belginceran Dec 14, 2023
0acffa9
VMSS updates
belginceran Dec 14, 2023
17763b3
VMSS updates
belginceran Dec 14, 2023
74e563e
VMSS updates
belginceran Dec 14, 2023
71074ef
VMSS updates
belginceran Dec 18, 2023
7fab75d
update
belginceran Dec 18, 2023
f6e6f55
updated
belginceran Dec 18, 2023
64906c9
VMSS updates
belginceran Dec 19, 2023
bea8c3a
VMSS updates
belginceran Dec 19, 2023
5ae2536
VMSS updates
belginceran Dec 19, 2023
f465e74
VMSS updates
belginceran Dec 19, 2023
f02ec22
VMSS updates
belginceran Dec 19, 2023
4db8e03
Update README.md
naman-msft Dec 21, 2023
2f3787d
Update README.md
naman-msft Dec 21, 2023
3e82687
Update README.md
naman-msft Dec 21, 2023
3db495f
Update README.md
naman-msft Dec 21, 2023
82dbad0
[add] test upstream scenarios (#162)
rguptar Jan 3, 2024
a38bb66
Update install_from_release.sh to account for localized files
mbifeld Dec 22, 2023
21e8b4a
Update install_from_release.sh
mbifeld Dec 23, 2023
8715d5e
Update install_from_release.sh
mbifeld Dec 23, 2023
7fac854
Update install_from_release.sh
mbifeld Dec 23, 2023
7b52a85
Update install_from_release.sh
mbifeld Dec 23, 2023
3b20d76
Update install_from_release.sh
mbifeld Dec 23, 2023
ff98988
Update install_from_release.sh
mbifeld Dec 23, 2023
7a83870
Update install_from_release.sh
mbifeld Dec 23, 2023
819b787
Empty parameter grabs the scenarios from IE
mbifeld Dec 28, 2023
6fdaa21
Update install_from_release.sh
mbifeld Dec 28, 2023
ee7aaf4
Updated variable declariations
Jan 3, 2024
5f17eda
Switched lang to LANG
Jan 3, 2024
60caf59
Update locale variable to not incorrectly set a default of ''. (#166)
vmarcella Jan 25, 2024
5b21dd0
add: workflow for tagged release
rguptar Jan 26, 2024
9d51629
add: ie release version
rguptar Jan 26, 2024
092c954
add: testing for ie installation script
rguptar Jan 30, 2024
7cc4b63
fix: use $HOME
rguptar Jan 30, 2024
b8eb812
added static web app exec doc
naman-msft Nov 1, 2023
445b68a
add env variables, echoed website url at the end, formatted the doc
naman-msft Nov 2, 2023
05bb328
removed the first duplicate staticwebapp show block
naman-msft Nov 2, 2023
b5604de
made small formatting changes;
naman-msft Nov 2, 2023
edf7c07
added github action for automated PR generation for AI-generated exec…
naman-msft Nov 27, 2023
35d7664
added github action for automated PR generation for ai-generated-docs
naman-msft Nov 27, 2023
ff31590
made some changes to the converter
naman-msft Nov 28, 2023
4c0c1ac
added test readme.md files
naman-msft Nov 28, 2023
596648c
modified file name for pr
naman-msft Nov 28, 2023
d34c558
modified file name for pr
naman-msft Nov 28, 2023
7f3d088
AI generated doc titled
naman-msft Nov 28, 2023
f64baf7
changed filename for pr
naman-msft Nov 28, 2023
ba52bb8
changed filename for pr
naman-msft Nov 28, 2023
fb6ead7
successfully tested ai pipeline for existing exec docs now testing fo…
naman-msft Nov 28, 2023
d5b024a
successfully tested ai pipeline for existing exec docs now testing fo…
naman-msft Nov 28, 2023
e70e7f9
made changes to tool it now works
naman-msft Nov 29, 2023
d954c24
cleaned the converter and removed a file from AIDocs
naman-msft Nov 29, 2023
14a3b91
cleaned the code and added comments at necessary places
naman-msft Nov 29, 2023
7580965
added input functionality for testing exec docs
naman-msft Dec 5, 2023
f734b4f
placed the ai tool called converter under the scripts subfolder/ai_ge…
naman-msft Dec 6, 2023
1e7c1fc
configured the directory access and ie testing
naman-msft Dec 6, 2023
9673a2e
amended some code
naman-msft Dec 7, 2023
f713315
fixed curl issue while loading the app
naman-msft Jan 31, 2024
56e77e5
fixed static web app
naman-msft Jan 31, 2024
1147f69
fixed static web app
naman-msft Jan 31, 2024
7434c35
re-added linux vm doc
naman-msft Jan 31, 2024
b93f70a
fixed static web app
naman-msft Jan 31, 2024
94afea2
Update line endings/formatting. (#171)
vmarcella Feb 6, 2024
9fae711
Update test command to not wait for rg deletion. (#172)
vmarcella Feb 6, 2024
7faac03
Update release pipeline permissions. (#173)
vmarcella Feb 6, 2024
03ae339
Interactive mode (#165)
vmarcella Feb 16, 2024
1216639
Update the bash command execution to specify `set -e` when executing.…
vmarcella Mar 1, 2024
473e148
Refactor language parameter mapping in install_from_release.sh
naioja Feb 29, 2024
1429e12
Adding review comments
naioja Mar 4, 2024
a93deac
Bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#158)
dependabot[bot] Mar 6, 2024
17c197c
Covered case where no LANG var is set
mbifeld Mar 6, 2024
61e740c
Update install_from_release.sh
mbifeld Mar 6, 2024
a8f3a02
Update Interactive mode to render different user interfaces based on …
vmarcella Mar 7, 2024
0ce5041
Generate code coverage for tests in pipeline (#192)
vmarcella Mar 28, 2024
f18f249
Decouple installation of IE and scenarios. (#189)
vmarcella Apr 1, 2024
9b3c2d7
Parsing yaml metadata headers in markdown files (#191)
vmarcella Apr 1, 2024
d8742fd
Allow for IE to resolve remote markdown documents into scenarios (#190)
vmarcella Apr 1, 2024
b60ab88
Remove redundant scenarios from the repository (#188)
vmarcella Apr 1, 2024
f132a3b
Update locale fallbacks to use the version passed into the installati…
vmarcella Apr 10, 2024
b0ce89d
Bump golang.org/x/net from 0.17.0 to 0.23.0
dependabot[bot] Apr 19, 2024
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
138 changes: 83 additions & 55 deletions scenarios/ocd/CreateAKSDeployment/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# Quickstart: Deploy a Scalable & Secure Azure Kubernetes Service cluster using the Azure CLI
Welcome to this tutorial where we will take you step by step in creating an Azure Kubernetes Web Application that is secured via https. This tutorial assumes you are logged into Azure CLI already and have selected a subscription to use with the CLI. It also assumes that you have Helm installed (Instructions can be found here https://helm.sh/docs/intro/install/).

Welcome to this tutorial where we will take you step by step in creating an Azure Kubernetes Web Application that is secured via https. This tutorial assumes you are logged into Azure CLI already and have selected a subscription to use with the CLI. It also assumes that you have Helm installed ([Instructions can be found here](https://helm.sh/docs/intro/install/)).

## Define Environment Variables

The First step in this tutorial is to define environment variables
The First step in this tutorial is to define environment variables.

```bash
export SSL_EMAIL_ADDRESS="$(az account show --query user.name --output tsv)"
@@ -21,13 +22,14 @@ export MY_SN_PREFIX="10.$NETWORK_PREFIX.0.0/22"
export FQDN="${MY_DNS_LABEL}.${REGION}.cloudapp.azure.com"
```

# Create a resource group
## Create a resource group

A resource group is a container for related resources. All resources must be placed in a resource group. We will create one for this tutorial. The following command creates a resource group with the previously defined $MY_RESOURCE_GROUP_NAME and $REGION parameters.

```bash
az group create --name $MY_RESOURCE_GROUP_NAME --location $REGION
```

Results:

<!-- expected_similarity=0.3 -->
@@ -58,6 +60,7 @@ az network vnet create \
--subnet-name $MY_SN_NAME \
--subnet-prefixes $MY_SN_PREFIX
```

Results:

<!-- expected_similarity=0.3 -->
@@ -95,17 +98,20 @@ Results:
```

## Register to AKS Azure Resource Providers

Verify Microsoft.OperationsManagement and Microsoft.OperationalInsights providers are registered on your subscription. These are Azure resource providers required to support [Container insights](https://docs.microsoft.com/en-us/azure/azure-monitor/containers/container-insights-overview). To check the registration status, run the following commands

```bash
az provider register --namespace Microsoft.OperationsManagement
az provider register --namespace Microsoft.OperationalInsights
```

## Create AKS Cluster
## Create AKS Cluster

Create an AKS cluster using the az aks create command with the --enable-addons monitoring parameter to enable Container insights. The following example creates an autoscaling, availability zone enabled cluster named myAKSCluster:

This will take a few minutes

```bash
export MY_SN_ID=$(az network vnet subnet list --resource-group $MY_RESOURCE_GROUP_NAME --vnet-name $MY_VNET_NAME --query "[0].id" --output tsv)

@@ -128,30 +134,31 @@ az aks create \
```

## Connect to the cluster

To manage a Kubernetes cluster, use the Kubernetes command-line client, kubectl. kubectl is already installed if you use Azure Cloud Shell.

1. Install az aks CLI locally using the az aks install-cli command

```bash
if ! [ -x "$(command -v kubectl)" ]; then az aks install-cli; fi
```
```bash
if ! [ -x "$(command -v kubectl)" ]; then az aks install-cli; fi
```

2. Configure kubectl to connect to your Kubernetes cluster using the az aks get-credentials command. The following command:
- Downloads credentials and configures the Kubernetes CLI to use them.
- Uses ~/.kube/config, the default location for the Kubernetes configuration file. Specify a different location for your Kubernetes configuration file using --file argument.
- Uses ~/.kube/config, the default location for the Kubernetes configuration file. Specify a different location for your Kubernetes configuration file using --file argument.

> [!WARNING]
> This will overwrite any existing credentials with the same entry
> [!WARNING]
> This will overwrite any existing credentials with the same entry

```bash
az aks get-credentials --resource-group $MY_RESOURCE_GROUP_NAME --name $MY_AKS_CLUSTER_NAME --overwrite-existing
```
```bash
az aks get-credentials --resource-group $MY_RESOURCE_GROUP_NAME --name $MY_AKS_CLUSTER_NAME --overwrite-existing
```

3. Verify the connection to your cluster using the kubectl get command. This command returns a list of the cluster nodes.

```bash
kubectl get nodes
```
```bash
kubectl get nodes
```

## Install NGINX Ingress Controller

@@ -168,7 +175,8 @@ helm upgrade --install ingress-nginx ingress-nginx/ingress-nginx \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz
```

## Deploy the Application
## Deploy the Application

A Kubernetes manifest file defines a cluster's desired state, such as which container images to run.

In this quickstart, you will use a manifest to create all objects needed to run the Azure Vote application. This manifest includes two Kubernetes deployments:
@@ -183,7 +191,8 @@ Two Kubernetes Services are also created:

Finally, an Ingress resource is created to route traffic to the Azure Vote application.

A test voting app YML file is already prepared. To deploy this app run the following command
A test voting app YML file is already prepared. To deploy this app run the following command

```bash
kubectl apply -f azure-vote-start.yml
```
@@ -192,13 +201,15 @@ kubectl apply -f azure-vote-start.yml

Validate that the application is running by either visiting the public ip or the application url. The application url can be found by running the following command:

>[!Note]
>[!Note]
>It often takes 2-3 minutes for the PODs to be created and the site to be reachable via http

```bash
runtime="5 minute"; endtime=$(date -ud "$runtime" +%s); while [[ $(date -u +%s) -le $endtime ]]; do STATUS=$(kubectl get pods -l app=azure-vote-front -o 'jsonpath={..status.conditions[?(@.type=="Ready")].status}'); echo $STATUS; if [ "$STATUS" = 'True' ]; then break; else sleep 10; fi; done

curl "http://$FQDN"
```

Results:

<!-- expected_similarity=0.3 -->
@@ -234,92 +245,110 @@ Results:
</html>
```

# Add HTTPS termination to custom domain
## Add HTTPS termination to custom domain

At this point in the tutorial you have an AKS web app with NGINX as the Ingress controller and a custom domain you can use to access your application. The next step is to add an SSL certificate to the domain so that users can reach your application securely via https.

## Set Up Cert Manager

In order to add HTTPS we are going to use Cert Manager. Cert Manager is an open source tool used to obtain and manage SSL certificate for Kubernetes deployments. Cert Manager will obtain certificates from a variety of Issuers, both popular public Issuers as well as private Issuers, and ensure the certificates are valid and up-to-date, and will attempt to renew certificates at a configured time before expiry.

1. In order to install cert-manager, we must first create a namespace to run it in. This tutorial will install cert-manager into the cert-manager namespace. It is possible to run cert-manager in a different namespace, although you will need to make modifications to the deployment manifests.
```bash
kubectl create namespace cert-manager
```

```bash
kubectl create namespace cert-manager
```

2. We can now install cert-manager. All resources are included in a single YAML manifest file. This can be installed by running the following:
```bash
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.0/cert-manager.crds.yaml
```

```bash
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.0/cert-manager.crds.yaml
```

3. Add the certmanager.k8s.io/disable-validation: "true" label to the cert-manager namespace by running the following. This will allow the system resources that cert-manager requires to bootstrap TLS to be created in its own namespace.
```bash
kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true
```

```bash
kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true
```

## Obtain certificate via Helm Charts

Helm is a Kubernetes deployment tool for automating creation, packaging, configuration, and deployment of applications and services to Kubernetes clusters.

Cert-manager provides Helm charts as a first-class method of installation on Kubernetes.

1. Add the Jetstack Helm repository
This repository is the only supported source of cert-manager charts. There are some other mirrors and copies across the internet, but those are entirely unofficial and could present a security risk.
```bash
helm repo add jetstack https://charts.jetstack.io
```

2. Update local Helm Chart repository cache
```bash
helm repo update
```
This repository is the only supported source of cert-manager charts. There are some other mirrors and copies across the internet, but those are entirely unofficial and could present a security risk.

```bash
helm repo add jetstack https://charts.jetstack.io
```

2. Update local Helm Chart repository cache

```bash
helm repo update
```

3. Install Cert-Manager addon via helm by running the following:
```bash
helm install cert-manager jetstack/cert-manager --namespace cert-manager --version v1.7.0
```

```bash
helm install cert-manager jetstack/cert-manager --namespace cert-manager --version v1.7.0
```

4. Apply Certificate Issuer YAML File

ClusterIssuers are Kubernetes resources that represent certificate authorities (CAs) that are able to generate signed certificates by honoring certificate signing requests. All cert-manager certificates require a referenced issuer that is in a ready condition to attempt to honor the request.

The issuer we are using can be found in the `cluster-issuer-prod.yml file`
```bash
envsubst < cluster-issuer-prod.yml | kubectl apply -f -
```

5. Upate Voting App Application to use Cert-Manager to obtain an SSL Certificate.
```bash
envsubst < cluster-issuer-prod.yml | kubectl apply -f -
```

5. Upate Voting App Application to use Cert-Manager to obtain an SSL Certificate.

The full YAML file can be found in `azure-vote-nginx-ssl.yml`
```bash
envsubst < azure-vote-nginx-ssl.yml | kubectl apply -f -
```

```bash
envsubst < azure-vote-nginx-ssl.yml | kubectl apply -f -
```

## Validate application is working

Wait for SSL certificate to issue. The following command will query the status of the SSL certificate for 3 minutes.
In rare occasions it may take up to 15 minutes for Lets Encrypt to issue a successful challenge and the ready state to be 'True'

```bash
runtime="10 minute"; endtime=$(date -ud "$runtime" +%s); while [[ $(date -u +%s) -le $endtime ]]; do STATUS=$(kubectl get certificate --output jsonpath={..status.conditions[0].status}); echo $STATUS; if [ "$STATUS" = 'True' ]; then break; else sleep 10; fi; done
```

Validate SSL certificate is True by running the follow command:

```bash
kubectl get certificate --output jsonpath={..status.conditions[0].status}
```

Results:

<!-- expected_similarity=0.3 -->
```ASCII
True
```

## Browse your AKS Deployment Secured via HTTPS!
## Browse your AKS Deployment Secured via HTTPS

Run the following command to get the HTTPS endpoint for your application:

>[!Note]
> It often takes 2-3 minutes for the SSL certificate to propogate and the site to be reachable via https
> It often takes 2-3 minutes for the SSL certificate to propogate and the site to be reachable via https.

```bash
runtime="5 minute"; endtime=$(date -ud "$runtime" +%s); while [[ $(date -u +%s) -le $endtime ]]; do STATUS=$(kubectl get svc --namespace=ingress-nginx ingress-nginx-controller -o jsonpath='{.status.loadBalancer.ingress[0].ip}'); echo $STATUS; if [ "$STATUS" = "$MY_STATIC_IP" ]; then break; else sleep 10; fi; done

curl https://$FQDN
```

Results:

<!-- expected_similarity=0.3 -->
@@ -355,10 +384,9 @@ Results:
</html>
```


## Next Steps

* [Azure Kubernetes Service Documentation](https://learn.microsoft.com/en-us/azure/aks/)
* [Create an Azure Container Registry](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-prepare-acr?tabs=azure-cli)
* [Scale your Applciation in AKS](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-scale?tabs=azure-cli)
* [Update your application in AKS](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-app-update?tabs=azure-cli)
- [Azure Kubernetes Service Documentation](https://learn.microsoft.com/en-us/azure/aks/)
- [Create an Azure Container Registry](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-prepare-acr?tabs=azure-cli)
- [Scale your Applciation in AKS](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-scale?tabs=azure-cli)
- [Update your application in AKS](https://learn.microsoft.com/en-us/azure/aks/tutorial-kubernetes-app-update?tabs=azure-cli)