Hızlı Başlangıç: Dağıtımları otomatikleştirme
Not
Azure Spring Apps, Azure Spring Cloud hizmetinin yeni adıdır. Hizmetin yeni bir adı olsa da, ekran görüntüleri, videolar ve diyagramlar gibi varlıkları güncelleştirmek için çalışırken bazı yerlerde eski adı bir süre görürsünüz.
Bu makale şunlar için geçerlidir:❌ Temel/Standart ✔️ Kurumsal
Bu hızlı başlangıçta GitHub Actions ve Terraform kullanarak Azure Spring Apps Kurumsal planına dağıtımları otomatikleştirme adımları gösterilmektedir.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Azure Market'da Kurumsal planın Gereksinimler bölümünü anlayın ve yerine getirin.
- Azure CLI sürüm 2.45.0 veya üzeri.
- Git.
- Jq
- Azure Spring Apps Kurumsal plan uzantısı. Önceki sürümleri kaldırmak ve en son Kurumsal plan uzantısını yüklemek için aşağıdaki komutu kullanın. Uzantıyı
spring-cloud
daha önce yüklediyseniz yapılandırma ve sürüm uyuşmazlıklarını önlemek için uzantıyı kaldırın.az extension add --upgrade --name spring az extension remove --name spring-cloud
GitHub deposu ayarlama ve kimlik doğrulaması
Örnek uygulamayla ilişkili otomasyon, Terraform durumunu korumak için bir Depolama hesabı gerektirir. Aşağıdaki adımlarda GitHub Actions ve Terraform ile kullanmak üzere bir Depolama Hesabı oluşturma adımları gösterilmektedir.
Depolama Hesabını içerecek yeni bir kaynak grubu oluşturmak için aşağıdaki komutu kullanın:
az group create \ --name <storage-resource-group> \ --location <location>
Depolama Hesabı oluşturmak için aşağıdaki komutu kullanın:
az storage account create \ --resource-group <storage-resource-group> \ --name <storage-account-name> \ --location <location> \ --sku Standard_RAGRS \ --kind StorageV2
Depolama Hesabı içinde bir Depolama Kapsayıcısı oluşturmak için aşağıdaki komutu kullanın:
az storage container create \ --resource-group <storage-resource-group> \ --name terraform-state-container \ --account-name <storage-account-name> \ --auth-mode login
Azure kimlik bilgilerini almak için aşağıdaki komutları kullanın. Azure oturum açma eylemini yetkilendirmek için bir Azure hizmet sorumlusu kimlik bilgilerine ihtiyacınız vardır.
az login az ad sp create-for-rbac \ --role contributor \ --scopes /subscriptions/<SUBSCRIPTION_ID> \ --json-auth
Komutun bir JSON nesnesi vermesi gerekir:
{ "clientId": "<GUID>", "clientSecret": "<GUID>", "subscriptionId": "<GUID>", "tenantId": "<GUID>", ... }
Bu örnekte GitHub'da fitness mağazası örneği kullanılmaktadır. Örneği çatallayın, GitHub deposu sayfasını açın ve ardından Ayarlar sekmesini seçin. Aşağıdaki ekran görüntüsünde gösterildiği gibi Gizli Diziler menüsünü açın, ardından Yeni gizli dizi ekle'yi seçin.
Gizli dizi adını
AZURE_CREDENTIALS
olarak ayarlayın ve değerini GitHub deponuzu ayarlama ve kimlik doğrulaması başlığı altında bulduğunuz JSON dizesi olarak ayarlayın.GitHub Actions'a aşağıdaki gizli dizileri ekleyin:
TF_PROJECT_NAME
: Seçtiğiniz bir değeri kullanın. Bu değer Terraform Projenizin adı olacaktır.AZURE_LOCATION
: Kaynaklarınızın oluşturulacağı Azure Bölgesi.OIDC_JWK_SET_URI
: Hızlı Başlangıç: Azure Spring Apps Enterprise planını kullanarak uygulamalar için çoklu oturum açmayı yapılandırma bölümünde tanımlanan öğesini kullanınJWK_SET_URI
.OIDC_CLIENT_ID
: Hızlı Başlangıç: Azure Spring Apps Enterprise planını kullanarak uygulamalar için çoklu oturum açmayı yapılandırma bölümünde tanımlanan öğesini kullanınCLIENT_ID
.OIDC_CLIENT_SECRET
: Hızlı Başlangıç: Azure Spring Apps Enterprise planını kullanarak uygulamalar için çoklu oturum açmayı yapılandırma bölümünde tanımlanan öğesini kullanınCLIENT_SECRET
.OIDC_ISSUER_URI
: Hızlı Başlangıç: Azure Spring Apps Enterprise planını kullanarak uygulamalar için çoklu oturum açmayı yapılandırma bölümünde tanımlanan öğesini kullanınISSUER_URI
.
Gizli diziyi
TF_BACKEND_CONFIG
GitHub Actions'a aşağıdaki değerle ekleyin:resource_group_name = "<storage-resource-group>" storage_account_name = "<storage-account-name>" container_name = "terraform-state-container" key = "dev.terraform.tfstate"
GitHub Actions ile otomatikleştirme
Artık deponuzda GitHub Actions'ı çalıştırabilirsiniz. Sağlama iş akışı , örnek uygulamayı çalıştırmak için gereken tüm kaynakları sağlar. Aşağıdaki ekran görüntüsünde örnek çalıştırma gösterilmektedir:
Her uygulamada değişiklik yapıldığında uygulamayı yeniden dağıtacak bir dağıtım iş akışı vardır. Aşağıdaki ekran görüntüsünde katalog hizmetinden bazı örnek çıktılar gösterilmektedir:
Temizleme iş akışı, iş akışı tarafından provision
oluşturulan tüm kaynakları silmek için el ile çalıştırılabilir. Aşağıdaki ekran görüntüsü çıktıyı gösterir:
Kaynakları temizleme
Sonraki hızlı başlangıçlar ve öğreticilerle çalışmaya devam etmek istiyorsanız, bu kaynakları yerinde bırakmak isteyebilirsiniz. Artık gerekli olmadığında kaynak grubunu silin; bu da kaynak grubundaki kaynakları siler. Azure CLI kullanarak kaynak grubunu silmek için aşağıdaki komutları kullanın:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Sonraki adımlar
Aşağıdaki isteğe bağlı hızlı başlangıçlardan herhangi birine geçin: