Slide 1

Slide 1 text

1 Azure Developer CLI(azd)の 最新アップデートを追う 追いかけるバージョン多くないっすか?

Slide 2

Slide 2 text

v1.4.3〜v1.13.1までを 見ていくぞ 2

Slide 3

Slide 3 text

今日話すこと ● 使い方のおさらい ● Azure Developer CLI(azd)とは ● コマンドの使い方(最新版) ● アップデートを見ていくよ ● まとめ 3

Slide 4

Slide 4 text

山田顕人(Kento.Yamada) @ymd65536 自己紹介 4 仕事:MSP向け内製システムの開発、マルチクラウドエンジニア/デベロッパー 活動:.NETラボ勉強会の運営 Microsoft MVP for Developer Technologies(2024年〜) AWS Community Builders Google Cloud Partner Top Engineer 2025 DataAnalytics Google Cloud Partner Tech Blog Challenge 2023 Cloud AI/ML 部門 LINE API Expert(2024年〜) LAPRAS OUTPUT AWARD 2024 01 ● 最近のトピック ○ 50kmのエクストリームウォークを完歩! ○ MVPになって1年 ○ 今年7月になんコパ登壇

Slide 5

Slide 5 text

5 引用:https://speakerdeck.com/pepe223223/nandemocopilotnokoremadetokorekara-aoai-dev-day-pureibentoban?slide=21

Slide 6

Slide 6 text

Azure Developer CLI(azd)とは 6

Slide 7

Slide 7 text

azdを”完全に理解できる”スライド ● 開発者向けのコマンドセットを提供する開発者向けツール ● Go言語、CLIフレームワーク「Cobra」で実装 ● デプロイ時は「azdテンプレート」が必要 セットアップ要件など ● Win/Linux/macOSのいずれかで利用可能 ● Visual Studio/Visual Studio Code/CLI/GitHub Codespacesで利用可能 ● サポートされる言語 ○ .NET/Node.js/Python/Java ● IaC ○ Bicep/Terraform (Terraformはベータ版) 7

Slide 8

Slide 8 text

補足:azdテンプレートとは azdで利用するインフラストラクチャやその上で動作するアプリケーションを デプロイするテンプレートのこと インフラだけでなくアプリケーションも込みでデプロイできるというのがミソ! 8

Slide 9

Slide 9 text

Awesome AZD Templatesでジャンプスタート azdテンプレートを作るのはそれなりに技術が必要 すぐに始める場合はAwesome AZD Templatesを使うと良い。 https://azure.github.io/awesome-azd/ 9

Slide 10

Slide 10 text

参考:過去の登壇 10 参考 :https://speakerdeck.com/ymd65536/azure-developer -clinozhen-rifan-ritodeep-dive

Slide 11

Slide 11 text

参考:解説記事 11

Slide 12

Slide 12 text

12 azd auth login 認証(最初はazd loginというコマンドだった) azd config list azdの設定(v1.4.3から非推奨) azd config show azdの設定 azd env list azdで利用する環境変数のリスト azd package ビルドとパッケージング azd provision 環境構築 azd deploy デプロイ azd up package,provision,deployを1工程で実行 azd down リソースを削除する。azd upの逆 azd add コンポーネントを追加する azd infra インフラの管理

Slide 13

Slide 13 text

図解 コマンドの使い方 13 azd auth login azd package azd provision azd deploy azd up azd down azd init azd env azd config azd add azd infra

Slide 14

Slide 14 text

コマンド利用時の注意点 azdのサブコマンドにはアルファ版とベータ版が存在します。 アルファ版:実験的な機能であり、安定はしていない。開発中の機能 ベータ版:十分なテストがなされ、安定している。 https://learn.microsoft.com/ja-jp/azure/developer/azure-developer-cli/featu re-versioning 参考:Azure Developer CLI機能のバージョン管理とリリース戦略 14

Slide 15

Slide 15 text

v1.4.3〜v1.13.1 15

Slide 16

Slide 16 text

先に総評 ● Aspireが入ってきたあたりから怒涛のアップデート ● AKSのサポート強化 ● 新しいサブコマンドの追加(azd show、azd add) ● ある時期からAI系のアップデートが入ったよ 16

Slide 17

Slide 17 text

v1.4.3 - v1.4.4(2023-10-24~2023-11-10) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.4.3 ● [2787] Added azd config show and deprecated azd config list. https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.4.4 ● [2893] Added command azd show. ● [2925] Promote simplified azd init and Cloud Native buildpacks features to beta 👉 サブコマンドの変更とbuildpacksの対応(beta) 17

Slide 18

Slide 18 text

[2787] Added azd config show and deprecated azd config list. azd config list じゃなくてazd config showにしようぜって話 18

Slide 19

Slide 19 text

一番最初に対応したバージョンはv1.3.0(アルファ版) v1.4.4ではこれがbeta版に移行したという話 19 補足:Cloud Native buildpacks features

Slide 20

Slide 20 text

v1.4.5(2023-11-13) https://github.com/Azure/azure-dev/releases/tag/azure-d ev-cli_1.4.5 bug fixなので割愛(なお、以下の内容) ● [2962] Fix for incorrect id on storage blob built-in role id. ● [2963] Handle project is undetected. 20

Slide 21

Slide 21 text

v1.5.0 - v1.5.1 (2023-11-20~2023-12-20) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.5.0 [2767] Adds support for Azure Deployments Environments. https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.5.1 ● [2998] Adds support for Azure Storage Tables and Queues on Aspire projects. ● [3052] Adds target argument support for docker build. ● [2488] Adds support to override behavior of the KUBECONFIG environment variable on AKS. ● [3075] Adds support for dockerfile.v0 on Aspire projects. ● [2992] Adds support for dapr on Aspire projects. 21

Slide 22

Slide 22 text

v1.6.0(2024-02-13) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.6.0 ● [3269] Adds support for external/prebuilt container image references ● [3251] Adds additional configuration resolving container registry names ● [3249] Adds additional configuration resolving AKS cluster names ● [3223] Updates AKS core modules for azd to easily enable RBAC clusters ● [3211] Adds support for RBAC enabled AKS clusters using kubelogin ● [3196] Adds support for Helm and Kustomize for AKS service targets ● [3173] Adds support for defining customizable azd up workflows 22

Slide 23

Slide 23 text

[3269] Adds support for external/prebuilt container image references 外部あるいは事前構築済みのコンテナレジストリへの対応 (いままで対応していなかったのか?!) 23

Slide 24

Slide 24 text

v1.6.0(2024-02-13) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.6.0 ● dotnet Aspire additions: ○ [3164] Azure Cosmos DB. ○ [3226] Azure SQL Database. ○ [3276] Secrets handling improvement. ● [3155] Adds support to define secrets and variables for azd pipeline config. 24

Slide 25

Slide 25 text

v1.6.1(2024-02-15) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.6.1 bug fixなので割愛(なお、以下の内容) ● [3375] Fixes issues deploying to AKS service targets ● [3373] Fixes resolution of AZD compatible templates within azure dev center catalogs ● [3372] Removes requirement for dev center projects to include an infra folder 25

Slide 26

Slide 26 text

v1.7.0(2024-03-12) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.7.0 ● [3450] Adds support for pushing container images to external container registries ● [3452] Adds support for other clouds ● dotnet Aspire: ○ [3349] Adds support for bicep and prompts for parameters ○ [3411] Adds support for value.v0 ○ [3425] Sets DOTNET_ENVIRONMENT when running AppHost 26

Slide 27

Slide 27 text

v1.8.0(2024-04-09) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.8.0 ● [3569] Adds --from-code flag to initialize from existing code when running azd init ● dotnet Aspire: ○ [3612] Supports Aspire apps with multiple exposed ports ○ [3484] Discovers export port from the result of dotnet publish ○ [3556] Adds Aspire volumes support ○ [3561] Supports more input generation in Aspire manifest 27

Slide 28

Slide 28 text

補足:[3569] Adds --from-code flag to initialize from existing code when running azd init この機能はv1.3.0で公開 既存のアプリケーションからazdテンプレートを自動で生成する機能 参考: https://devblogs.microsoft.com/azure-sdk/azure-developer-cli-azd-septe mber-2023-release/ 28

Slide 29

Slide 29 text

v1.8.1 - v1.8.2(2024-04-23~2024-04-30) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.8.1 ● [3731] Support Data Protection Runtime feature for .NET Aspire in ACA under feature flag azd config set alpha.aspire.autoConfigureDataProtection on ● [3715] Improved security to prevent committing an environment to the repository(要するに.gitignoreで安全に開発できるって話) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.8.2 ● [3804] Add user vault storage for development secrets ● [3755] Store secure() Bicep parameters outside source tree 29

Slide 30

Slide 30 text

v1.9.0(2024-05-07) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.0 ● [3718] Deploy AI/ML studio online endpoints with host ml.endpoint. Starter templates azd-ai-starter and azd-aistudio-starter are available to get started with ease. ● [3840] Filter templates when running azd init or azd template list with --filter ● .NET Aspire: ○ [3267] Support services with multiple exposed ports ○ [3820] Container resources now supports reference expressions, and are now modeled the same as project resources 30

Slide 31

Slide 31 text

補足:azdでAIアプリをはじめるためのスターター ● https://github.com/Azure-Samples/azd-ai-starter ● https://github.com/Azure-Samples/azd-aistudio-starter 31

Slide 32

Slide 32 text

v1.9.1- v.19.2 bug fixなので割愛(なお、以下の内容) v1.9.1 ● [3876] Take infra section of azure.yaml into account. ● [3881] Make azd to wait until the expected state can be seen from the online endpoint. ● [3763] Add deployment status tracking for linux web apps. ● [3897] Update ResolvedRaw() to remove reference to the vault. ● [3898] Easy Init: Improve handling for empty state. ● [3903] Fix type issues in PromptDialog with external prompting. v1.9.2 ● [3915] Revert - Add deployment status tracking for linux web apps. 32

Slide 33

Slide 33 text

v1.9.3(2024-05-20) https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.3 ● [3925] Graduates alpha feature: Aspire Dashboard ● [3929] Graduates alpha feature: Aspire Auto Configure Data Protection 33

Slide 34

Slide 34 text

v1.9.4 https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.4 ● [3924] Updating azd pipeline config to support Federated Credential for Azure DevOps. ● [3553] Support swa-cli.config.json for Azure Static Web Apps. ● [3955] Adding alpha feature alpha.aca.persistDomains. ● [3723] Add --managed-identity to azd auth login. ● [3965] Add deployment status tracking for linux web apps. 34

Slide 35

Slide 35 text

v1.9.4 ● [4003] Add support for deploying flex-consumption function apps. ● [4008] Add support for container.v1 [Aspire]. ● [4030] Prompt to add pipeline definition file during azd pipeline config. ● [3790] Adding alpha feature azd.operations to support .Net Aspire bind mounts. ● [4049] Adding pipeline config --applicationServiceManagementReference. 35

Slide 36

Slide 36 text

v1.9.5 - v1.9.6 https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.5 [4080] Add azd env get-value. https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.6 ● [4115] Adding alpha feature alpha.aca.persistIngressSessionAffinity. 36

Slide 37

Slide 37 text

v1.10.0 https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.10.0 ● [4165] Add support for alpha feature Azure Deployment stacks. ● [4236] Support args on container.{v0,v1}. ● [4257] Add support for multiple hooks per event. ● [4190] Add support for .azuredevops folder. ● [4161] Add remote builds support with Azure Container Registry. 37

Slide 38

Slide 38 text

補足:Azure Deployment stacksとは 2024年5月24日にGAされたサービス ● Azure リソースのコレクションを 1 つのユニットとして管理 ● 更新と削除 (クリーンアップ) を高速化 参考: https://techcommunity.microsoft.com/blog/azuregovernanceandmanagementblog/ar m-deployment-stacks-now-ga/4145469 38

Slide 39

Slide 39 text

v1.10.0 ● [4254] Add support for environment variable substitution for source container image. ● [4203] Add GitHub as template source configuration option. ● [4208] Add support for Java Azure Functions. 39

Slide 40

Slide 40 text

v1.10.1~v1.13.1 ● azd addの追加 (v1.11.0) ○ コンポーネント単位でサービスを追加できる ● azd infra synthの追加(v1.11.0) ○ インフラ管理コマンド ● dotnet publishとの連携(v1.11.1) ○ ビルドエクスペリエンスの向上(dotnet開発者向け) 40

Slide 41

Slide 41 text

まとめ ● azdの概要を確認したよ ● azdのアップデートを古い順に追ったよ ● Aspire、AKS、AI系のアップデートもあったよ だいぶ成熟してきた?ような印象を受ける。 41