diff --git a/examples/go.mod b/examples/go.mod index 4821c06df3..f22242a033 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -5,7 +5,7 @@ go 1.21 replace github.com/hashicorp/vault => github.com/hashicorp/vault v1.2.0 require ( - github.com/pulumi/pulumi/pkg/v3 v3.94.2 + github.com/pulumi/pulumi/pkg/v3 v3.95.0 github.com/stretchr/testify v1.8.4 ) @@ -114,9 +114,9 @@ require ( github.com/kevinburke/ssh_config v1.2.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-isatty v0.0.18 // indirect + github.com/mattn/go-isatty v0.0.19 // indirect github.com/mattn/go-localereader v0.0.1 // indirect - github.com/mattn/go-runewidth v0.0.14 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect @@ -126,22 +126,24 @@ require ( github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect github.com/muesli/cancelreader v0.2.2 // indirect github.com/muesli/reflow v0.3.0 // indirect - github.com/muesli/termenv v0.15.1 // indirect + github.com/muesli/termenv v0.15.2 // indirect github.com/natefinch/atomic v1.0.1 // indirect github.com/oklog/run v1.1.0 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect github.com/pjbgf/sha1cd v0.3.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/pulumi/esc v0.6.0 // indirect - github.com/pulumi/pulumi/sdk/v3 v3.94.2 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.95.0 // indirect github.com/rivo/uniseg v0.4.4 // indirect github.com/rogpeppe/go-internal v1.11.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect @@ -166,17 +168,17 @@ require ( go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.27.0 // indirect gocloud.dev/secrets/hashivault v0.27.0 // indirect - golang.org/x/crypto v0.14.0 // indirect - golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect - golang.org/x/mod v0.13.0 // indirect - golang.org/x/net v0.17.0 // indirect + golang.org/x/crypto v0.15.0 // indirect + golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect + golang.org/x/mod v0.14.0 // indirect + golang.org/x/net v0.18.0 // indirect golang.org/x/oauth2 v0.8.0 // indirect - golang.org/x/sync v0.4.0 // indirect - golang.org/x/sys v0.13.0 // indirect - golang.org/x/term v0.13.0 // indirect - golang.org/x/text v0.13.0 // indirect + golang.org/x/sync v0.5.0 // indirect + golang.org/x/sys v0.14.0 // indirect + golang.org/x/term v0.14.0 // indirect + golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.0.0-20220722155302-e5dcc9cfc0b9 // indirect - golang.org/x/tools v0.14.0 // indirect + golang.org/x/tools v0.15.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.126.0 // indirect google.golang.org/appengine v1.6.7 // indirect @@ -189,5 +191,4 @@ require ( gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 // indirect ) diff --git a/examples/go.sum b/examples/go.sum index c80c7d7ece..1fe364d5f5 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -1174,15 +1174,15 @@ github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcME github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.18 h1:DOKFKCQ7FNG2L1rbrmstDN4QVRdS89Nkh85u68Uwp98= -github.com/mattn/go-isatty v0.0.18/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= +github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= -github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU= -github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= +github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= @@ -1250,14 +1250,14 @@ github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJ github.com/montanaflynn/stats v0.6.6/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= -github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b h1:1XF24mVaiu7u+CFywTdcDo2ie1pzzhwjt6RHqzpMU34= -github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b/go.mod h1:fQuZ0gauxyBcmsdE3ZT4NasjaRdxmbCS0jRHsrWu3Ho= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= -github.com/muesli/termenv v0.15.1 h1:UzuTb/+hhlBugQz28rpzey4ZuKcZ03MeKsoG7IJZIxs= -github.com/muesli/termenv v0.15.1/go.mod h1:HeAQPTzpfs016yGtA4g00CsdYnVLJvxsS4ANqrZs2sQ= +github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= +github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= @@ -1358,6 +1358,8 @@ github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrap github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= +github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= +github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386/go.mod h1:MRxHTJrf9FhdfNQ8Hdeh9gmHevC9RJE/fu8M3JIGjoE= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= @@ -1439,12 +1441,14 @@ github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1 github.com/prometheus/prometheus v0.35.0/go.mod h1:7HaLx5kEPKJ0GDgbODG0fZgXbQ8K/XjZNJXQmbmgQlY= github.com/prometheus/prometheus v0.37.0/go.mod h1:egARUgz+K93zwqsVIAneFlLZefyGOON44WyAp4Xqbbk= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= -github.com/pulumi/esc v0.6.0 h1:m8jWgBektlj26RvrN3/sM0r1lYiwTMmqVPvLxCxahGE= -github.com/pulumi/esc v0.6.0/go.mod h1:Y6W21yUukvxS2NnS5ae1beMSPhMvj0xNAYcDqDHVj/g= -github.com/pulumi/pulumi/pkg/v3 v3.94.2 h1:b+gQ+EJZMYfSIu/sb/+p36VmfZ2ZJWbEWMsptt2f6Kk= -github.com/pulumi/pulumi/pkg/v3 v3.94.2/go.mod h1:aCeDMlncyDwX3RG6+vYUjWsy6bOEtoHUY0twCcn5qqE= -github.com/pulumi/pulumi/sdk/v3 v3.94.2 h1:B8W3CCzA2fX/0730o/7KQXdmqrY5KdgGtiAA6rDMVlk= -github.com/pulumi/pulumi/sdk/v3 v3.94.2/go.mod h1:zeqyIODqbb6GrEyhFV6aJET/xBSXSnF7Bw/EjbYZUnU= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= +github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 h1:1DJMji9F7XPea46bSuhy4/85n8J4/Mfz8PWLZtjKKiI= +github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5/go.mod h1:Y6W21yUukvxS2NnS5ae1beMSPhMvj0xNAYcDqDHVj/g= +github.com/pulumi/pulumi/pkg/v3 v3.95.0 h1:FBA0EmjRaqUgzleFMpLSAQUojXH2PyIVERzAm53p63U= +github.com/pulumi/pulumi/pkg/v3 v3.95.0/go.mod h1:4mjOPC8lb49ihR/HbGmid0y9GFlpfP9Orumr0wFOGno= +github.com/pulumi/pulumi/sdk/v3 v3.95.0 h1:SBpFZYdbVF8DtmiEosut2BRVRjLxPpcQf5bOkyPWosQ= +github.com/pulumi/pulumi/sdk/v3 v3.95.0/go.mod h1:xzyBCCPSyLSqOVyfwlaXIS7FqxpiGyLcOOWCzBF7ZKY= github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= @@ -1761,8 +1765,8 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0 golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc= -golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= +golang.org/x/crypto v0.15.0 h1:frVn1TEaCEaZcn3Tmd7Y2b5KKPaZ+I32Q2OA3kYp5TA= +golang.org/x/crypto v0.15.0/go.mod h1:4ChreQoLWfG3xLDer1WdlH5NdlQ3+mwnQq1YTKY+72g= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -1773,8 +1777,8 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI= -golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -1805,8 +1809,8 @@ golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.13.0 h1:I/DsJXRlw/8l/0c24sM9yb0T4z9liZTduXvdAWYiysY= -golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= +golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1890,8 +1894,8 @@ golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= -golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/net v0.18.0 h1:mIYleuAkSbHh0tCv7RvjL3F6ZVbLjq4+R7zbOn3Kokg= +golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1934,8 +1938,8 @@ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.4.0 h1:zxkM55ReGkDlKSM+Fu41A+zmbZuaPVbGMzvvdUPznYQ= -golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= +golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -2083,8 +2087,8 @@ golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.14.0 h1:Vz7Qs629MkJkGyHxUlRHizWJRG2j8fbQKjELVSNhy7Q= +golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -2094,8 +2098,8 @@ golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= -golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek= -golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= +golang.org/x/term v0.14.0 h1:LGK9IlZ8T9jvdy6cTdfKUCltatMFOehAQo9SRC46UQ8= +golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -2109,8 +2113,8 @@ golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= -golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -2208,8 +2212,8 @@ golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.14.0 h1:jvNa2pY0M4r62jkRQ6RwEZZyPcymeL9XZMLBbV7U2nc= -golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg= +golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= +golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -2586,5 +2590,3 @@ sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 h1:hfyJ5ku9yFtLVOiSxa3IN+dx5eBQT9mPmKFypAmg8XM= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= diff --git a/provider/cmd/pulumi-resource-azure/schema.json b/provider/cmd/pulumi-resource-azure/schema.json index 7f2fac672b..703e926050 100644 --- a/provider/cmd/pulumi-resource-azure/schema.json +++ b/provider/cmd/pulumi-resource-azure/schema.json @@ -100435,7 +100435,7 @@ } }, "azure:apimanagement/apiSchema:ApiSchema": { - "description": "Manages an API Schema within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleApi = azure.apimanagement.getApi({\n name: \"search-api\",\n apiManagementName: \"search-api-management\",\n resourceGroupName: \"search-service\",\n revision: \"2\",\n});\nconst exampleApiSchema = new azure.apimanagement.ApiSchema(\"exampleApiSchema\", {\n apiName: exampleApi.then(exampleApi =\u003e exampleApi.name),\n apiManagementName: exampleApi.then(exampleApi =\u003e exampleApi.apiManagementName),\n resourceGroupName: exampleApi.then(exampleApi =\u003e exampleApi.resourceGroupName),\n schemaId: \"example-schema\",\n contentType: \"application/vnd.ms-azure-apim.xsd+xml\",\n value: fs.readFileSync(\"api_management_api_schema.xml\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_api = azure.apimanagement.get_api(name=\"search-api\",\n api_management_name=\"search-api-management\",\n resource_group_name=\"search-service\",\n revision=\"2\")\nexample_api_schema = azure.apimanagement.ApiSchema(\"exampleApiSchema\",\n api_name=example_api.name,\n api_management_name=example_api.api_management_name,\n resource_group_name=example_api.resource_group_name,\n schema_id=\"example-schema\",\n content_type=\"application/vnd.ms-azure-apim.xsd+xml\",\n value=(lambda path: open(path).read())(\"api_management_api_schema.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleApi = Azure.ApiManagement.GetApi.Invoke(new()\n {\n Name = \"search-api\",\n ApiManagementName = \"search-api-management\",\n ResourceGroupName = \"search-service\",\n Revision = \"2\",\n });\n\n var exampleApiSchema = new Azure.ApiManagement.ApiSchema(\"exampleApiSchema\", new()\n {\n ApiName = exampleApi.Apply(getApiResult =\u003e getApiResult.Name),\n ApiManagementName = exampleApi.Apply(getApiResult =\u003e getApiResult.ApiManagementName),\n ResourceGroupName = exampleApi.Apply(getApiResult =\u003e getApiResult.ResourceGroupName),\n SchemaId = \"example-schema\",\n ContentType = \"application/vnd.ms-azure-apim.xsd+xml\",\n Value = File.ReadAllText(\"api_management_api_schema.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleApi, err := apimanagement.LookupApi(ctx, \u0026apimanagement.LookupApiArgs{\n\t\t\tName: \"search-api\",\n\t\t\tApiManagementName: \"search-api-management\",\n\t\t\tResourceGroupName: \"search-service\",\n\t\t\tRevision: \"2\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewApiSchema(ctx, \"exampleApiSchema\", \u0026apimanagement.ApiSchemaArgs{\n\t\t\tApiName: *pulumi.String(exampleApi.Name),\n\t\t\tApiManagementName: *pulumi.String(exampleApi.ApiManagementName),\n\t\t\tResourceGroupName: *pulumi.String(exampleApi.ResourceGroupName),\n\t\t\tSchemaId: pulumi.String(\"example-schema\"),\n\t\t\tContentType: pulumi.String(\"application/vnd.ms-azure-apim.xsd+xml\"),\n\t\t\tValue: readFileOrPanic(\"api_management_api_schema.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.apimanagement.ApimanagementFunctions;\nimport com.pulumi.azure.apimanagement.inputs.GetApiArgs;\nimport com.pulumi.azure.apimanagement.ApiSchema;\nimport com.pulumi.azure.apimanagement.ApiSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleApi = ApimanagementFunctions.getApi(GetApiArgs.builder()\n .name(\"search-api\")\n .apiManagementName(\"search-api-management\")\n .resourceGroupName(\"search-service\")\n .revision(\"2\")\n .build());\n\n var exampleApiSchema = new ApiSchema(\"exampleApiSchema\", ApiSchemaArgs.builder() \n .apiName(exampleApi.applyValue(getApiResult -\u003e getApiResult.name()))\n .apiManagementName(exampleApi.applyValue(getApiResult -\u003e getApiResult.apiManagementName()))\n .resourceGroupName(exampleApi.applyValue(getApiResult -\u003e getApiResult.resourceGroupName()))\n .schemaId(\"example-schema\")\n .contentType(\"application/vnd.ms-azure-apim.xsd+xml\")\n .value(Files.readString(Paths.get(\"api_management_api_schema.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApiSchema:\n type: azure:apimanagement:ApiSchema\n properties:\n apiName: ${exampleApi.name}\n apiManagementName: ${exampleApi.apiManagementName}\n resourceGroupName: ${exampleApi.resourceGroupName}\n schemaId: example-schema\n contentType: application/vnd.ms-azure-apim.xsd+xml\n value:\n fn::readFile: api_management_api_schema.xml\nvariables:\n exampleApi:\n fn::invoke:\n Function: azure:apimanagement:getApi\n Arguments:\n name: search-api\n apiManagementName: search-api-management\n resourceGroupName: search-service\n revision: '2'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management API Schema's can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/apiSchema:ApiSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/apis/api1/schemas/schema1\n```\n\n ", + "description": "Manages an API Schema within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleApi = azure.apimanagement.getApi({\n name: \"search-api\",\n apiManagementName: \"search-api-management\",\n resourceGroupName: \"search-service\",\n revision: \"2\",\n});\nconst exampleApiSchema = new azure.apimanagement.ApiSchema(\"exampleApiSchema\", {\n apiName: exampleApi.then(exampleApi =\u003e exampleApi.name),\n apiManagementName: exampleApi.then(exampleApi =\u003e exampleApi.apiManagementName),\n resourceGroupName: exampleApi.then(exampleApi =\u003e exampleApi.resourceGroupName),\n schemaId: \"example-schema\",\n contentType: \"application/vnd.ms-azure-apim.xsd+xml\",\n value: fs.readFileSync(\"api_management_api_schema.xml\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_api = azure.apimanagement.get_api(name=\"search-api\",\n api_management_name=\"search-api-management\",\n resource_group_name=\"search-service\",\n revision=\"2\")\nexample_api_schema = azure.apimanagement.ApiSchema(\"exampleApiSchema\",\n api_name=example_api.name,\n api_management_name=example_api.api_management_name,\n resource_group_name=example_api.resource_group_name,\n schema_id=\"example-schema\",\n content_type=\"application/vnd.ms-azure-apim.xsd+xml\",\n value=(lambda path: open(path).read())(\"api_management_api_schema.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleApi = Azure.ApiManagement.GetApi.Invoke(new()\n {\n Name = \"search-api\",\n ApiManagementName = \"search-api-management\",\n ResourceGroupName = \"search-service\",\n Revision = \"2\",\n });\n\n var exampleApiSchema = new Azure.ApiManagement.ApiSchema(\"exampleApiSchema\", new()\n {\n ApiName = exampleApi.Apply(getApiResult =\u003e getApiResult.Name),\n ApiManagementName = exampleApi.Apply(getApiResult =\u003e getApiResult.ApiManagementName),\n ResourceGroupName = exampleApi.Apply(getApiResult =\u003e getApiResult.ResourceGroupName),\n SchemaId = \"example-schema\",\n ContentType = \"application/vnd.ms-azure-apim.xsd+xml\",\n Value = File.ReadAllText(\"api_management_api_schema.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleApi, err := apimanagement.LookupApi(ctx, \u0026apimanagement.LookupApiArgs{\n\t\t\tName: \"search-api\",\n\t\t\tApiManagementName: \"search-api-management\",\n\t\t\tResourceGroupName: \"search-service\",\n\t\t\tRevision: \"2\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewApiSchema(ctx, \"exampleApiSchema\", \u0026apimanagement.ApiSchemaArgs{\n\t\t\tApiName: *pulumi.String(exampleApi.Name),\n\t\t\tApiManagementName: *pulumi.String(exampleApi.ApiManagementName),\n\t\t\tResourceGroupName: *pulumi.String(exampleApi.ResourceGroupName),\n\t\t\tSchemaId: pulumi.String(\"example-schema\"),\n\t\t\tContentType: pulumi.String(\"application/vnd.ms-azure-apim.xsd+xml\"),\n\t\t\tValue: readFileOrPanic(\"api_management_api_schema.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.apimanagement.ApimanagementFunctions;\nimport com.pulumi.azure.apimanagement.inputs.GetApiArgs;\nimport com.pulumi.azure.apimanagement.ApiSchema;\nimport com.pulumi.azure.apimanagement.ApiSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleApi = ApimanagementFunctions.getApi(GetApiArgs.builder()\n .name(\"search-api\")\n .apiManagementName(\"search-api-management\")\n .resourceGroupName(\"search-service\")\n .revision(\"2\")\n .build());\n\n var exampleApiSchema = new ApiSchema(\"exampleApiSchema\", ApiSchemaArgs.builder() \n .apiName(exampleApi.applyValue(getApiResult -\u003e getApiResult.name()))\n .apiManagementName(exampleApi.applyValue(getApiResult -\u003e getApiResult.apiManagementName()))\n .resourceGroupName(exampleApi.applyValue(getApiResult -\u003e getApiResult.resourceGroupName()))\n .schemaId(\"example-schema\")\n .contentType(\"application/vnd.ms-azure-apim.xsd+xml\")\n .value(Files.readString(Paths.get(\"api_management_api_schema.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleApiSchema:\n type: azure:apimanagement:ApiSchema\n properties:\n apiName: ${exampleApi.name}\n apiManagementName: ${exampleApi.apiManagementName}\n resourceGroupName: ${exampleApi.resourceGroupName}\n schemaId: example-schema\n contentType: application/vnd.ms-azure-apim.xsd+xml\n value:\n fn::readFile: api_management_api_schema.xml\nvariables:\n exampleApi:\n fn::invoke:\n Function: azure:apimanagement:getApi\n Arguments:\n name: search-api\n apiManagementName: search-api-management\n resourceGroupName: search-service\n revision: '2'\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management API Schema's can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/apiSchema:ApiSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/apis/api1/schemas/schema1\n```\n\n ", "properties": { "apiManagementName": { "type": "string", @@ -102248,7 +102248,7 @@ } }, "azure:apimanagement/globalSchema:GlobalSchema": { - "description": "Manages a Global Schema within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGlobalSchema = new azure.apimanagement.GlobalSchema(\"exampleGlobalSchema\", {\n schemaId: \"example-schema1\",\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n type: \"xml\",\n value: fs.readFileSync(\"api_management_api_schema.xml\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_global_schema = azure.apimanagement.GlobalSchema(\"exampleGlobalSchema\",\n schema_id=\"example-schema1\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n type=\"xml\",\n value=(lambda path: open(path).read())(\"api_management_api_schema.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGlobalSchema = new Azure.ApiManagement.GlobalSchema(\"exampleGlobalSchema\", new()\n {\n SchemaId = \"example-schema1\",\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Type = \"xml\",\n Value = File.ReadAllText(\"api_management_api_schema.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGlobalSchema(ctx, \"exampleGlobalSchema\", \u0026apimanagement.GlobalSchemaArgs{\n\t\t\tSchemaId: pulumi.String(\"example-schema1\"),\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tType: pulumi.String(\"xml\"),\n\t\t\tValue: readFileOrPanic(\"api_management_api_schema.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.GlobalSchema;\nimport com.pulumi.azure.apimanagement.GlobalSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGlobalSchema = new GlobalSchema(\"exampleGlobalSchema\", GlobalSchemaArgs.builder() \n .schemaId(\"example-schema1\")\n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .type(\"xml\")\n .value(Files.readString(Paths.get(\"api_management_api_schema.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleService:\n type: azure:apimanagement:Service\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n publisherName: pub1\n publisherEmail: pub1@email.com\n skuName: Consumption_0\n exampleGlobalSchema:\n type: azure:apimanagement:GlobalSchema\n properties:\n schemaId: example-schema1\n apiManagementName: ${exampleService.name}\n resourceGroupName: ${exampleResourceGroup.name}\n type: xml\n value:\n fn::readFile: api_management_api_schema.xml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management API Schema's can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/globalSchema:GlobalSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/schemas/schema1\n```\n\n ", + "description": "Manages a Global Schema within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGlobalSchema = new azure.apimanagement.GlobalSchema(\"exampleGlobalSchema\", {\n schemaId: \"example-schema1\",\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n type: \"xml\",\n value: fs.readFileSync(\"api_management_api_schema.xml\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_global_schema = azure.apimanagement.GlobalSchema(\"exampleGlobalSchema\",\n schema_id=\"example-schema1\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n type=\"xml\",\n value=(lambda path: open(path).read())(\"api_management_api_schema.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGlobalSchema = new Azure.ApiManagement.GlobalSchema(\"exampleGlobalSchema\", new()\n {\n SchemaId = \"example-schema1\",\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Type = \"xml\",\n Value = File.ReadAllText(\"api_management_api_schema.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGlobalSchema(ctx, \"exampleGlobalSchema\", \u0026apimanagement.GlobalSchemaArgs{\n\t\t\tSchemaId: pulumi.String(\"example-schema1\"),\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tType: pulumi.String(\"xml\"),\n\t\t\tValue: readFileOrPanic(\"api_management_api_schema.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.GlobalSchema;\nimport com.pulumi.azure.apimanagement.GlobalSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGlobalSchema = new GlobalSchema(\"exampleGlobalSchema\", GlobalSchemaArgs.builder() \n .schemaId(\"example-schema1\")\n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .type(\"xml\")\n .value(Files.readString(Paths.get(\"api_management_api_schema.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleService:\n type: azure:apimanagement:Service\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n publisherName: pub1\n publisherEmail: pub1@email.com\n skuName: Consumption_0\n exampleGlobalSchema:\n type: azure:apimanagement:GlobalSchema\n properties:\n schemaId: example-schema1\n apiManagementName: ${exampleService.name}\n resourceGroupName: ${exampleResourceGroup.name}\n type: xml\n value:\n fn::readFile: api_management_api_schema.xml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management API Schema's can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/globalSchema:GlobalSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/schemas/schema1\n```\n\n ", "properties": { "apiManagementName": { "type": "string", @@ -103700,7 +103700,7 @@ } }, "azure:apimanagement/policy:Policy": { - "description": "Manages a API Management service Policy.\n\n\u003e **NOTE:** This resource will, upon creation, **overwrite any existing policy in the API Management service**, as there is no feasible way to test whether the policy has been modified from the default. Similarly, when this resource is destroyed, the API Management service will revert to its default policy.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Developer_1\",\n});\nconst exampleNamedValue = new azure.apimanagement.NamedValue(\"exampleNamedValue\", {\n resourceGroupName: exampleResourceGroup.name,\n apiManagementName: exampleService.name,\n displayName: \"ExampleProperty\",\n value: \"Example Value\",\n});\nconst examplePolicy = new azure.apimanagement.Policy(\"examplePolicy\", {\n apiManagementId: exampleService.id,\n xmlContent: fs.readFileSync(\"example.xml\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Developer_1\")\nexample_named_value = azure.apimanagement.NamedValue(\"exampleNamedValue\",\n resource_group_name=example_resource_group.name,\n api_management_name=example_service.name,\n display_name=\"ExampleProperty\",\n value=\"Example Value\")\nexample_policy = azure.apimanagement.Policy(\"examplePolicy\",\n api_management_id=example_service.id,\n xml_content=(lambda path: open(path).read())(\"example.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Developer_1\",\n });\n\n var exampleNamedValue = new Azure.ApiManagement.NamedValue(\"exampleNamedValue\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n ApiManagementName = exampleService.Name,\n DisplayName = \"ExampleProperty\",\n Value = \"Example Value\",\n });\n\n var examplePolicy = new Azure.ApiManagement.Policy(\"examplePolicy\", new()\n {\n ApiManagementId = exampleService.Id,\n XmlContent = File.ReadAllText(\"example.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewNamedValue(ctx, \"exampleNamedValue\", \u0026apimanagement.NamedValueArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tDisplayName: pulumi.String(\"ExampleProperty\"),\n\t\t\tValue: pulumi.String(\"Example Value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewPolicy(ctx, \"examplePolicy\", \u0026apimanagement.PolicyArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tXmlContent: readFileOrPanic(\"example.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.NamedValue;\nimport com.pulumi.azure.apimanagement.NamedValueArgs;\nimport com.pulumi.azure.apimanagement.Policy;\nimport com.pulumi.azure.apimanagement.PolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Developer_1\")\n .build());\n\n var exampleNamedValue = new NamedValue(\"exampleNamedValue\", NamedValueArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .apiManagementName(exampleService.name())\n .displayName(\"ExampleProperty\")\n .value(\"Example Value\")\n .build());\n\n var examplePolicy = new Policy(\"examplePolicy\", PolicyArgs.builder() \n .apiManagementId(exampleService.id())\n .xmlContent(Files.readString(Paths.get(\"example.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleService:\n type: azure:apimanagement:Service\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n publisherName: pub1\n publisherEmail: pub1@email.com\n skuName: Developer_1\n exampleNamedValue:\n type: azure:apimanagement:NamedValue\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n apiManagementName: ${exampleService.name}\n displayName: ExampleProperty\n value: Example Value\n examplePolicy:\n type: azure:apimanagement:Policy\n properties:\n apiManagementId: ${exampleService.id}\n xmlContent:\n fn::readFile: example.xml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management service Policys can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/policy:Policy example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1\n```\n\n ", + "description": "Manages a API Management service Policy.\n\n\u003e **NOTE:** This resource will, upon creation, **overwrite any existing policy in the API Management service**, as there is no feasible way to test whether the policy has been modified from the default. Similarly, when this resource is destroyed, the API Management service will revert to its default policy.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Developer_1\",\n});\nconst exampleNamedValue = new azure.apimanagement.NamedValue(\"exampleNamedValue\", {\n resourceGroupName: exampleResourceGroup.name,\n apiManagementName: exampleService.name,\n displayName: \"ExampleProperty\",\n value: \"Example Value\",\n});\nconst examplePolicy = new azure.apimanagement.Policy(\"examplePolicy\", {\n apiManagementId: exampleService.id,\n xmlContent: fs.readFileSync(\"example.xml\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Developer_1\")\nexample_named_value = azure.apimanagement.NamedValue(\"exampleNamedValue\",\n resource_group_name=example_resource_group.name,\n api_management_name=example_service.name,\n display_name=\"ExampleProperty\",\n value=\"Example Value\")\nexample_policy = azure.apimanagement.Policy(\"examplePolicy\",\n api_management_id=example_service.id,\n xml_content=(lambda path: open(path).read())(\"example.xml\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Developer_1\",\n });\n\n var exampleNamedValue = new Azure.ApiManagement.NamedValue(\"exampleNamedValue\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n ApiManagementName = exampleService.Name,\n DisplayName = \"ExampleProperty\",\n Value = \"Example Value\",\n });\n\n var examplePolicy = new Azure.ApiManagement.Policy(\"examplePolicy\", new()\n {\n ApiManagementId = exampleService.Id,\n XmlContent = File.ReadAllText(\"example.xml\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewNamedValue(ctx, \"exampleNamedValue\", \u0026apimanagement.NamedValueArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tDisplayName: pulumi.String(\"ExampleProperty\"),\n\t\t\tValue: pulumi.String(\"Example Value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewPolicy(ctx, \"examplePolicy\", \u0026apimanagement.PolicyArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tXmlContent: readFileOrPanic(\"example.xml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.NamedValue;\nimport com.pulumi.azure.apimanagement.NamedValueArgs;\nimport com.pulumi.azure.apimanagement.Policy;\nimport com.pulumi.azure.apimanagement.PolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Developer_1\")\n .build());\n\n var exampleNamedValue = new NamedValue(\"exampleNamedValue\", NamedValueArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .apiManagementName(exampleService.name())\n .displayName(\"ExampleProperty\")\n .value(\"Example Value\")\n .build());\n\n var examplePolicy = new Policy(\"examplePolicy\", PolicyArgs.builder() \n .apiManagementId(exampleService.id())\n .xmlContent(Files.readString(Paths.get(\"example.xml\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleService:\n type: azure:apimanagement:Service\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n publisherName: pub1\n publisherEmail: pub1@email.com\n skuName: Developer_1\n exampleNamedValue:\n type: azure:apimanagement:NamedValue\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n apiManagementName: ${exampleService.name}\n displayName: ExampleProperty\n value: Example Value\n examplePolicy:\n type: azure:apimanagement:Policy\n properties:\n apiManagementId: ${exampleService.id}\n xmlContent:\n fn::readFile: example.xml\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management service Policys can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/policy:Policy example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1\n```\n\n ", "properties": { "apiManagementId": { "type": "string", @@ -112752,7 +112752,7 @@ } }, "azure:appservice/functionAppFunction:FunctionAppFunction": { - "description": "Manages a Function App Function.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic HTTP Trigger\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleServicePlan = new azure.appservice.ServicePlan(\"exampleServicePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n osType: \"Linux\",\n skuName: \"S1\",\n});\nconst exampleLinuxFunctionApp = new azure.appservice.LinuxFunctionApp(\"exampleLinuxFunctionApp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n servicePlanId: exampleServicePlan.id,\n storageAccountName: exampleAccount.name,\n storageAccountAccessKey: exampleAccount.primaryAccessKey,\n siteConfig: {\n applicationStack: {\n pythonVersion: \"3.9\",\n },\n },\n});\nconst exampleFunctionAppFunction = new azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\", {\n functionAppId: exampleLinuxFunctionApp.id,\n language: \"Python\",\n testData: JSON.stringify({\n name: \"Azure\",\n }),\n configJson: JSON.stringify({\n bindings: [\n {\n authLevel: \"function\",\n direction: \"in\",\n methods: [\n \"get\",\n \"post\",\n ],\n name: \"req\",\n type: \"httpTrigger\",\n },\n {\n direction: \"out\",\n name: \"$return\",\n type: \"http\",\n },\n ],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_service_plan = azure.appservice.ServicePlan(\"exampleServicePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n os_type=\"Linux\",\n sku_name=\"S1\")\nexample_linux_function_app = azure.appservice.LinuxFunctionApp(\"exampleLinuxFunctionApp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n service_plan_id=example_service_plan.id,\n storage_account_name=example_account.name,\n storage_account_access_key=example_account.primary_access_key,\n site_config=azure.appservice.LinuxFunctionAppSiteConfigArgs(\n application_stack=azure.appservice.LinuxFunctionAppSiteConfigApplicationStackArgs(\n python_version=\"3.9\",\n ),\n ))\nexample_function_app_function = azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\",\n function_app_id=example_linux_function_app.id,\n language=\"Python\",\n test_data=json.dumps({\n \"name\": \"Azure\",\n }),\n config_json=json.dumps({\n \"bindings\": [\n {\n \"authLevel\": \"function\",\n \"direction\": \"in\",\n \"methods\": [\n \"get\",\n \"post\",\n ],\n \"name\": \"req\",\n \"type\": \"httpTrigger\",\n },\n {\n \"direction\": \"out\",\n \"name\": \"$return\",\n \"type\": \"http\",\n },\n ],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleServicePlan = new Azure.AppService.ServicePlan(\"exampleServicePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n OsType = \"Linux\",\n SkuName = \"S1\",\n });\n\n var exampleLinuxFunctionApp = new Azure.AppService.LinuxFunctionApp(\"exampleLinuxFunctionApp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n ServicePlanId = exampleServicePlan.Id,\n StorageAccountName = exampleAccount.Name,\n StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,\n SiteConfig = new Azure.AppService.Inputs.LinuxFunctionAppSiteConfigArgs\n {\n ApplicationStack = new Azure.AppService.Inputs.LinuxFunctionAppSiteConfigApplicationStackArgs\n {\n PythonVersion = \"3.9\",\n },\n },\n });\n\n var exampleFunctionAppFunction = new Azure.AppService.FunctionAppFunction(\"exampleFunctionAppFunction\", new()\n {\n FunctionAppId = exampleLinuxFunctionApp.Id,\n Language = \"Python\",\n TestData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Azure\",\n }),\n ConfigJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"bindings\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"authLevel\"] = \"function\",\n [\"direction\"] = \"in\",\n [\"methods\"] = new[]\n {\n \"get\",\n \"post\",\n },\n [\"name\"] = \"req\",\n [\"type\"] = \"httpTrigger\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"direction\"] = \"out\",\n [\"name\"] = \"$return\",\n [\"type\"] = \"http\",\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePlan, err := appservice.NewServicePlan(ctx, \"exampleServicePlan\", \u0026appservice.ServicePlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSkuName: pulumi.String(\"S1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxFunctionApp, err := appservice.NewLinuxFunctionApp(ctx, \"exampleLinuxFunctionApp\", \u0026appservice.LinuxFunctionAppArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tServicePlanId: exampleServicePlan.ID(),\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tStorageAccountAccessKey: exampleAccount.PrimaryAccessKey,\n\t\t\tSiteConfig: \u0026appservice.LinuxFunctionAppSiteConfigArgs{\n\t\t\t\tApplicationStack: \u0026appservice.LinuxFunctionAppSiteConfigApplicationStackArgs{\n\t\t\t\t\tPythonVersion: pulumi.String(\"3.9\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"name\": \"Azure\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"bindings\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"authLevel\": \"function\",\n\t\t\t\t\t\"direction\": \"in\",\n\t\t\t\t\t\"methods\": []string{\n\t\t\t\t\t\t\"get\",\n\t\t\t\t\t\t\"post\",\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"req\",\n\t\t\t\t\t\"type\": \"httpTrigger\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"direction\": \"out\",\n\t\t\t\t\t\"name\": \"$return\",\n\t\t\t\t\t\"type\": \"http\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = appservice.NewFunctionAppFunction(ctx, \"exampleFunctionAppFunction\", \u0026appservice.FunctionAppFunctionArgs{\n\t\t\tFunctionAppId: exampleLinuxFunctionApp.ID(),\n\t\t\tLanguage: pulumi.String(\"Python\"),\n\t\t\tTestData: pulumi.String(json0),\n\t\t\tConfigJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.appservice.ServicePlan;\nimport com.pulumi.azure.appservice.ServicePlanArgs;\nimport com.pulumi.azure.appservice.LinuxFunctionApp;\nimport com.pulumi.azure.appservice.LinuxFunctionAppArgs;\nimport com.pulumi.azure.appservice.inputs.LinuxFunctionAppSiteConfigArgs;\nimport com.pulumi.azure.appservice.inputs.LinuxFunctionAppSiteConfigApplicationStackArgs;\nimport com.pulumi.azure.appservice.FunctionAppFunction;\nimport com.pulumi.azure.appservice.FunctionAppFunctionArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleServicePlan = new ServicePlan(\"exampleServicePlan\", ServicePlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .osType(\"Linux\")\n .skuName(\"S1\")\n .build());\n\n var exampleLinuxFunctionApp = new LinuxFunctionApp(\"exampleLinuxFunctionApp\", LinuxFunctionAppArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .servicePlanId(exampleServicePlan.id())\n .storageAccountName(exampleAccount.name())\n .storageAccountAccessKey(exampleAccount.primaryAccessKey())\n .siteConfig(LinuxFunctionAppSiteConfigArgs.builder()\n .applicationStack(LinuxFunctionAppSiteConfigApplicationStackArgs.builder()\n .pythonVersion(\"3.9\")\n .build())\n .build())\n .build());\n\n var exampleFunctionAppFunction = new FunctionAppFunction(\"exampleFunctionAppFunction\", FunctionAppFunctionArgs.builder() \n .functionAppId(exampleLinuxFunctionApp.id())\n .language(\"Python\")\n .testData(serializeJson(\n jsonObject(\n jsonProperty(\"name\", \"Azure\")\n )))\n .configJson(serializeJson(\n jsonObject(\n jsonProperty(\"bindings\", jsonArray(\n jsonObject(\n jsonProperty(\"authLevel\", \"function\"),\n jsonProperty(\"direction\", \"in\"),\n jsonProperty(\"methods\", jsonArray(\n \"get\", \n \"post\"\n )),\n jsonProperty(\"name\", \"req\"),\n jsonProperty(\"type\", \"httpTrigger\")\n ), \n jsonObject(\n jsonProperty(\"direction\", \"out\"),\n jsonProperty(\"name\", \"$return\"),\n jsonProperty(\"type\", \"http\")\n )\n ))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n exampleServicePlan:\n type: azure:appservice:ServicePlan\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n osType: Linux\n skuName: S1\n exampleLinuxFunctionApp:\n type: azure:appservice:LinuxFunctionApp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n servicePlanId: ${exampleServicePlan.id}\n storageAccountName: ${exampleAccount.name}\n storageAccountAccessKey: ${exampleAccount.primaryAccessKey}\n siteConfig:\n applicationStack:\n pythonVersion: '3.9'\n exampleFunctionAppFunction:\n type: azure:appservice:FunctionAppFunction\n properties:\n functionAppId: ${exampleLinuxFunctionApp.id}\n language: Python\n testData:\n fn::toJSON:\n name: Azure\n configJson:\n fn::toJSON:\n bindings:\n - authLevel: function\n direction: in\n methods:\n - get\n - post\n name: req\n type: httpTrigger\n - direction: out\n name: $return\n type: http\n```\n{{% /example %}}\n{{% example %}}\n### HTTP Trigger With Code Upload\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleServicePlan = new azure.appservice.ServicePlan(\"exampleServicePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n osType: \"Windows\",\n skuName: \"S1\",\n});\nconst exampleWindowsFunctionApp = new azure.appservice.WindowsFunctionApp(\"exampleWindowsFunctionApp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n servicePlanId: exampleServicePlan.id,\n storageAccountName: exampleAccount.name,\n storageAccountAccessKey: exampleAccount.primaryAccessKey,\n siteConfig: {\n applicationStack: {\n dotnetVersion: \"6\",\n },\n },\n});\nconst exampleFunctionAppFunction = new azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\", {\n functionAppId: exampleWindowsFunctionApp.id,\n language: \"CSharp\",\n files: [{\n name: \"run.csx\",\n content: fs.readFileSync(\"exampledata/run.csx\"),\n }],\n testData: JSON.stringify({\n name: \"Azure\",\n }),\n configJson: JSON.stringify({\n bindings: [\n {\n authLevel: \"function\",\n direction: \"in\",\n methods: [\n \"get\",\n \"post\",\n ],\n name: \"req\",\n type: \"httpTrigger\",\n },\n {\n direction: \"out\",\n name: \"$return\",\n type: \"http\",\n },\n ],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_service_plan = azure.appservice.ServicePlan(\"exampleServicePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n os_type=\"Windows\",\n sku_name=\"S1\")\nexample_windows_function_app = azure.appservice.WindowsFunctionApp(\"exampleWindowsFunctionApp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n service_plan_id=example_service_plan.id,\n storage_account_name=example_account.name,\n storage_account_access_key=example_account.primary_access_key,\n site_config=azure.appservice.WindowsFunctionAppSiteConfigArgs(\n application_stack=azure.appservice.WindowsFunctionAppSiteConfigApplicationStackArgs(\n dotnet_version=\"6\",\n ),\n ))\nexample_function_app_function = azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\",\n function_app_id=example_windows_function_app.id,\n language=\"CSharp\",\n files=[azure.appservice.FunctionAppFunctionFileArgs(\n name=\"run.csx\",\n content=(lambda path: open(path).read())(\"exampledata/run.csx\"),\n )],\n test_data=json.dumps({\n \"name\": \"Azure\",\n }),\n config_json=json.dumps({\n \"bindings\": [\n {\n \"authLevel\": \"function\",\n \"direction\": \"in\",\n \"methods\": [\n \"get\",\n \"post\",\n ],\n \"name\": \"req\",\n \"type\": \"httpTrigger\",\n },\n {\n \"direction\": \"out\",\n \"name\": \"$return\",\n \"type\": \"http\",\n },\n ],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleServicePlan = new Azure.AppService.ServicePlan(\"exampleServicePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n OsType = \"Windows\",\n SkuName = \"S1\",\n });\n\n var exampleWindowsFunctionApp = new Azure.AppService.WindowsFunctionApp(\"exampleWindowsFunctionApp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n ServicePlanId = exampleServicePlan.Id,\n StorageAccountName = exampleAccount.Name,\n StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,\n SiteConfig = new Azure.AppService.Inputs.WindowsFunctionAppSiteConfigArgs\n {\n ApplicationStack = new Azure.AppService.Inputs.WindowsFunctionAppSiteConfigApplicationStackArgs\n {\n DotnetVersion = \"6\",\n },\n },\n });\n\n var exampleFunctionAppFunction = new Azure.AppService.FunctionAppFunction(\"exampleFunctionAppFunction\", new()\n {\n FunctionAppId = exampleWindowsFunctionApp.Id,\n Language = \"CSharp\",\n Files = new[]\n {\n new Azure.AppService.Inputs.FunctionAppFunctionFileArgs\n {\n Name = \"run.csx\",\n Content = File.ReadAllText(\"exampledata/run.csx\"),\n },\n },\n TestData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Azure\",\n }),\n ConfigJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"bindings\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"authLevel\"] = \"function\",\n [\"direction\"] = \"in\",\n [\"methods\"] = new[]\n {\n \"get\",\n \"post\",\n },\n [\"name\"] = \"req\",\n [\"type\"] = \"httpTrigger\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"direction\"] = \"out\",\n [\"name\"] = \"$return\",\n [\"type\"] = \"http\",\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePlan, err := appservice.NewServicePlan(ctx, \"exampleServicePlan\", \u0026appservice.ServicePlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tOsType: pulumi.String(\"Windows\"),\n\t\t\tSkuName: pulumi.String(\"S1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWindowsFunctionApp, err := appservice.NewWindowsFunctionApp(ctx, \"exampleWindowsFunctionApp\", \u0026appservice.WindowsFunctionAppArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tServicePlanId: exampleServicePlan.ID(),\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tStorageAccountAccessKey: exampleAccount.PrimaryAccessKey,\n\t\t\tSiteConfig: \u0026appservice.WindowsFunctionAppSiteConfigArgs{\n\t\t\t\tApplicationStack: \u0026appservice.WindowsFunctionAppSiteConfigApplicationStackArgs{\n\t\t\t\t\tDotnetVersion: pulumi.String(\"6\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"name\": \"Azure\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"bindings\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"authLevel\": \"function\",\n\t\t\t\t\t\"direction\": \"in\",\n\t\t\t\t\t\"methods\": []string{\n\t\t\t\t\t\t\"get\",\n\t\t\t\t\t\t\"post\",\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"req\",\n\t\t\t\t\t\"type\": \"httpTrigger\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"direction\": \"out\",\n\t\t\t\t\t\"name\": \"$return\",\n\t\t\t\t\t\"type\": \"http\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = appservice.NewFunctionAppFunction(ctx, \"exampleFunctionAppFunction\", \u0026appservice.FunctionAppFunctionArgs{\n\t\t\tFunctionAppId: exampleWindowsFunctionApp.ID(),\n\t\t\tLanguage: pulumi.String(\"CSharp\"),\n\t\t\tFiles: appservice.FunctionAppFunctionFileArray{\n\t\t\t\t\u0026appservice.FunctionAppFunctionFileArgs{\n\t\t\t\t\tName: pulumi.String(\"run.csx\"),\n\t\t\t\t\tContent: readFileOrPanic(\"exampledata/run.csx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTestData: pulumi.String(json0),\n\t\t\tConfigJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.appservice.ServicePlan;\nimport com.pulumi.azure.appservice.ServicePlanArgs;\nimport com.pulumi.azure.appservice.WindowsFunctionApp;\nimport com.pulumi.azure.appservice.WindowsFunctionAppArgs;\nimport com.pulumi.azure.appservice.inputs.WindowsFunctionAppSiteConfigArgs;\nimport com.pulumi.azure.appservice.inputs.WindowsFunctionAppSiteConfigApplicationStackArgs;\nimport com.pulumi.azure.appservice.FunctionAppFunction;\nimport com.pulumi.azure.appservice.FunctionAppFunctionArgs;\nimport com.pulumi.azure.appservice.inputs.FunctionAppFunctionFileArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleServicePlan = new ServicePlan(\"exampleServicePlan\", ServicePlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .osType(\"Windows\")\n .skuName(\"S1\")\n .build());\n\n var exampleWindowsFunctionApp = new WindowsFunctionApp(\"exampleWindowsFunctionApp\", WindowsFunctionAppArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .servicePlanId(exampleServicePlan.id())\n .storageAccountName(exampleAccount.name())\n .storageAccountAccessKey(exampleAccount.primaryAccessKey())\n .siteConfig(WindowsFunctionAppSiteConfigArgs.builder()\n .applicationStack(WindowsFunctionAppSiteConfigApplicationStackArgs.builder()\n .dotnetVersion(\"6\")\n .build())\n .build())\n .build());\n\n var exampleFunctionAppFunction = new FunctionAppFunction(\"exampleFunctionAppFunction\", FunctionAppFunctionArgs.builder() \n .functionAppId(exampleWindowsFunctionApp.id())\n .language(\"CSharp\")\n .files(FunctionAppFunctionFileArgs.builder()\n .name(\"run.csx\")\n .content(Files.readString(Paths.get(\"exampledata/run.csx\")))\n .build())\n .testData(serializeJson(\n jsonObject(\n jsonProperty(\"name\", \"Azure\")\n )))\n .configJson(serializeJson(\n jsonObject(\n jsonProperty(\"bindings\", jsonArray(\n jsonObject(\n jsonProperty(\"authLevel\", \"function\"),\n jsonProperty(\"direction\", \"in\"),\n jsonProperty(\"methods\", jsonArray(\n \"get\", \n \"post\"\n )),\n jsonProperty(\"name\", \"req\"),\n jsonProperty(\"type\", \"httpTrigger\")\n ), \n jsonObject(\n jsonProperty(\"direction\", \"out\"),\n jsonProperty(\"name\", \"$return\"),\n jsonProperty(\"type\", \"http\")\n )\n ))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n exampleServicePlan:\n type: azure:appservice:ServicePlan\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n osType: Windows\n skuName: S1\n exampleWindowsFunctionApp:\n type: azure:appservice:WindowsFunctionApp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n servicePlanId: ${exampleServicePlan.id}\n storageAccountName: ${exampleAccount.name}\n storageAccountAccessKey: ${exampleAccount.primaryAccessKey}\n siteConfig:\n applicationStack:\n dotnetVersion: '6'\n exampleFunctionAppFunction:\n type: azure:appservice:FunctionAppFunction\n properties:\n functionAppId: ${exampleWindowsFunctionApp.id}\n language: CSharp\n files:\n - name: run.csx\n content:\n fn::readFile: exampledata/run.csx\n testData:\n fn::toJSON:\n name: Azure\n configJson:\n fn::toJSON:\n bindings:\n - authLevel: function\n direction: in\n methods:\n - get\n - post\n name: req\n type: httpTrigger\n - direction: out\n name: $return\n type: http\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\na Function App Function can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/functionAppFunction:FunctionAppFunction example \"/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Web/sites/site1/functions/function1\"\n```\n\n ", + "description": "Manages a Function App Function.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Basic HTTP Trigger\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleServicePlan = new azure.appservice.ServicePlan(\"exampleServicePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n osType: \"Linux\",\n skuName: \"S1\",\n});\nconst exampleLinuxFunctionApp = new azure.appservice.LinuxFunctionApp(\"exampleLinuxFunctionApp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n servicePlanId: exampleServicePlan.id,\n storageAccountName: exampleAccount.name,\n storageAccountAccessKey: exampleAccount.primaryAccessKey,\n siteConfig: {\n applicationStack: {\n pythonVersion: \"3.9\",\n },\n },\n});\nconst exampleFunctionAppFunction = new azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\", {\n functionAppId: exampleLinuxFunctionApp.id,\n language: \"Python\",\n testData: JSON.stringify({\n name: \"Azure\",\n }),\n configJson: JSON.stringify({\n bindings: [\n {\n authLevel: \"function\",\n direction: \"in\",\n methods: [\n \"get\",\n \"post\",\n ],\n name: \"req\",\n type: \"httpTrigger\",\n },\n {\n direction: \"out\",\n name: \"$return\",\n type: \"http\",\n },\n ],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_service_plan = azure.appservice.ServicePlan(\"exampleServicePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n os_type=\"Linux\",\n sku_name=\"S1\")\nexample_linux_function_app = azure.appservice.LinuxFunctionApp(\"exampleLinuxFunctionApp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n service_plan_id=example_service_plan.id,\n storage_account_name=example_account.name,\n storage_account_access_key=example_account.primary_access_key,\n site_config=azure.appservice.LinuxFunctionAppSiteConfigArgs(\n application_stack=azure.appservice.LinuxFunctionAppSiteConfigApplicationStackArgs(\n python_version=\"3.9\",\n ),\n ))\nexample_function_app_function = azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\",\n function_app_id=example_linux_function_app.id,\n language=\"Python\",\n test_data=json.dumps({\n \"name\": \"Azure\",\n }),\n config_json=json.dumps({\n \"bindings\": [\n {\n \"authLevel\": \"function\",\n \"direction\": \"in\",\n \"methods\": [\n \"get\",\n \"post\",\n ],\n \"name\": \"req\",\n \"type\": \"httpTrigger\",\n },\n {\n \"direction\": \"out\",\n \"name\": \"$return\",\n \"type\": \"http\",\n },\n ],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleServicePlan = new Azure.AppService.ServicePlan(\"exampleServicePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n OsType = \"Linux\",\n SkuName = \"S1\",\n });\n\n var exampleLinuxFunctionApp = new Azure.AppService.LinuxFunctionApp(\"exampleLinuxFunctionApp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n ServicePlanId = exampleServicePlan.Id,\n StorageAccountName = exampleAccount.Name,\n StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,\n SiteConfig = new Azure.AppService.Inputs.LinuxFunctionAppSiteConfigArgs\n {\n ApplicationStack = new Azure.AppService.Inputs.LinuxFunctionAppSiteConfigApplicationStackArgs\n {\n PythonVersion = \"3.9\",\n },\n },\n });\n\n var exampleFunctionAppFunction = new Azure.AppService.FunctionAppFunction(\"exampleFunctionAppFunction\", new()\n {\n FunctionAppId = exampleLinuxFunctionApp.Id,\n Language = \"Python\",\n TestData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Azure\",\n }),\n ConfigJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"bindings\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"authLevel\"] = \"function\",\n [\"direction\"] = \"in\",\n [\"methods\"] = new[]\n {\n \"get\",\n \"post\",\n },\n [\"name\"] = \"req\",\n [\"type\"] = \"httpTrigger\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"direction\"] = \"out\",\n [\"name\"] = \"$return\",\n [\"type\"] = \"http\",\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePlan, err := appservice.NewServicePlan(ctx, \"exampleServicePlan\", \u0026appservice.ServicePlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tOsType: pulumi.String(\"Linux\"),\n\t\t\tSkuName: pulumi.String(\"S1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxFunctionApp, err := appservice.NewLinuxFunctionApp(ctx, \"exampleLinuxFunctionApp\", \u0026appservice.LinuxFunctionAppArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tServicePlanId: exampleServicePlan.ID(),\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tStorageAccountAccessKey: exampleAccount.PrimaryAccessKey,\n\t\t\tSiteConfig: \u0026appservice.LinuxFunctionAppSiteConfigArgs{\n\t\t\t\tApplicationStack: \u0026appservice.LinuxFunctionAppSiteConfigApplicationStackArgs{\n\t\t\t\t\tPythonVersion: pulumi.String(\"3.9\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"name\": \"Azure\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"bindings\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"authLevel\": \"function\",\n\t\t\t\t\t\"direction\": \"in\",\n\t\t\t\t\t\"methods\": []string{\n\t\t\t\t\t\t\"get\",\n\t\t\t\t\t\t\"post\",\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"req\",\n\t\t\t\t\t\"type\": \"httpTrigger\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"direction\": \"out\",\n\t\t\t\t\t\"name\": \"$return\",\n\t\t\t\t\t\"type\": \"http\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = appservice.NewFunctionAppFunction(ctx, \"exampleFunctionAppFunction\", \u0026appservice.FunctionAppFunctionArgs{\n\t\t\tFunctionAppId: exampleLinuxFunctionApp.ID(),\n\t\t\tLanguage: pulumi.String(\"Python\"),\n\t\t\tTestData: pulumi.String(json0),\n\t\t\tConfigJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.appservice.ServicePlan;\nimport com.pulumi.azure.appservice.ServicePlanArgs;\nimport com.pulumi.azure.appservice.LinuxFunctionApp;\nimport com.pulumi.azure.appservice.LinuxFunctionAppArgs;\nimport com.pulumi.azure.appservice.inputs.LinuxFunctionAppSiteConfigArgs;\nimport com.pulumi.azure.appservice.inputs.LinuxFunctionAppSiteConfigApplicationStackArgs;\nimport com.pulumi.azure.appservice.FunctionAppFunction;\nimport com.pulumi.azure.appservice.FunctionAppFunctionArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleServicePlan = new ServicePlan(\"exampleServicePlan\", ServicePlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .osType(\"Linux\")\n .skuName(\"S1\")\n .build());\n\n var exampleLinuxFunctionApp = new LinuxFunctionApp(\"exampleLinuxFunctionApp\", LinuxFunctionAppArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .servicePlanId(exampleServicePlan.id())\n .storageAccountName(exampleAccount.name())\n .storageAccountAccessKey(exampleAccount.primaryAccessKey())\n .siteConfig(LinuxFunctionAppSiteConfigArgs.builder()\n .applicationStack(LinuxFunctionAppSiteConfigApplicationStackArgs.builder()\n .pythonVersion(\"3.9\")\n .build())\n .build())\n .build());\n\n var exampleFunctionAppFunction = new FunctionAppFunction(\"exampleFunctionAppFunction\", FunctionAppFunctionArgs.builder() \n .functionAppId(exampleLinuxFunctionApp.id())\n .language(\"Python\")\n .testData(serializeJson(\n jsonObject(\n jsonProperty(\"name\", \"Azure\")\n )))\n .configJson(serializeJson(\n jsonObject(\n jsonProperty(\"bindings\", jsonArray(\n jsonObject(\n jsonProperty(\"authLevel\", \"function\"),\n jsonProperty(\"direction\", \"in\"),\n jsonProperty(\"methods\", jsonArray(\n \"get\", \n \"post\"\n )),\n jsonProperty(\"name\", \"req\"),\n jsonProperty(\"type\", \"httpTrigger\")\n ), \n jsonObject(\n jsonProperty(\"direction\", \"out\"),\n jsonProperty(\"name\", \"$return\"),\n jsonProperty(\"type\", \"http\")\n )\n ))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n exampleServicePlan:\n type: azure:appservice:ServicePlan\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n osType: Linux\n skuName: S1\n exampleLinuxFunctionApp:\n type: azure:appservice:LinuxFunctionApp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n servicePlanId: ${exampleServicePlan.id}\n storageAccountName: ${exampleAccount.name}\n storageAccountAccessKey: ${exampleAccount.primaryAccessKey}\n siteConfig:\n applicationStack:\n pythonVersion: '3.9'\n exampleFunctionAppFunction:\n type: azure:appservice:FunctionAppFunction\n properties:\n functionAppId: ${exampleLinuxFunctionApp.id}\n language: Python\n testData:\n fn::toJSON:\n name: Azure\n configJson:\n fn::toJSON:\n bindings:\n - authLevel: function\n direction: in\n methods:\n - get\n - post\n name: req\n type: httpTrigger\n - direction: out\n name: $return\n type: http\n```\n{{% /example %}}\n{{% example %}}\n### HTTP Trigger With Code Upload\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleServicePlan = new azure.appservice.ServicePlan(\"exampleServicePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n osType: \"Windows\",\n skuName: \"S1\",\n});\nconst exampleWindowsFunctionApp = new azure.appservice.WindowsFunctionApp(\"exampleWindowsFunctionApp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n servicePlanId: exampleServicePlan.id,\n storageAccountName: exampleAccount.name,\n storageAccountAccessKey: exampleAccount.primaryAccessKey,\n siteConfig: {\n applicationStack: {\n dotnetVersion: \"6\",\n },\n },\n});\nconst exampleFunctionAppFunction = new azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\", {\n functionAppId: exampleWindowsFunctionApp.id,\n language: \"CSharp\",\n files: [{\n name: \"run.csx\",\n content: fs.readFileSync(\"exampledata/run.csx\", \"utf8\"),\n }],\n testData: JSON.stringify({\n name: \"Azure\",\n }),\n configJson: JSON.stringify({\n bindings: [\n {\n authLevel: \"function\",\n direction: \"in\",\n methods: [\n \"get\",\n \"post\",\n ],\n name: \"req\",\n type: \"httpTrigger\",\n },\n {\n direction: \"out\",\n name: \"$return\",\n type: \"http\",\n },\n ],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_service_plan = azure.appservice.ServicePlan(\"exampleServicePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n os_type=\"Windows\",\n sku_name=\"S1\")\nexample_windows_function_app = azure.appservice.WindowsFunctionApp(\"exampleWindowsFunctionApp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n service_plan_id=example_service_plan.id,\n storage_account_name=example_account.name,\n storage_account_access_key=example_account.primary_access_key,\n site_config=azure.appservice.WindowsFunctionAppSiteConfigArgs(\n application_stack=azure.appservice.WindowsFunctionAppSiteConfigApplicationStackArgs(\n dotnet_version=\"6\",\n ),\n ))\nexample_function_app_function = azure.appservice.FunctionAppFunction(\"exampleFunctionAppFunction\",\n function_app_id=example_windows_function_app.id,\n language=\"CSharp\",\n files=[azure.appservice.FunctionAppFunctionFileArgs(\n name=\"run.csx\",\n content=(lambda path: open(path).read())(\"exampledata/run.csx\"),\n )],\n test_data=json.dumps({\n \"name\": \"Azure\",\n }),\n config_json=json.dumps({\n \"bindings\": [\n {\n \"authLevel\": \"function\",\n \"direction\": \"in\",\n \"methods\": [\n \"get\",\n \"post\",\n ],\n \"name\": \"req\",\n \"type\": \"httpTrigger\",\n },\n {\n \"direction\": \"out\",\n \"name\": \"$return\",\n \"type\": \"http\",\n },\n ],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleServicePlan = new Azure.AppService.ServicePlan(\"exampleServicePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n OsType = \"Windows\",\n SkuName = \"S1\",\n });\n\n var exampleWindowsFunctionApp = new Azure.AppService.WindowsFunctionApp(\"exampleWindowsFunctionApp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n ServicePlanId = exampleServicePlan.Id,\n StorageAccountName = exampleAccount.Name,\n StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,\n SiteConfig = new Azure.AppService.Inputs.WindowsFunctionAppSiteConfigArgs\n {\n ApplicationStack = new Azure.AppService.Inputs.WindowsFunctionAppSiteConfigApplicationStackArgs\n {\n DotnetVersion = \"6\",\n },\n },\n });\n\n var exampleFunctionAppFunction = new Azure.AppService.FunctionAppFunction(\"exampleFunctionAppFunction\", new()\n {\n FunctionAppId = exampleWindowsFunctionApp.Id,\n Language = \"CSharp\",\n Files = new[]\n {\n new Azure.AppService.Inputs.FunctionAppFunctionFileArgs\n {\n Name = \"run.csx\",\n Content = File.ReadAllText(\"exampledata/run.csx\"),\n },\n },\n TestData = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"name\"] = \"Azure\",\n }),\n ConfigJson = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"bindings\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"authLevel\"] = \"function\",\n [\"direction\"] = \"in\",\n [\"methods\"] = new[]\n {\n \"get\",\n \"post\",\n },\n [\"name\"] = \"req\",\n [\"type\"] = \"httpTrigger\",\n },\n new Dictionary\u003cstring, object?\u003e\n {\n [\"direction\"] = \"out\",\n [\"name\"] = \"$return\",\n [\"type\"] = \"http\",\n },\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleServicePlan, err := appservice.NewServicePlan(ctx, \"exampleServicePlan\", \u0026appservice.ServicePlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tOsType: pulumi.String(\"Windows\"),\n\t\t\tSkuName: pulumi.String(\"S1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleWindowsFunctionApp, err := appservice.NewWindowsFunctionApp(ctx, \"exampleWindowsFunctionApp\", \u0026appservice.WindowsFunctionAppArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tServicePlanId: exampleServicePlan.ID(),\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tStorageAccountAccessKey: exampleAccount.PrimaryAccessKey,\n\t\t\tSiteConfig: \u0026appservice.WindowsFunctionAppSiteConfigArgs{\n\t\t\t\tApplicationStack: \u0026appservice.WindowsFunctionAppSiteConfigApplicationStackArgs{\n\t\t\t\t\tDotnetVersion: pulumi.String(\"6\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"name\": \"Azure\",\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"bindings\": []interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"authLevel\": \"function\",\n\t\t\t\t\t\"direction\": \"in\",\n\t\t\t\t\t\"methods\": []string{\n\t\t\t\t\t\t\"get\",\n\t\t\t\t\t\t\"post\",\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"req\",\n\t\t\t\t\t\"type\": \"httpTrigger\",\n\t\t\t\t},\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"direction\": \"out\",\n\t\t\t\t\t\"name\": \"$return\",\n\t\t\t\t\t\"type\": \"http\",\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = appservice.NewFunctionAppFunction(ctx, \"exampleFunctionAppFunction\", \u0026appservice.FunctionAppFunctionArgs{\n\t\t\tFunctionAppId: exampleWindowsFunctionApp.ID(),\n\t\t\tLanguage: pulumi.String(\"CSharp\"),\n\t\t\tFiles: appservice.FunctionAppFunctionFileArray{\n\t\t\t\t\u0026appservice.FunctionAppFunctionFileArgs{\n\t\t\t\t\tName: pulumi.String(\"run.csx\"),\n\t\t\t\t\tContent: readFileOrPanic(\"exampledata/run.csx\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTestData: pulumi.String(json0),\n\t\t\tConfigJson: pulumi.String(json1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.appservice.ServicePlan;\nimport com.pulumi.azure.appservice.ServicePlanArgs;\nimport com.pulumi.azure.appservice.WindowsFunctionApp;\nimport com.pulumi.azure.appservice.WindowsFunctionAppArgs;\nimport com.pulumi.azure.appservice.inputs.WindowsFunctionAppSiteConfigArgs;\nimport com.pulumi.azure.appservice.inputs.WindowsFunctionAppSiteConfigApplicationStackArgs;\nimport com.pulumi.azure.appservice.FunctionAppFunction;\nimport com.pulumi.azure.appservice.FunctionAppFunctionArgs;\nimport com.pulumi.azure.appservice.inputs.FunctionAppFunctionFileArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleServicePlan = new ServicePlan(\"exampleServicePlan\", ServicePlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .osType(\"Windows\")\n .skuName(\"S1\")\n .build());\n\n var exampleWindowsFunctionApp = new WindowsFunctionApp(\"exampleWindowsFunctionApp\", WindowsFunctionAppArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .servicePlanId(exampleServicePlan.id())\n .storageAccountName(exampleAccount.name())\n .storageAccountAccessKey(exampleAccount.primaryAccessKey())\n .siteConfig(WindowsFunctionAppSiteConfigArgs.builder()\n .applicationStack(WindowsFunctionAppSiteConfigApplicationStackArgs.builder()\n .dotnetVersion(\"6\")\n .build())\n .build())\n .build());\n\n var exampleFunctionAppFunction = new FunctionAppFunction(\"exampleFunctionAppFunction\", FunctionAppFunctionArgs.builder() \n .functionAppId(exampleWindowsFunctionApp.id())\n .language(\"CSharp\")\n .files(FunctionAppFunctionFileArgs.builder()\n .name(\"run.csx\")\n .content(Files.readString(Paths.get(\"exampledata/run.csx\")))\n .build())\n .testData(serializeJson(\n jsonObject(\n jsonProperty(\"name\", \"Azure\")\n )))\n .configJson(serializeJson(\n jsonObject(\n jsonProperty(\"bindings\", jsonArray(\n jsonObject(\n jsonProperty(\"authLevel\", \"function\"),\n jsonProperty(\"direction\", \"in\"),\n jsonProperty(\"methods\", jsonArray(\n \"get\", \n \"post\"\n )),\n jsonProperty(\"name\", \"req\"),\n jsonProperty(\"type\", \"httpTrigger\")\n ), \n jsonObject(\n jsonProperty(\"direction\", \"out\"),\n jsonProperty(\"name\", \"$return\"),\n jsonProperty(\"type\", \"http\")\n )\n ))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n exampleServicePlan:\n type: azure:appservice:ServicePlan\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n osType: Windows\n skuName: S1\n exampleWindowsFunctionApp:\n type: azure:appservice:WindowsFunctionApp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n servicePlanId: ${exampleServicePlan.id}\n storageAccountName: ${exampleAccount.name}\n storageAccountAccessKey: ${exampleAccount.primaryAccessKey}\n siteConfig:\n applicationStack:\n dotnetVersion: '6'\n exampleFunctionAppFunction:\n type: azure:appservice:FunctionAppFunction\n properties:\n functionAppId: ${exampleWindowsFunctionApp.id}\n language: CSharp\n files:\n - name: run.csx\n content:\n fn::readFile: exampledata/run.csx\n testData:\n fn::toJSON:\n name: Azure\n configJson:\n fn::toJSON:\n bindings:\n - authLevel: function\n direction: in\n methods:\n - get\n - post\n name: req\n type: httpTrigger\n - direction: out\n name: $return\n type: http\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\na Function App Function can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/functionAppFunction:FunctionAppFunction example \"/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Web/sites/site1/functions/function1\"\n```\n\n ", "properties": { "configJson": { "type": "string", @@ -120742,7 +120742,7 @@ } }, "azure:attestation/provider:Provider": { - "description": "Manages an Attestation Provider.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleProvider = new azure.attestation.Provider(\"exampleProvider\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n policySigningCertificateData: fs.readFileSync(\"./example/cert.pem\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_provider = azure.attestation.Provider(\"exampleProvider\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n policy_signing_certificate_data=(lambda path: open(path).read())(\"./example/cert.pem\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleProvider = new Azure.Attestation.Provider(\"exampleProvider\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PolicySigningCertificateData = File.ReadAllText(\"./example/cert.pem\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/attestation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = attestation.NewProvider(ctx, \"exampleProvider\", \u0026attestation.ProviderArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPolicySigningCertificateData: readFileOrPanic(\"./example/cert.pem\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.attestation.Provider;\nimport com.pulumi.azure.attestation.ProviderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleProvider = new Provider(\"exampleProvider\", ProviderArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .policySigningCertificateData(Files.readString(Paths.get(\"./example/cert.pem\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleProvider:\n type: azure:attestation:Provider\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n policySigningCertificateData:\n fn::readFile: ./example/cert.pem\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAttestation Providers can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:attestation/provider:Provider example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Attestation/attestationProviders/provider1\n```\n\n ", + "description": "Manages an Attestation Provider.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleProvider = new azure.attestation.Provider(\"exampleProvider\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n policySigningCertificateData: fs.readFileSync(\"./example/cert.pem\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_provider = azure.attestation.Provider(\"exampleProvider\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n policy_signing_certificate_data=(lambda path: open(path).read())(\"./example/cert.pem\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleProvider = new Azure.Attestation.Provider(\"exampleProvider\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PolicySigningCertificateData = File.ReadAllText(\"./example/cert.pem\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/attestation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = attestation.NewProvider(ctx, \"exampleProvider\", \u0026attestation.ProviderArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPolicySigningCertificateData: readFileOrPanic(\"./example/cert.pem\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.attestation.Provider;\nimport com.pulumi.azure.attestation.ProviderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleProvider = new Provider(\"exampleProvider\", ProviderArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .policySigningCertificateData(Files.readString(Paths.get(\"./example/cert.pem\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleProvider:\n type: azure:attestation:Provider\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n policySigningCertificateData:\n fn::readFile: ./example/cert.pem\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAttestation Providers can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:attestation/provider:Provider example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Attestation/attestationProviders/provider1\n```\n\n ", "properties": { "attestationUri": { "type": "string", @@ -122304,7 +122304,7 @@ } }, "azure:automation/connectionServicePrincipal:ConnectionServicePrincipal": { - "description": "Manages an Automation Connection with type `AzureServicePrincipal`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleClientConfig = azure.core.getClientConfig({});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleConnectionServicePrincipal = new azure.automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n applicationId: \"00000000-0000-0000-0000-000000000000\",\n tenantId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.tenantId),\n subscriptionId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.subscriptionId),\n certificateThumbprint: fs.readFileSync(\"automation_certificate_test.thumb\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_client_config = azure.core.get_client_config()\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_connection_service_principal = azure.automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n application_id=\"00000000-0000-0000-0000-000000000000\",\n tenant_id=example_client_config.tenant_id,\n subscription_id=example_client_config.subscription_id,\n certificate_thumbprint=(lambda path: open(path).read())(\"automation_certificate_test.thumb\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleClientConfig = Azure.Core.GetClientConfig.Invoke();\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleConnectionServicePrincipal = new Azure.Automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n ApplicationId = \"00000000-0000-0000-0000-000000000000\",\n TenantId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SubscriptionId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.SubscriptionId),\n CertificateThumbprint = File.ReadAllText(\"automation_certificate_test.thumb\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClientConfig, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewConnectionServicePrincipal(ctx, \"exampleConnectionServicePrincipal\", \u0026automation.ConnectionServicePrincipalArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tApplicationId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\tTenantId: *pulumi.String(exampleClientConfig.TenantId),\n\t\t\tSubscriptionId: *pulumi.String(exampleClientConfig.SubscriptionId),\n\t\t\tCertificateThumbprint: readFileOrPanic(\"automation_certificate_test.thumb\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.ConnectionServicePrincipal;\nimport com.pulumi.azure.automation.ConnectionServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n final var exampleClientConfig = CoreFunctions.getClientConfig();\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleConnectionServicePrincipal = new ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", ConnectionServicePrincipalArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .applicationId(\"00000000-0000-0000-0000-000000000000\")\n .tenantId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .subscriptionId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.subscriptionId()))\n .certificateThumbprint(Files.readString(Paths.get(\"automation_certificate_test.thumb\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:automation:Account\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Basic\n exampleConnectionServicePrincipal:\n type: azure:automation:ConnectionServicePrincipal\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n automationAccountName: ${exampleAccount.name}\n applicationId: 00000000-0000-0000-0000-000000000000\n tenantId: ${exampleClientConfig.tenantId}\n subscriptionId: ${exampleClientConfig.subscriptionId}\n certificateThumbprint:\n fn::readFile: automation_certificate_test.thumb\nvariables:\n exampleClientConfig:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Connection can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/connectionServicePrincipal:ConnectionServicePrincipal conn1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/connections/conn1\n```\n\n ", + "description": "Manages an Automation Connection with type `AzureServicePrincipal`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleClientConfig = azure.core.getClientConfig({});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleConnectionServicePrincipal = new azure.automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n applicationId: \"00000000-0000-0000-0000-000000000000\",\n tenantId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.tenantId),\n subscriptionId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.subscriptionId),\n certificateThumbprint: fs.readFileSync(\"automation_certificate_test.thumb\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_client_config = azure.core.get_client_config()\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_connection_service_principal = azure.automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n application_id=\"00000000-0000-0000-0000-000000000000\",\n tenant_id=example_client_config.tenant_id,\n subscription_id=example_client_config.subscription_id,\n certificate_thumbprint=(lambda path: open(path).read())(\"automation_certificate_test.thumb\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleClientConfig = Azure.Core.GetClientConfig.Invoke();\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleConnectionServicePrincipal = new Azure.Automation.ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n ApplicationId = \"00000000-0000-0000-0000-000000000000\",\n TenantId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SubscriptionId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.SubscriptionId),\n CertificateThumbprint = File.ReadAllText(\"automation_certificate_test.thumb\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClientConfig, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewConnectionServicePrincipal(ctx, \"exampleConnectionServicePrincipal\", \u0026automation.ConnectionServicePrincipalArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tApplicationId: pulumi.String(\"00000000-0000-0000-0000-000000000000\"),\n\t\t\tTenantId: *pulumi.String(exampleClientConfig.TenantId),\n\t\t\tSubscriptionId: *pulumi.String(exampleClientConfig.SubscriptionId),\n\t\t\tCertificateThumbprint: readFileOrPanic(\"automation_certificate_test.thumb\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.ConnectionServicePrincipal;\nimport com.pulumi.azure.automation.ConnectionServicePrincipalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n final var exampleClientConfig = CoreFunctions.getClientConfig();\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleConnectionServicePrincipal = new ConnectionServicePrincipal(\"exampleConnectionServicePrincipal\", ConnectionServicePrincipalArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .applicationId(\"00000000-0000-0000-0000-000000000000\")\n .tenantId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .subscriptionId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.subscriptionId()))\n .certificateThumbprint(Files.readString(Paths.get(\"automation_certificate_test.thumb\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleAccount:\n type: azure:automation:Account\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Basic\n exampleConnectionServicePrincipal:\n type: azure:automation:ConnectionServicePrincipal\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n automationAccountName: ${exampleAccount.name}\n applicationId: 00000000-0000-0000-0000-000000000000\n tenantId: ${exampleClientConfig.tenantId}\n subscriptionId: ${exampleClientConfig.subscriptionId}\n certificateThumbprint:\n fn::readFile: automation_certificate_test.thumb\nvariables:\n exampleClientConfig:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Connection can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/connectionServicePrincipal:ConnectionServicePrincipal conn1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/connections/conn1\n```\n\n ", "properties": { "applicationId": { "type": "string", @@ -133995,7 +133995,7 @@ } }, "azure:compute/extension:Extension": { - "description": "Manages a Virtual Machine Extension to provide post deployment configuration\nand run automated tasks.\n\n\u003e **NOTE:** Custom Script Extensions for Linux \u0026 Windows require that the `commandToExecute` returns a `0` exit code to be classified as successfully deployed. You can achieve this by appending `exit 0` to the end of your `commandToExecute`.\n\n\u003e **NOTE:** Custom Script Extensions require that the Azure Virtual Machine Guest Agent is running on the Virtual Machine.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"testconfiguration1\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\nconst exampleExtension = new azure.compute.Extension(\"exampleExtension\", {\n virtualMachineId: exampleLinuxVirtualMachine.id,\n publisher: \"Microsoft.Azure.Extensions\",\n type: \"CustomScript\",\n typeHandlerVersion: \"2.0\",\n settings: ` {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n`,\n tags: {\n environment: \"Production\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"testconfiguration1\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\nexample_extension = azure.compute.Extension(\"exampleExtension\",\n virtual_machine_id=example_linux_virtual_machine.id,\n publisher=\"Microsoft.Azure.Extensions\",\n type=\"CustomScript\",\n type_handler_version=\"2.0\",\n settings=\"\"\" {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n\"\"\",\n tags={\n \"environment\": \"Production\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"testconfiguration1\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n var exampleExtension = new Azure.Compute.Extension(\"exampleExtension\", new()\n {\n VirtualMachineId = exampleLinuxVirtualMachine.Id,\n Publisher = \"Microsoft.Azure.Extensions\",\n Type = \"CustomScript\",\n TypeHandlerVersion = \"2.0\",\n Settings = @\" {\n \"\"commandToExecute\"\": \"\"hostname \u0026\u0026 uptime\"\"\n }\n\",\n Tags = \n {\n { \"environment\", \"Production\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"testconfiguration1\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewExtension(ctx, \"exampleExtension\", \u0026compute.ExtensionArgs{\n\t\t\tVirtualMachineId: exampleLinuxVirtualMachine.ID(),\n\t\t\tPublisher: pulumi.String(\"Microsoft.Azure.Extensions\"),\n\t\t\tType: pulumi.String(\"CustomScript\"),\n\t\t\tTypeHandlerVersion: pulumi.String(\"2.0\"),\n\t\t\tSettings: pulumi.String(\" {\\n \\\"commandToExecute\\\": \\\"hostname \u0026\u0026 uptime\\\"\\n }\\n\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"Production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport com.pulumi.azure.compute.Extension;\nimport com.pulumi.azure.compute.ExtensionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"testconfiguration1\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n var exampleExtension = new Extension(\"exampleExtension\", ExtensionArgs.builder() \n .virtualMachineId(exampleLinuxVirtualMachine.id())\n .publisher(\"Microsoft.Azure.Extensions\")\n .type(\"CustomScript\")\n .typeHandlerVersion(\"2.0\")\n .settings(\"\"\"\n {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n \"\"\")\n .tags(Map.of(\"environment\", \"Production\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: testconfiguration1\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n exampleExtension:\n type: azure:compute:Extension\n properties:\n virtualMachineId: ${exampleLinuxVirtualMachine.id}\n publisher: Microsoft.Azure.Extensions\n type: CustomScript\n typeHandlerVersion: '2.0'\n settings: |2\n {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n tags:\n environment: Production\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nVirtual Machine Extensions can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/extension:Extension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/myVM/extensions/extensionName\n```\n\n ", + "description": "Manages a Virtual Machine Extension to provide post deployment configuration\nand run automated tasks.\n\n\u003e **NOTE:** Custom Script Extensions for Linux \u0026 Windows require that the `commandToExecute` returns a `0` exit code to be classified as successfully deployed. You can achieve this by appending `exit 0` to the end of your `commandToExecute`.\n\n\u003e **NOTE:** Custom Script Extensions require that the Azure Virtual Machine Guest Agent is running on the Virtual Machine.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"testconfiguration1\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\nconst exampleExtension = new azure.compute.Extension(\"exampleExtension\", {\n virtualMachineId: exampleLinuxVirtualMachine.id,\n publisher: \"Microsoft.Azure.Extensions\",\n type: \"CustomScript\",\n typeHandlerVersion: \"2.0\",\n settings: ` {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n`,\n tags: {\n environment: \"Production\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"testconfiguration1\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\nexample_extension = azure.compute.Extension(\"exampleExtension\",\n virtual_machine_id=example_linux_virtual_machine.id,\n publisher=\"Microsoft.Azure.Extensions\",\n type=\"CustomScript\",\n type_handler_version=\"2.0\",\n settings=\"\"\" {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n\"\"\",\n tags={\n \"environment\": \"Production\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"testconfiguration1\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n var exampleExtension = new Azure.Compute.Extension(\"exampleExtension\", new()\n {\n VirtualMachineId = exampleLinuxVirtualMachine.Id,\n Publisher = \"Microsoft.Azure.Extensions\",\n Type = \"CustomScript\",\n TypeHandlerVersion = \"2.0\",\n Settings = @\" {\n \"\"commandToExecute\"\": \"\"hostname \u0026\u0026 uptime\"\"\n }\n\",\n Tags = \n {\n { \"environment\", \"Production\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"testconfiguration1\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewExtension(ctx, \"exampleExtension\", \u0026compute.ExtensionArgs{\n\t\t\tVirtualMachineId: exampleLinuxVirtualMachine.ID(),\n\t\t\tPublisher: pulumi.String(\"Microsoft.Azure.Extensions\"),\n\t\t\tType: pulumi.String(\"CustomScript\"),\n\t\t\tTypeHandlerVersion: pulumi.String(\"2.0\"),\n\t\t\tSettings: pulumi.String(\" {\\n \\\"commandToExecute\\\": \\\"hostname \u0026\u0026 uptime\\\"\\n }\\n\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"Production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport com.pulumi.azure.compute.Extension;\nimport com.pulumi.azure.compute.ExtensionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"testconfiguration1\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n var exampleExtension = new Extension(\"exampleExtension\", ExtensionArgs.builder() \n .virtualMachineId(exampleLinuxVirtualMachine.id())\n .publisher(\"Microsoft.Azure.Extensions\")\n .type(\"CustomScript\")\n .typeHandlerVersion(\"2.0\")\n .settings(\"\"\"\n {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n \"\"\")\n .tags(Map.of(\"environment\", \"Production\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: testconfiguration1\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n exampleExtension:\n type: azure:compute:Extension\n properties:\n virtualMachineId: ${exampleLinuxVirtualMachine.id}\n publisher: Microsoft.Azure.Extensions\n type: CustomScript\n typeHandlerVersion: '2.0'\n settings: |2\n {\n \"commandToExecute\": \"hostname \u0026\u0026 uptime\"\n }\n tags:\n environment: Production\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nVirtual Machine Extensions can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/extension:Extension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/myVM/extensions/extensionName\n```\n\n ", "properties": { "autoUpgradeMinorVersion": { "type": "boolean", @@ -134722,7 +134722,7 @@ } }, "azure:compute/linuxVirtualMachine:LinuxVirtualMachine": { - "description": "Manages a Linux Virtual Machine.\n\n## Disclaimers\n\n\u003e **Note** This provider will automatically remove the OS Disk by default - this behaviour can be configured using the `features` configuration within the Provider configuration block.\n\n\u003e **Note** All arguments including the administrator login and password will be stored in the raw state as plain-text.\n\n\u003e **Note** This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the `azure.compute.VirtualMachine` resource instead.\n\n\u003e **Note** This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the `azure.compute.VirtualMachine` resource instead.\n\n\u003e In this release there's a known issue where the `public_ip_address` and `public_ip_addresses` fields may not be fully populated for Dynamic Public IP's.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nThis example provisions a basic Linux Virtual Machine on an internal network.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"internal\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: internal\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLinux Virtual Machines can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/linuxVirtualMachine:LinuxVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1\n```\n\n ", + "description": "Manages a Linux Virtual Machine.\n\n## Disclaimers\n\n\u003e **Note** This provider will automatically remove the OS Disk by default - this behaviour can be configured using the `features` configuration within the Provider configuration block.\n\n\u003e **Note** All arguments including the administrator login and password will be stored in the raw state as plain-text.\n\n\u003e **Note** This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the `azure.compute.VirtualMachine` resource instead.\n\n\u003e **Note** This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the `azure.compute.VirtualMachine` resource instead.\n\n\u003e In this release there's a known issue where the `public_ip_address` and `public_ip_addresses` fields may not be fully populated for Dynamic Public IP's.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nThis example provisions a basic Linux Virtual Machine on an internal network.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"internal\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: internal\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLinux Virtual Machines can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/linuxVirtualMachine:LinuxVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1\n```\n\n ", "properties": { "additionalCapabilities": { "$ref": "#/types/azure:compute/LinuxVirtualMachineAdditionalCapabilities:LinuxVirtualMachineAdditionalCapabilities", @@ -137530,7 +137530,7 @@ } }, "azure:compute/scaleSet:ScaleSet": { - "description": "Manages a virtual machine scale set.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### With Managed Disks (Recommended)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst examplePublicIp = new azure.network.PublicIp(\"examplePublicIp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n allocationMethod: \"Static\",\n domainNameLabel: exampleResourceGroup.name,\n tags: {\n environment: \"staging\",\n },\n});\nconst exampleLoadBalancer = new azure.lb.LoadBalancer(\"exampleLoadBalancer\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n frontendIpConfigurations: [{\n name: \"PublicIPAddress\",\n publicIpAddressId: examplePublicIp.id,\n }],\n});\nconst bpepool = new azure.lb.BackendAddressPool(\"bpepool\", {loadbalancerId: exampleLoadBalancer.id});\nconst lbnatpool = new azure.lb.NatPool(\"lbnatpool\", {\n resourceGroupName: exampleResourceGroup.name,\n loadbalancerId: exampleLoadBalancer.id,\n protocol: \"Tcp\",\n frontendPortStart: 50000,\n frontendPortEnd: 50119,\n backendPort: 22,\n frontendIpConfigurationName: \"PublicIPAddress\",\n});\nconst exampleProbe = new azure.lb.Probe(\"exampleProbe\", {\n loadbalancerId: exampleLoadBalancer.id,\n protocol: \"Http\",\n requestPath: \"/health\",\n port: 8080,\n});\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n automaticOsUpgrade: true,\n upgradePolicyMode: \"Rolling\",\n rollingUpgradePolicy: {\n maxBatchInstancePercent: 20,\n maxUnhealthyInstancePercent: 20,\n maxUnhealthyUpgradedInstancePercent: 5,\n pauseTimeBetweenBatches: \"PT0S\",\n },\n healthProbeId: exampleProbe.id,\n sku: {\n name: \"Standard_F2\",\n tier: \"Standard\",\n capacity: 2,\n },\n storageProfileImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n storageProfileOsDisk: {\n name: \"\",\n caching: \"ReadWrite\",\n createOption: \"FromImage\",\n managedDiskType: \"Standard_LRS\",\n },\n storageProfileDataDisks: [{\n lun: 0,\n caching: \"ReadWrite\",\n createOption: \"Empty\",\n diskSizeGb: 10,\n }],\n osProfile: {\n computerNamePrefix: \"testvm\",\n adminUsername: \"myadmin\",\n },\n osProfileLinuxConfig: {\n disablePasswordAuthentication: true,\n sshKeys: [{\n path: \"/home/myadmin/.ssh/authorized_keys\",\n keyData: fs.readFileSync(\"~/.ssh/demo_key.pub\"),\n }],\n },\n networkProfiles: [{\n name: \"mynetworkprofile\",\n primary: true,\n ipConfigurations: [{\n name: \"TestIPConfiguration\",\n primary: true,\n subnetId: exampleSubnet.id,\n loadBalancerBackendAddressPoolIds: [bpepool.id],\n loadBalancerInboundNatRulesIds: [lbnatpool.id],\n }],\n }],\n tags: {\n environment: \"staging\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_public_ip = azure.network.PublicIp(\"examplePublicIp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n allocation_method=\"Static\",\n domain_name_label=example_resource_group.name,\n tags={\n \"environment\": \"staging\",\n })\nexample_load_balancer = azure.lb.LoadBalancer(\"exampleLoadBalancer\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n frontend_ip_configurations=[azure.lb.LoadBalancerFrontendIpConfigurationArgs(\n name=\"PublicIPAddress\",\n public_ip_address_id=example_public_ip.id,\n )])\nbpepool = azure.lb.BackendAddressPool(\"bpepool\", loadbalancer_id=example_load_balancer.id)\nlbnatpool = azure.lb.NatPool(\"lbnatpool\",\n resource_group_name=example_resource_group.name,\n loadbalancer_id=example_load_balancer.id,\n protocol=\"Tcp\",\n frontend_port_start=50000,\n frontend_port_end=50119,\n backend_port=22,\n frontend_ip_configuration_name=\"PublicIPAddress\")\nexample_probe = azure.lb.Probe(\"exampleProbe\",\n loadbalancer_id=example_load_balancer.id,\n protocol=\"Http\",\n request_path=\"/health\",\n port=8080)\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n automatic_os_upgrade=True,\n upgrade_policy_mode=\"Rolling\",\n rolling_upgrade_policy=azure.compute.ScaleSetRollingUpgradePolicyArgs(\n max_batch_instance_percent=20,\n max_unhealthy_instance_percent=20,\n max_unhealthy_upgraded_instance_percent=5,\n pause_time_between_batches=\"PT0S\",\n ),\n health_probe_id=example_probe.id,\n sku=azure.compute.ScaleSetSkuArgs(\n name=\"Standard_F2\",\n tier=\"Standard\",\n capacity=2,\n ),\n storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ),\n storage_profile_os_disk=azure.compute.ScaleSetStorageProfileOsDiskArgs(\n name=\"\",\n caching=\"ReadWrite\",\n create_option=\"FromImage\",\n managed_disk_type=\"Standard_LRS\",\n ),\n storage_profile_data_disks=[azure.compute.ScaleSetStorageProfileDataDiskArgs(\n lun=0,\n caching=\"ReadWrite\",\n create_option=\"Empty\",\n disk_size_gb=10,\n )],\n os_profile=azure.compute.ScaleSetOsProfileArgs(\n computer_name_prefix=\"testvm\",\n admin_username=\"myadmin\",\n ),\n os_profile_linux_config=azure.compute.ScaleSetOsProfileLinuxConfigArgs(\n disable_password_authentication=True,\n ssh_keys=[azure.compute.ScaleSetOsProfileLinuxConfigSshKeyArgs(\n path=\"/home/myadmin/.ssh/authorized_keys\",\n key_data=(lambda path: open(path).read())(\"~/.ssh/demo_key.pub\"),\n )],\n ),\n network_profiles=[azure.compute.ScaleSetNetworkProfileArgs(\n name=\"mynetworkprofile\",\n primary=True,\n ip_configurations=[azure.compute.ScaleSetNetworkProfileIpConfigurationArgs(\n name=\"TestIPConfiguration\",\n primary=True,\n subnet_id=example_subnet.id,\n load_balancer_backend_address_pool_ids=[bpepool.id],\n load_balancer_inbound_nat_rules_ids=[lbnatpool.id],\n )],\n )],\n tags={\n \"environment\": \"staging\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var examplePublicIp = new Azure.Network.PublicIp(\"examplePublicIp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AllocationMethod = \"Static\",\n DomainNameLabel = exampleResourceGroup.Name,\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n var exampleLoadBalancer = new Azure.Lb.LoadBalancer(\"exampleLoadBalancer\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n FrontendIpConfigurations = new[]\n {\n new Azure.Lb.Inputs.LoadBalancerFrontendIpConfigurationArgs\n {\n Name = \"PublicIPAddress\",\n PublicIpAddressId = examplePublicIp.Id,\n },\n },\n });\n\n var bpepool = new Azure.Lb.BackendAddressPool(\"bpepool\", new()\n {\n LoadbalancerId = exampleLoadBalancer.Id,\n });\n\n var lbnatpool = new Azure.Lb.NatPool(\"lbnatpool\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n LoadbalancerId = exampleLoadBalancer.Id,\n Protocol = \"Tcp\",\n FrontendPortStart = 50000,\n FrontendPortEnd = 50119,\n BackendPort = 22,\n FrontendIpConfigurationName = \"PublicIPAddress\",\n });\n\n var exampleProbe = new Azure.Lb.Probe(\"exampleProbe\", new()\n {\n LoadbalancerId = exampleLoadBalancer.Id,\n Protocol = \"Http\",\n RequestPath = \"/health\",\n Port = 8080,\n });\n\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AutomaticOsUpgrade = true,\n UpgradePolicyMode = \"Rolling\",\n RollingUpgradePolicy = new Azure.Compute.Inputs.ScaleSetRollingUpgradePolicyArgs\n {\n MaxBatchInstancePercent = 20,\n MaxUnhealthyInstancePercent = 20,\n MaxUnhealthyUpgradedInstancePercent = 5,\n PauseTimeBetweenBatches = \"PT0S\",\n },\n HealthProbeId = exampleProbe.Id,\n Sku = new Azure.Compute.Inputs.ScaleSetSkuArgs\n {\n Name = \"Standard_F2\",\n Tier = \"Standard\",\n Capacity = 2,\n },\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n StorageProfileOsDisk = new Azure.Compute.Inputs.ScaleSetStorageProfileOsDiskArgs\n {\n Name = \"\",\n Caching = \"ReadWrite\",\n CreateOption = \"FromImage\",\n ManagedDiskType = \"Standard_LRS\",\n },\n StorageProfileDataDisks = new[]\n {\n new Azure.Compute.Inputs.ScaleSetStorageProfileDataDiskArgs\n {\n Lun = 0,\n Caching = \"ReadWrite\",\n CreateOption = \"Empty\",\n DiskSizeGb = 10,\n },\n },\n OsProfile = new Azure.Compute.Inputs.ScaleSetOsProfileArgs\n {\n ComputerNamePrefix = \"testvm\",\n AdminUsername = \"myadmin\",\n },\n OsProfileLinuxConfig = new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigArgs\n {\n DisablePasswordAuthentication = true,\n SshKeys = new[]\n {\n new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigSshKeyArgs\n {\n Path = \"/home/myadmin/.ssh/authorized_keys\",\n KeyData = File.ReadAllText(\"~/.ssh/demo_key.pub\"),\n },\n },\n },\n NetworkProfiles = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileArgs\n {\n Name = \"mynetworkprofile\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileIpConfigurationArgs\n {\n Name = \"TestIPConfiguration\",\n Primary = true,\n SubnetId = exampleSubnet.Id,\n LoadBalancerBackendAddressPoolIds = new[]\n {\n bpepool.Id,\n },\n LoadBalancerInboundNatRulesIds = new[]\n {\n lbnatpool.Id,\n },\n },\n },\n },\n },\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/lb\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePublicIp, err := network.NewPublicIp(ctx, \"examplePublicIp\", \u0026network.PublicIpArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAllocationMethod: pulumi.String(\"Static\"),\n\t\t\tDomainNameLabel: exampleResourceGroup.Name,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLoadBalancer, err := lb.NewLoadBalancer(ctx, \"exampleLoadBalancer\", \u0026lb.LoadBalancerArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tFrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{\n\t\t\t\t\u0026lb.LoadBalancerFrontendIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"PublicIPAddress\"),\n\t\t\t\t\tPublicIpAddressId: examplePublicIp.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbpepool, err := lb.NewBackendAddressPool(ctx, \"bpepool\", \u0026lb.BackendAddressPoolArgs{\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlbnatpool, err := lb.NewNatPool(ctx, \"lbnatpool\", \u0026lb.NatPoolArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t\tProtocol: pulumi.String(\"Tcp\"),\n\t\t\tFrontendPortStart: pulumi.Int(50000),\n\t\t\tFrontendPortEnd: pulumi.Int(50119),\n\t\t\tBackendPort: pulumi.Int(22),\n\t\t\tFrontendIpConfigurationName: pulumi.String(\"PublicIPAddress\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleProbe, err := lb.NewProbe(ctx, \"exampleProbe\", \u0026lb.ProbeArgs{\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t\tProtocol: pulumi.String(\"Http\"),\n\t\t\tRequestPath: pulumi.String(\"/health\"),\n\t\t\tPort: pulumi.Int(8080),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomaticOsUpgrade: pulumi.Bool(true),\n\t\t\tUpgradePolicyMode: pulumi.String(\"Rolling\"),\n\t\t\tRollingUpgradePolicy: \u0026compute.ScaleSetRollingUpgradePolicyArgs{\n\t\t\t\tMaxBatchInstancePercent: pulumi.Int(20),\n\t\t\t\tMaxUnhealthyInstancePercent: pulumi.Int(20),\n\t\t\t\tMaxUnhealthyUpgradedInstancePercent: pulumi.Int(5),\n\t\t\t\tPauseTimeBetweenBatches: pulumi.String(\"PT0S\"),\n\t\t\t},\n\t\t\tHealthProbeId: exampleProbe.ID(),\n\t\t\tSku: \u0026compute.ScaleSetSkuArgs{\n\t\t\t\tName: pulumi.String(\"Standard_F2\"),\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tCapacity: pulumi.Int(2),\n\t\t\t},\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tStorageProfileOsDisk: \u0026compute.ScaleSetStorageProfileOsDiskArgs{\n\t\t\t\tName: pulumi.String(\"\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tCreateOption: pulumi.String(\"FromImage\"),\n\t\t\t\tManagedDiskType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tStorageProfileDataDisks: compute.ScaleSetStorageProfileDataDiskArray{\n\t\t\t\t\u0026compute.ScaleSetStorageProfileDataDiskArgs{\n\t\t\t\t\tLun: pulumi.Int(0),\n\t\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\t\tCreateOption: pulumi.String(\"Empty\"),\n\t\t\t\t\tDiskSizeGb: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsProfile: \u0026compute.ScaleSetOsProfileArgs{\n\t\t\t\tComputerNamePrefix: pulumi.String(\"testvm\"),\n\t\t\t\tAdminUsername: pulumi.String(\"myadmin\"),\n\t\t\t},\n\t\t\tOsProfileLinuxConfig: \u0026compute.ScaleSetOsProfileLinuxConfigArgs{\n\t\t\t\tDisablePasswordAuthentication: pulumi.Bool(true),\n\t\t\t\tSshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{\n\t\t\t\t\t\u0026compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{\n\t\t\t\t\t\tPath: pulumi.String(\"/home/myadmin/.ssh/authorized_keys\"),\n\t\t\t\t\t\tKeyData: readFileOrPanic(\"~/.ssh/demo_key.pub\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkProfiles: compute.ScaleSetNetworkProfileArray{\n\t\t\t\t\u0026compute.ScaleSetNetworkProfileArgs{\n\t\t\t\t\tName: pulumi.String(\"mynetworkprofile\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.ScaleSetNetworkProfileIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"TestIPConfiguration\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\t\t\tLoadBalancerBackendAddressPoolIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tbpepool.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tLoadBalancerInboundNatRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tlbnatpool.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.PublicIp;\nimport com.pulumi.azure.network.PublicIpArgs;\nimport com.pulumi.azure.lb.LoadBalancer;\nimport com.pulumi.azure.lb.LoadBalancerArgs;\nimport com.pulumi.azure.lb.inputs.LoadBalancerFrontendIpConfigurationArgs;\nimport com.pulumi.azure.lb.BackendAddressPool;\nimport com.pulumi.azure.lb.BackendAddressPoolArgs;\nimport com.pulumi.azure.lb.NatPool;\nimport com.pulumi.azure.lb.NatPoolArgs;\nimport com.pulumi.azure.lb.Probe;\nimport com.pulumi.azure.lb.ProbeArgs;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetRollingUpgradePolicyArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetSkuArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileDataDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileLinuxConfigArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetNetworkProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var examplePublicIp = new PublicIp(\"examplePublicIp\", PublicIpArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .allocationMethod(\"Static\")\n .domainNameLabel(exampleResourceGroup.name())\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n var exampleLoadBalancer = new LoadBalancer(\"exampleLoadBalancer\", LoadBalancerArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .frontendIpConfigurations(LoadBalancerFrontendIpConfigurationArgs.builder()\n .name(\"PublicIPAddress\")\n .publicIpAddressId(examplePublicIp.id())\n .build())\n .build());\n\n var bpepool = new BackendAddressPool(\"bpepool\", BackendAddressPoolArgs.builder() \n .loadbalancerId(exampleLoadBalancer.id())\n .build());\n\n var lbnatpool = new NatPool(\"lbnatpool\", NatPoolArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .loadbalancerId(exampleLoadBalancer.id())\n .protocol(\"Tcp\")\n .frontendPortStart(50000)\n .frontendPortEnd(50119)\n .backendPort(22)\n .frontendIpConfigurationName(\"PublicIPAddress\")\n .build());\n\n var exampleProbe = new Probe(\"exampleProbe\", ProbeArgs.builder() \n .loadbalancerId(exampleLoadBalancer.id())\n .protocol(\"Http\")\n .requestPath(\"/health\")\n .port(8080)\n .build());\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .automaticOsUpgrade(true)\n .upgradePolicyMode(\"Rolling\")\n .rollingUpgradePolicy(ScaleSetRollingUpgradePolicyArgs.builder()\n .maxBatchInstancePercent(20)\n .maxUnhealthyInstancePercent(20)\n .maxUnhealthyUpgradedInstancePercent(5)\n .pauseTimeBetweenBatches(\"PT0S\")\n .build())\n .healthProbeId(exampleProbe.id())\n .sku(ScaleSetSkuArgs.builder()\n .name(\"Standard_F2\")\n .tier(\"Standard\")\n .capacity(2)\n .build())\n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .storageProfileOsDisk(ScaleSetStorageProfileOsDiskArgs.builder()\n .name(\"\")\n .caching(\"ReadWrite\")\n .createOption(\"FromImage\")\n .managedDiskType(\"Standard_LRS\")\n .build())\n .storageProfileDataDisks(ScaleSetStorageProfileDataDiskArgs.builder()\n .lun(0)\n .caching(\"ReadWrite\")\n .createOption(\"Empty\")\n .diskSizeGb(10)\n .build())\n .osProfile(ScaleSetOsProfileArgs.builder()\n .computerNamePrefix(\"testvm\")\n .adminUsername(\"myadmin\")\n .build())\n .osProfileLinuxConfig(ScaleSetOsProfileLinuxConfigArgs.builder()\n .disablePasswordAuthentication(true)\n .sshKeys(ScaleSetOsProfileLinuxConfigSshKeyArgs.builder()\n .path(\"/home/myadmin/.ssh/authorized_keys\")\n .keyData(Files.readString(Paths.get(\"~/.ssh/demo_key.pub\")))\n .build())\n .build())\n .networkProfiles(ScaleSetNetworkProfileArgs.builder()\n .name(\"mynetworkprofile\")\n .primary(true)\n .ipConfigurations(ScaleSetNetworkProfileIpConfigurationArgs.builder()\n .name(\"TestIPConfiguration\")\n .primary(true)\n .subnetId(exampleSubnet.id())\n .loadBalancerBackendAddressPoolIds(bpepool.id())\n .loadBalancerInboundNatRulesIds(lbnatpool.id())\n .build())\n .build())\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n examplePublicIp:\n type: azure:network:PublicIp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n allocationMethod: Static\n domainNameLabel: ${exampleResourceGroup.name}\n tags:\n environment: staging\n exampleLoadBalancer:\n type: azure:lb:LoadBalancer\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n frontendIpConfigurations:\n - name: PublicIPAddress\n publicIpAddressId: ${examplePublicIp.id}\n bpepool:\n type: azure:lb:BackendAddressPool\n properties:\n loadbalancerId: ${exampleLoadBalancer.id}\n lbnatpool:\n type: azure:lb:NatPool\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n loadbalancerId: ${exampleLoadBalancer.id}\n protocol: Tcp\n frontendPortStart: 50000\n frontendPortEnd: 50119\n backendPort: 22\n frontendIpConfigurationName: PublicIPAddress\n exampleProbe:\n type: azure:lb:Probe\n properties:\n loadbalancerId: ${exampleLoadBalancer.id}\n protocol: Http\n requestPath: /health\n port: 8080\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n # automatic rolling upgrade\n automaticOsUpgrade: true\n upgradePolicyMode: Rolling\n rollingUpgradePolicy:\n maxBatchInstancePercent: 20\n maxUnhealthyInstancePercent: 20\n maxUnhealthyUpgradedInstancePercent: 5\n pauseTimeBetweenBatches: PT0S\n # required when using rolling upgrade policy\n healthProbeId: ${exampleProbe.id}\n sku:\n name: Standard_F2\n tier: Standard\n capacity: 2\n storageProfileImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n storageProfileOsDisk:\n name:\n caching: ReadWrite\n createOption: FromImage\n managedDiskType: Standard_LRS\n storageProfileDataDisks:\n - lun: 0\n caching: ReadWrite\n createOption: Empty\n diskSizeGb: 10\n osProfile:\n computerNamePrefix: testvm\n adminUsername: myadmin\n osProfileLinuxConfig:\n disablePasswordAuthentication: true\n sshKeys:\n - path: /home/myadmin/.ssh/authorized_keys\n keyData:\n fn::readFile: ~/.ssh/demo_key.pub\n networkProfiles:\n - name: mynetworkprofile\n primary: true\n ipConfigurations:\n - name: TestIPConfiguration\n primary: true\n subnetId: ${exampleSubnet.id}\n loadBalancerBackendAddressPoolIds:\n - ${bpepool.id}\n loadBalancerInboundNatRulesIds:\n - ${lbnatpool.id}\n tags:\n environment: staging\n```\n\n{{% /example %}}\n{{% example %}}\n### With Unmanaged Disks\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n tags: {\n environment: \"staging\",\n },\n});\nconst exampleContainer = new azure.storage.Container(\"exampleContainer\", {\n storageAccountName: exampleAccount.name,\n containerAccessType: \"private\",\n});\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n upgradePolicyMode: \"Manual\",\n sku: {\n name: \"Standard_F2\",\n tier: \"Standard\",\n capacity: 2,\n },\n osProfile: {\n computerNamePrefix: \"testvm\",\n adminUsername: \"myadmin\",\n },\n osProfileLinuxConfig: {\n disablePasswordAuthentication: true,\n sshKeys: [{\n path: \"/home/myadmin/.ssh/authorized_keys\",\n keyData: fs.readFileSync(\"~/.ssh/demo_key.pub\"),\n }],\n },\n networkProfiles: [{\n name: \"TestNetworkProfile\",\n primary: true,\n ipConfigurations: [{\n name: \"TestIPConfiguration\",\n primary: true,\n subnetId: exampleSubnet.id,\n }],\n }],\n storageProfileOsDisk: {\n name: \"osDiskProfile\",\n caching: \"ReadWrite\",\n createOption: \"FromImage\",\n vhdContainers: [pulumi.interpolate`${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}`],\n },\n storageProfileImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\",\n tags={\n \"environment\": \"staging\",\n })\nexample_container = azure.storage.Container(\"exampleContainer\",\n storage_account_name=example_account.name,\n container_access_type=\"private\")\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n upgrade_policy_mode=\"Manual\",\n sku=azure.compute.ScaleSetSkuArgs(\n name=\"Standard_F2\",\n tier=\"Standard\",\n capacity=2,\n ),\n os_profile=azure.compute.ScaleSetOsProfileArgs(\n computer_name_prefix=\"testvm\",\n admin_username=\"myadmin\",\n ),\n os_profile_linux_config=azure.compute.ScaleSetOsProfileLinuxConfigArgs(\n disable_password_authentication=True,\n ssh_keys=[azure.compute.ScaleSetOsProfileLinuxConfigSshKeyArgs(\n path=\"/home/myadmin/.ssh/authorized_keys\",\n key_data=(lambda path: open(path).read())(\"~/.ssh/demo_key.pub\"),\n )],\n ),\n network_profiles=[azure.compute.ScaleSetNetworkProfileArgs(\n name=\"TestNetworkProfile\",\n primary=True,\n ip_configurations=[azure.compute.ScaleSetNetworkProfileIpConfigurationArgs(\n name=\"TestIPConfiguration\",\n primary=True,\n subnet_id=example_subnet.id,\n )],\n )],\n storage_profile_os_disk=azure.compute.ScaleSetStorageProfileOsDiskArgs(\n name=\"osDiskProfile\",\n caching=\"ReadWrite\",\n create_option=\"FromImage\",\n vhd_containers=[pulumi.Output.all(example_account.primary_blob_endpoint, example_container.name).apply(lambda primary_blob_endpoint, name: f\"{primary_blob_endpoint}{name}\")],\n ),\n storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n var exampleContainer = new Azure.Storage.Container(\"exampleContainer\", new()\n {\n StorageAccountName = exampleAccount.Name,\n ContainerAccessType = \"private\",\n });\n\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n UpgradePolicyMode = \"Manual\",\n Sku = new Azure.Compute.Inputs.ScaleSetSkuArgs\n {\n Name = \"Standard_F2\",\n Tier = \"Standard\",\n Capacity = 2,\n },\n OsProfile = new Azure.Compute.Inputs.ScaleSetOsProfileArgs\n {\n ComputerNamePrefix = \"testvm\",\n AdminUsername = \"myadmin\",\n },\n OsProfileLinuxConfig = new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigArgs\n {\n DisablePasswordAuthentication = true,\n SshKeys = new[]\n {\n new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigSshKeyArgs\n {\n Path = \"/home/myadmin/.ssh/authorized_keys\",\n KeyData = File.ReadAllText(\"~/.ssh/demo_key.pub\"),\n },\n },\n },\n NetworkProfiles = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileArgs\n {\n Name = \"TestNetworkProfile\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileIpConfigurationArgs\n {\n Name = \"TestIPConfiguration\",\n Primary = true,\n SubnetId = exampleSubnet.Id,\n },\n },\n },\n },\n StorageProfileOsDisk = new Azure.Compute.Inputs.ScaleSetStorageProfileOsDiskArgs\n {\n Name = \"osDiskProfile\",\n Caching = \"ReadWrite\",\n CreateOption = \"FromImage\",\n VhdContainers = new[]\n {\n Output.Tuple(exampleAccount.PrimaryBlobEndpoint, exampleContainer.Name).Apply(values =\u003e\n {\n var primaryBlobEndpoint = values.Item1;\n var name = values.Item2;\n return $\"{primaryBlobEndpoint}{name}\";\n }),\n },\n },\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleContainer, err := storage.NewContainer(ctx, \"exampleContainer\", \u0026storage.ContainerArgs{\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tContainerAccessType: pulumi.String(\"private\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tUpgradePolicyMode: pulumi.String(\"Manual\"),\n\t\t\tSku: \u0026compute.ScaleSetSkuArgs{\n\t\t\t\tName: pulumi.String(\"Standard_F2\"),\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tCapacity: pulumi.Int(2),\n\t\t\t},\n\t\t\tOsProfile: \u0026compute.ScaleSetOsProfileArgs{\n\t\t\t\tComputerNamePrefix: pulumi.String(\"testvm\"),\n\t\t\t\tAdminUsername: pulumi.String(\"myadmin\"),\n\t\t\t},\n\t\t\tOsProfileLinuxConfig: \u0026compute.ScaleSetOsProfileLinuxConfigArgs{\n\t\t\t\tDisablePasswordAuthentication: pulumi.Bool(true),\n\t\t\t\tSshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{\n\t\t\t\t\t\u0026compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{\n\t\t\t\t\t\tPath: pulumi.String(\"/home/myadmin/.ssh/authorized_keys\"),\n\t\t\t\t\t\tKeyData: readFileOrPanic(\"~/.ssh/demo_key.pub\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkProfiles: compute.ScaleSetNetworkProfileArray{\n\t\t\t\t\u0026compute.ScaleSetNetworkProfileArgs{\n\t\t\t\t\tName: pulumi.String(\"TestNetworkProfile\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.ScaleSetNetworkProfileIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"TestIPConfiguration\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageProfileOsDisk: \u0026compute.ScaleSetStorageProfileOsDiskArgs{\n\t\t\t\tName: pulumi.String(\"osDiskProfile\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tCreateOption: pulumi.String(\"FromImage\"),\n\t\t\t\tVhdContainers: pulumi.StringArray{\n\t\t\t\t\tpulumi.All(exampleAccount.PrimaryBlobEndpoint, exampleContainer.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tprimaryBlobEndpoint := _args[0].(string)\n\t\t\t\t\t\tname := _args[1].(string)\n\t\t\t\t\t\treturn fmt.Sprintf(\"%v%v\", primaryBlobEndpoint, name), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.storage.Container;\nimport com.pulumi.azure.storage.ContainerArgs;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetSkuArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileLinuxConfigArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetNetworkProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n var exampleContainer = new Container(\"exampleContainer\", ContainerArgs.builder() \n .storageAccountName(exampleAccount.name())\n .containerAccessType(\"private\")\n .build());\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .upgradePolicyMode(\"Manual\")\n .sku(ScaleSetSkuArgs.builder()\n .name(\"Standard_F2\")\n .tier(\"Standard\")\n .capacity(2)\n .build())\n .osProfile(ScaleSetOsProfileArgs.builder()\n .computerNamePrefix(\"testvm\")\n .adminUsername(\"myadmin\")\n .build())\n .osProfileLinuxConfig(ScaleSetOsProfileLinuxConfigArgs.builder()\n .disablePasswordAuthentication(true)\n .sshKeys(ScaleSetOsProfileLinuxConfigSshKeyArgs.builder()\n .path(\"/home/myadmin/.ssh/authorized_keys\")\n .keyData(Files.readString(Paths.get(\"~/.ssh/demo_key.pub\")))\n .build())\n .build())\n .networkProfiles(ScaleSetNetworkProfileArgs.builder()\n .name(\"TestNetworkProfile\")\n .primary(true)\n .ipConfigurations(ScaleSetNetworkProfileIpConfigurationArgs.builder()\n .name(\"TestIPConfiguration\")\n .primary(true)\n .subnetId(exampleSubnet.id())\n .build())\n .build())\n .storageProfileOsDisk(ScaleSetStorageProfileOsDiskArgs.builder()\n .name(\"osDiskProfile\")\n .caching(\"ReadWrite\")\n .createOption(\"FromImage\")\n .vhdContainers(Output.tuple(exampleAccount.primaryBlobEndpoint(), exampleContainer.name()).applyValue(values -\u003e {\n var primaryBlobEndpoint = values.t1;\n var name = values.t2;\n return String.format(\"%s%s\", primaryBlobEndpoint,name);\n }))\n .build())\n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n tags:\n environment: staging\n exampleContainer:\n type: azure:storage:Container\n properties:\n storageAccountName: ${exampleAccount.name}\n containerAccessType: private\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n upgradePolicyMode: Manual\n sku:\n name: Standard_F2\n tier: Standard\n capacity: 2\n osProfile:\n computerNamePrefix: testvm\n adminUsername: myadmin\n osProfileLinuxConfig:\n disablePasswordAuthentication: true\n sshKeys:\n - path: /home/myadmin/.ssh/authorized_keys\n keyData:\n fn::readFile: ~/.ssh/demo_key.pub\n networkProfiles:\n - name: TestNetworkProfile\n primary: true\n ipConfigurations:\n - name: TestIPConfiguration\n primary: true\n subnetId: ${exampleSubnet.id}\n storageProfileOsDisk:\n name: osDiskProfile\n caching: ReadWrite\n createOption: FromImage\n vhdContainers:\n - ${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}\n storageProfileImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n## Example of storage_profile_image_reference with id\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleImage = new azure.compute.Image(\"exampleImage\", {});\n// ...\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {storageProfileImageReference: {\n id: exampleImage.id,\n}});\n// ...\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_image = azure.compute.Image(\"exampleImage\")\n# ...\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\", storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n id=example_image.id,\n))\n# ...\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleImage = new Azure.Compute.Image(\"exampleImage\");\n\n // ...\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Id = exampleImage.Id,\n },\n });\n\n // ...\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleImage, err := compute.NewImage(ctx, \"exampleImage\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tId: exampleImage.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.compute.Image;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleImage = new Image(\"exampleImage\");\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .id(exampleImage.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleImage:\n type: azure:compute:Image\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n storageProfileImageReference:\n id: ${exampleImage.id}\n```\n\n\n## Import\n\nVirtual Machine Scale Sets can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/scaleSet:ScaleSet scaleset1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1\n```\n\n ", + "description": "Manages a virtual machine scale set.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### With Managed Disks (Recommended)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst examplePublicIp = new azure.network.PublicIp(\"examplePublicIp\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n allocationMethod: \"Static\",\n domainNameLabel: exampleResourceGroup.name,\n tags: {\n environment: \"staging\",\n },\n});\nconst exampleLoadBalancer = new azure.lb.LoadBalancer(\"exampleLoadBalancer\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n frontendIpConfigurations: [{\n name: \"PublicIPAddress\",\n publicIpAddressId: examplePublicIp.id,\n }],\n});\nconst bpepool = new azure.lb.BackendAddressPool(\"bpepool\", {loadbalancerId: exampleLoadBalancer.id});\nconst lbnatpool = new azure.lb.NatPool(\"lbnatpool\", {\n resourceGroupName: exampleResourceGroup.name,\n loadbalancerId: exampleLoadBalancer.id,\n protocol: \"Tcp\",\n frontendPortStart: 50000,\n frontendPortEnd: 50119,\n backendPort: 22,\n frontendIpConfigurationName: \"PublicIPAddress\",\n});\nconst exampleProbe = new azure.lb.Probe(\"exampleProbe\", {\n loadbalancerId: exampleLoadBalancer.id,\n protocol: \"Http\",\n requestPath: \"/health\",\n port: 8080,\n});\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n automaticOsUpgrade: true,\n upgradePolicyMode: \"Rolling\",\n rollingUpgradePolicy: {\n maxBatchInstancePercent: 20,\n maxUnhealthyInstancePercent: 20,\n maxUnhealthyUpgradedInstancePercent: 5,\n pauseTimeBetweenBatches: \"PT0S\",\n },\n healthProbeId: exampleProbe.id,\n sku: {\n name: \"Standard_F2\",\n tier: \"Standard\",\n capacity: 2,\n },\n storageProfileImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n storageProfileOsDisk: {\n name: \"\",\n caching: \"ReadWrite\",\n createOption: \"FromImage\",\n managedDiskType: \"Standard_LRS\",\n },\n storageProfileDataDisks: [{\n lun: 0,\n caching: \"ReadWrite\",\n createOption: \"Empty\",\n diskSizeGb: 10,\n }],\n osProfile: {\n computerNamePrefix: \"testvm\",\n adminUsername: \"myadmin\",\n },\n osProfileLinuxConfig: {\n disablePasswordAuthentication: true,\n sshKeys: [{\n path: \"/home/myadmin/.ssh/authorized_keys\",\n keyData: fs.readFileSync(\"~/.ssh/demo_key.pub\", \"utf8\"),\n }],\n },\n networkProfiles: [{\n name: \"mynetworkprofile\",\n primary: true,\n ipConfigurations: [{\n name: \"TestIPConfiguration\",\n primary: true,\n subnetId: exampleSubnet.id,\n loadBalancerBackendAddressPoolIds: [bpepool.id],\n loadBalancerInboundNatRulesIds: [lbnatpool.id],\n }],\n }],\n tags: {\n environment: \"staging\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_public_ip = azure.network.PublicIp(\"examplePublicIp\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n allocation_method=\"Static\",\n domain_name_label=example_resource_group.name,\n tags={\n \"environment\": \"staging\",\n })\nexample_load_balancer = azure.lb.LoadBalancer(\"exampleLoadBalancer\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n frontend_ip_configurations=[azure.lb.LoadBalancerFrontendIpConfigurationArgs(\n name=\"PublicIPAddress\",\n public_ip_address_id=example_public_ip.id,\n )])\nbpepool = azure.lb.BackendAddressPool(\"bpepool\", loadbalancer_id=example_load_balancer.id)\nlbnatpool = azure.lb.NatPool(\"lbnatpool\",\n resource_group_name=example_resource_group.name,\n loadbalancer_id=example_load_balancer.id,\n protocol=\"Tcp\",\n frontend_port_start=50000,\n frontend_port_end=50119,\n backend_port=22,\n frontend_ip_configuration_name=\"PublicIPAddress\")\nexample_probe = azure.lb.Probe(\"exampleProbe\",\n loadbalancer_id=example_load_balancer.id,\n protocol=\"Http\",\n request_path=\"/health\",\n port=8080)\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n automatic_os_upgrade=True,\n upgrade_policy_mode=\"Rolling\",\n rolling_upgrade_policy=azure.compute.ScaleSetRollingUpgradePolicyArgs(\n max_batch_instance_percent=20,\n max_unhealthy_instance_percent=20,\n max_unhealthy_upgraded_instance_percent=5,\n pause_time_between_batches=\"PT0S\",\n ),\n health_probe_id=example_probe.id,\n sku=azure.compute.ScaleSetSkuArgs(\n name=\"Standard_F2\",\n tier=\"Standard\",\n capacity=2,\n ),\n storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ),\n storage_profile_os_disk=azure.compute.ScaleSetStorageProfileOsDiskArgs(\n name=\"\",\n caching=\"ReadWrite\",\n create_option=\"FromImage\",\n managed_disk_type=\"Standard_LRS\",\n ),\n storage_profile_data_disks=[azure.compute.ScaleSetStorageProfileDataDiskArgs(\n lun=0,\n caching=\"ReadWrite\",\n create_option=\"Empty\",\n disk_size_gb=10,\n )],\n os_profile=azure.compute.ScaleSetOsProfileArgs(\n computer_name_prefix=\"testvm\",\n admin_username=\"myadmin\",\n ),\n os_profile_linux_config=azure.compute.ScaleSetOsProfileLinuxConfigArgs(\n disable_password_authentication=True,\n ssh_keys=[azure.compute.ScaleSetOsProfileLinuxConfigSshKeyArgs(\n path=\"/home/myadmin/.ssh/authorized_keys\",\n key_data=(lambda path: open(path).read())(\"~/.ssh/demo_key.pub\"),\n )],\n ),\n network_profiles=[azure.compute.ScaleSetNetworkProfileArgs(\n name=\"mynetworkprofile\",\n primary=True,\n ip_configurations=[azure.compute.ScaleSetNetworkProfileIpConfigurationArgs(\n name=\"TestIPConfiguration\",\n primary=True,\n subnet_id=example_subnet.id,\n load_balancer_backend_address_pool_ids=[bpepool.id],\n load_balancer_inbound_nat_rules_ids=[lbnatpool.id],\n )],\n )],\n tags={\n \"environment\": \"staging\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var examplePublicIp = new Azure.Network.PublicIp(\"examplePublicIp\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AllocationMethod = \"Static\",\n DomainNameLabel = exampleResourceGroup.Name,\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n var exampleLoadBalancer = new Azure.Lb.LoadBalancer(\"exampleLoadBalancer\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n FrontendIpConfigurations = new[]\n {\n new Azure.Lb.Inputs.LoadBalancerFrontendIpConfigurationArgs\n {\n Name = \"PublicIPAddress\",\n PublicIpAddressId = examplePublicIp.Id,\n },\n },\n });\n\n var bpepool = new Azure.Lb.BackendAddressPool(\"bpepool\", new()\n {\n LoadbalancerId = exampleLoadBalancer.Id,\n });\n\n var lbnatpool = new Azure.Lb.NatPool(\"lbnatpool\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n LoadbalancerId = exampleLoadBalancer.Id,\n Protocol = \"Tcp\",\n FrontendPortStart = 50000,\n FrontendPortEnd = 50119,\n BackendPort = 22,\n FrontendIpConfigurationName = \"PublicIPAddress\",\n });\n\n var exampleProbe = new Azure.Lb.Probe(\"exampleProbe\", new()\n {\n LoadbalancerId = exampleLoadBalancer.Id,\n Protocol = \"Http\",\n RequestPath = \"/health\",\n Port = 8080,\n });\n\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AutomaticOsUpgrade = true,\n UpgradePolicyMode = \"Rolling\",\n RollingUpgradePolicy = new Azure.Compute.Inputs.ScaleSetRollingUpgradePolicyArgs\n {\n MaxBatchInstancePercent = 20,\n MaxUnhealthyInstancePercent = 20,\n MaxUnhealthyUpgradedInstancePercent = 5,\n PauseTimeBetweenBatches = \"PT0S\",\n },\n HealthProbeId = exampleProbe.Id,\n Sku = new Azure.Compute.Inputs.ScaleSetSkuArgs\n {\n Name = \"Standard_F2\",\n Tier = \"Standard\",\n Capacity = 2,\n },\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n StorageProfileOsDisk = new Azure.Compute.Inputs.ScaleSetStorageProfileOsDiskArgs\n {\n Name = \"\",\n Caching = \"ReadWrite\",\n CreateOption = \"FromImage\",\n ManagedDiskType = \"Standard_LRS\",\n },\n StorageProfileDataDisks = new[]\n {\n new Azure.Compute.Inputs.ScaleSetStorageProfileDataDiskArgs\n {\n Lun = 0,\n Caching = \"ReadWrite\",\n CreateOption = \"Empty\",\n DiskSizeGb = 10,\n },\n },\n OsProfile = new Azure.Compute.Inputs.ScaleSetOsProfileArgs\n {\n ComputerNamePrefix = \"testvm\",\n AdminUsername = \"myadmin\",\n },\n OsProfileLinuxConfig = new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigArgs\n {\n DisablePasswordAuthentication = true,\n SshKeys = new[]\n {\n new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigSshKeyArgs\n {\n Path = \"/home/myadmin/.ssh/authorized_keys\",\n KeyData = File.ReadAllText(\"~/.ssh/demo_key.pub\"),\n },\n },\n },\n NetworkProfiles = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileArgs\n {\n Name = \"mynetworkprofile\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileIpConfigurationArgs\n {\n Name = \"TestIPConfiguration\",\n Primary = true,\n SubnetId = exampleSubnet.Id,\n LoadBalancerBackendAddressPoolIds = new[]\n {\n bpepool.Id,\n },\n LoadBalancerInboundNatRulesIds = new[]\n {\n lbnatpool.Id,\n },\n },\n },\n },\n },\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/lb\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePublicIp, err := network.NewPublicIp(ctx, \"examplePublicIp\", \u0026network.PublicIpArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAllocationMethod: pulumi.String(\"Static\"),\n\t\t\tDomainNameLabel: exampleResourceGroup.Name,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLoadBalancer, err := lb.NewLoadBalancer(ctx, \"exampleLoadBalancer\", \u0026lb.LoadBalancerArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tFrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{\n\t\t\t\t\u0026lb.LoadBalancerFrontendIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"PublicIPAddress\"),\n\t\t\t\t\tPublicIpAddressId: examplePublicIp.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tbpepool, err := lb.NewBackendAddressPool(ctx, \"bpepool\", \u0026lb.BackendAddressPoolArgs{\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tlbnatpool, err := lb.NewNatPool(ctx, \"lbnatpool\", \u0026lb.NatPoolArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t\tProtocol: pulumi.String(\"Tcp\"),\n\t\t\tFrontendPortStart: pulumi.Int(50000),\n\t\t\tFrontendPortEnd: pulumi.Int(50119),\n\t\t\tBackendPort: pulumi.Int(22),\n\t\t\tFrontendIpConfigurationName: pulumi.String(\"PublicIPAddress\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleProbe, err := lb.NewProbe(ctx, \"exampleProbe\", \u0026lb.ProbeArgs{\n\t\t\tLoadbalancerId: exampleLoadBalancer.ID(),\n\t\t\tProtocol: pulumi.String(\"Http\"),\n\t\t\tRequestPath: pulumi.String(\"/health\"),\n\t\t\tPort: pulumi.Int(8080),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomaticOsUpgrade: pulumi.Bool(true),\n\t\t\tUpgradePolicyMode: pulumi.String(\"Rolling\"),\n\t\t\tRollingUpgradePolicy: \u0026compute.ScaleSetRollingUpgradePolicyArgs{\n\t\t\t\tMaxBatchInstancePercent: pulumi.Int(20),\n\t\t\t\tMaxUnhealthyInstancePercent: pulumi.Int(20),\n\t\t\t\tMaxUnhealthyUpgradedInstancePercent: pulumi.Int(5),\n\t\t\t\tPauseTimeBetweenBatches: pulumi.String(\"PT0S\"),\n\t\t\t},\n\t\t\tHealthProbeId: exampleProbe.ID(),\n\t\t\tSku: \u0026compute.ScaleSetSkuArgs{\n\t\t\t\tName: pulumi.String(\"Standard_F2\"),\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tCapacity: pulumi.Int(2),\n\t\t\t},\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tStorageProfileOsDisk: \u0026compute.ScaleSetStorageProfileOsDiskArgs{\n\t\t\t\tName: pulumi.String(\"\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tCreateOption: pulumi.String(\"FromImage\"),\n\t\t\t\tManagedDiskType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tStorageProfileDataDisks: compute.ScaleSetStorageProfileDataDiskArray{\n\t\t\t\t\u0026compute.ScaleSetStorageProfileDataDiskArgs{\n\t\t\t\t\tLun: pulumi.Int(0),\n\t\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\t\tCreateOption: pulumi.String(\"Empty\"),\n\t\t\t\t\tDiskSizeGb: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsProfile: \u0026compute.ScaleSetOsProfileArgs{\n\t\t\t\tComputerNamePrefix: pulumi.String(\"testvm\"),\n\t\t\t\tAdminUsername: pulumi.String(\"myadmin\"),\n\t\t\t},\n\t\t\tOsProfileLinuxConfig: \u0026compute.ScaleSetOsProfileLinuxConfigArgs{\n\t\t\t\tDisablePasswordAuthentication: pulumi.Bool(true),\n\t\t\t\tSshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{\n\t\t\t\t\t\u0026compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{\n\t\t\t\t\t\tPath: pulumi.String(\"/home/myadmin/.ssh/authorized_keys\"),\n\t\t\t\t\t\tKeyData: readFileOrPanic(\"~/.ssh/demo_key.pub\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkProfiles: compute.ScaleSetNetworkProfileArray{\n\t\t\t\t\u0026compute.ScaleSetNetworkProfileArgs{\n\t\t\t\t\tName: pulumi.String(\"mynetworkprofile\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.ScaleSetNetworkProfileIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"TestIPConfiguration\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\t\t\tLoadBalancerBackendAddressPoolIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tbpepool.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tLoadBalancerInboundNatRulesIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tlbnatpool.ID(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.PublicIp;\nimport com.pulumi.azure.network.PublicIpArgs;\nimport com.pulumi.azure.lb.LoadBalancer;\nimport com.pulumi.azure.lb.LoadBalancerArgs;\nimport com.pulumi.azure.lb.inputs.LoadBalancerFrontendIpConfigurationArgs;\nimport com.pulumi.azure.lb.BackendAddressPool;\nimport com.pulumi.azure.lb.BackendAddressPoolArgs;\nimport com.pulumi.azure.lb.NatPool;\nimport com.pulumi.azure.lb.NatPoolArgs;\nimport com.pulumi.azure.lb.Probe;\nimport com.pulumi.azure.lb.ProbeArgs;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetRollingUpgradePolicyArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetSkuArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileDataDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileLinuxConfigArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetNetworkProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var examplePublicIp = new PublicIp(\"examplePublicIp\", PublicIpArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .allocationMethod(\"Static\")\n .domainNameLabel(exampleResourceGroup.name())\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n var exampleLoadBalancer = new LoadBalancer(\"exampleLoadBalancer\", LoadBalancerArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .frontendIpConfigurations(LoadBalancerFrontendIpConfigurationArgs.builder()\n .name(\"PublicIPAddress\")\n .publicIpAddressId(examplePublicIp.id())\n .build())\n .build());\n\n var bpepool = new BackendAddressPool(\"bpepool\", BackendAddressPoolArgs.builder() \n .loadbalancerId(exampleLoadBalancer.id())\n .build());\n\n var lbnatpool = new NatPool(\"lbnatpool\", NatPoolArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .loadbalancerId(exampleLoadBalancer.id())\n .protocol(\"Tcp\")\n .frontendPortStart(50000)\n .frontendPortEnd(50119)\n .backendPort(22)\n .frontendIpConfigurationName(\"PublicIPAddress\")\n .build());\n\n var exampleProbe = new Probe(\"exampleProbe\", ProbeArgs.builder() \n .loadbalancerId(exampleLoadBalancer.id())\n .protocol(\"Http\")\n .requestPath(\"/health\")\n .port(8080)\n .build());\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .automaticOsUpgrade(true)\n .upgradePolicyMode(\"Rolling\")\n .rollingUpgradePolicy(ScaleSetRollingUpgradePolicyArgs.builder()\n .maxBatchInstancePercent(20)\n .maxUnhealthyInstancePercent(20)\n .maxUnhealthyUpgradedInstancePercent(5)\n .pauseTimeBetweenBatches(\"PT0S\")\n .build())\n .healthProbeId(exampleProbe.id())\n .sku(ScaleSetSkuArgs.builder()\n .name(\"Standard_F2\")\n .tier(\"Standard\")\n .capacity(2)\n .build())\n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .storageProfileOsDisk(ScaleSetStorageProfileOsDiskArgs.builder()\n .name(\"\")\n .caching(\"ReadWrite\")\n .createOption(\"FromImage\")\n .managedDiskType(\"Standard_LRS\")\n .build())\n .storageProfileDataDisks(ScaleSetStorageProfileDataDiskArgs.builder()\n .lun(0)\n .caching(\"ReadWrite\")\n .createOption(\"Empty\")\n .diskSizeGb(10)\n .build())\n .osProfile(ScaleSetOsProfileArgs.builder()\n .computerNamePrefix(\"testvm\")\n .adminUsername(\"myadmin\")\n .build())\n .osProfileLinuxConfig(ScaleSetOsProfileLinuxConfigArgs.builder()\n .disablePasswordAuthentication(true)\n .sshKeys(ScaleSetOsProfileLinuxConfigSshKeyArgs.builder()\n .path(\"/home/myadmin/.ssh/authorized_keys\")\n .keyData(Files.readString(Paths.get(\"~/.ssh/demo_key.pub\")))\n .build())\n .build())\n .networkProfiles(ScaleSetNetworkProfileArgs.builder()\n .name(\"mynetworkprofile\")\n .primary(true)\n .ipConfigurations(ScaleSetNetworkProfileIpConfigurationArgs.builder()\n .name(\"TestIPConfiguration\")\n .primary(true)\n .subnetId(exampleSubnet.id())\n .loadBalancerBackendAddressPoolIds(bpepool.id())\n .loadBalancerInboundNatRulesIds(lbnatpool.id())\n .build())\n .build())\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n examplePublicIp:\n type: azure:network:PublicIp\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n allocationMethod: Static\n domainNameLabel: ${exampleResourceGroup.name}\n tags:\n environment: staging\n exampleLoadBalancer:\n type: azure:lb:LoadBalancer\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n frontendIpConfigurations:\n - name: PublicIPAddress\n publicIpAddressId: ${examplePublicIp.id}\n bpepool:\n type: azure:lb:BackendAddressPool\n properties:\n loadbalancerId: ${exampleLoadBalancer.id}\n lbnatpool:\n type: azure:lb:NatPool\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n loadbalancerId: ${exampleLoadBalancer.id}\n protocol: Tcp\n frontendPortStart: 50000\n frontendPortEnd: 50119\n backendPort: 22\n frontendIpConfigurationName: PublicIPAddress\n exampleProbe:\n type: azure:lb:Probe\n properties:\n loadbalancerId: ${exampleLoadBalancer.id}\n protocol: Http\n requestPath: /health\n port: 8080\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n # automatic rolling upgrade\n automaticOsUpgrade: true\n upgradePolicyMode: Rolling\n rollingUpgradePolicy:\n maxBatchInstancePercent: 20\n maxUnhealthyInstancePercent: 20\n maxUnhealthyUpgradedInstancePercent: 5\n pauseTimeBetweenBatches: PT0S\n # required when using rolling upgrade policy\n healthProbeId: ${exampleProbe.id}\n sku:\n name: Standard_F2\n tier: Standard\n capacity: 2\n storageProfileImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n storageProfileOsDisk:\n name:\n caching: ReadWrite\n createOption: FromImage\n managedDiskType: Standard_LRS\n storageProfileDataDisks:\n - lun: 0\n caching: ReadWrite\n createOption: Empty\n diskSizeGb: 10\n osProfile:\n computerNamePrefix: testvm\n adminUsername: myadmin\n osProfileLinuxConfig:\n disablePasswordAuthentication: true\n sshKeys:\n - path: /home/myadmin/.ssh/authorized_keys\n keyData:\n fn::readFile: ~/.ssh/demo_key.pub\n networkProfiles:\n - name: mynetworkprofile\n primary: true\n ipConfigurations:\n - name: TestIPConfiguration\n primary: true\n subnetId: ${exampleSubnet.id}\n loadBalancerBackendAddressPoolIds:\n - ${bpepool.id}\n loadBalancerInboundNatRulesIds:\n - ${lbnatpool.id}\n tags:\n environment: staging\n```\n\n{{% /example %}}\n{{% example %}}\n### With Unmanaged Disks\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n tags: {\n environment: \"staging\",\n },\n});\nconst exampleContainer = new azure.storage.Container(\"exampleContainer\", {\n storageAccountName: exampleAccount.name,\n containerAccessType: \"private\",\n});\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n upgradePolicyMode: \"Manual\",\n sku: {\n name: \"Standard_F2\",\n tier: \"Standard\",\n capacity: 2,\n },\n osProfile: {\n computerNamePrefix: \"testvm\",\n adminUsername: \"myadmin\",\n },\n osProfileLinuxConfig: {\n disablePasswordAuthentication: true,\n sshKeys: [{\n path: \"/home/myadmin/.ssh/authorized_keys\",\n keyData: fs.readFileSync(\"~/.ssh/demo_key.pub\", \"utf8\"),\n }],\n },\n networkProfiles: [{\n name: \"TestNetworkProfile\",\n primary: true,\n ipConfigurations: [{\n name: \"TestIPConfiguration\",\n primary: true,\n subnetId: exampleSubnet.id,\n }],\n }],\n storageProfileOsDisk: {\n name: \"osDiskProfile\",\n caching: \"ReadWrite\",\n createOption: \"FromImage\",\n vhdContainers: [pulumi.interpolate`${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}`],\n },\n storageProfileImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\",\n tags={\n \"environment\": \"staging\",\n })\nexample_container = azure.storage.Container(\"exampleContainer\",\n storage_account_name=example_account.name,\n container_access_type=\"private\")\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n upgrade_policy_mode=\"Manual\",\n sku=azure.compute.ScaleSetSkuArgs(\n name=\"Standard_F2\",\n tier=\"Standard\",\n capacity=2,\n ),\n os_profile=azure.compute.ScaleSetOsProfileArgs(\n computer_name_prefix=\"testvm\",\n admin_username=\"myadmin\",\n ),\n os_profile_linux_config=azure.compute.ScaleSetOsProfileLinuxConfigArgs(\n disable_password_authentication=True,\n ssh_keys=[azure.compute.ScaleSetOsProfileLinuxConfigSshKeyArgs(\n path=\"/home/myadmin/.ssh/authorized_keys\",\n key_data=(lambda path: open(path).read())(\"~/.ssh/demo_key.pub\"),\n )],\n ),\n network_profiles=[azure.compute.ScaleSetNetworkProfileArgs(\n name=\"TestNetworkProfile\",\n primary=True,\n ip_configurations=[azure.compute.ScaleSetNetworkProfileIpConfigurationArgs(\n name=\"TestIPConfiguration\",\n primary=True,\n subnet_id=example_subnet.id,\n )],\n )],\n storage_profile_os_disk=azure.compute.ScaleSetStorageProfileOsDiskArgs(\n name=\"osDiskProfile\",\n caching=\"ReadWrite\",\n create_option=\"FromImage\",\n vhd_containers=[pulumi.Output.all(example_account.primary_blob_endpoint, example_container.name).apply(lambda primary_blob_endpoint, name: f\"{primary_blob_endpoint}{name}\")],\n ),\n storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n Tags = \n {\n { \"environment\", \"staging\" },\n },\n });\n\n var exampleContainer = new Azure.Storage.Container(\"exampleContainer\", new()\n {\n StorageAccountName = exampleAccount.Name,\n ContainerAccessType = \"private\",\n });\n\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n UpgradePolicyMode = \"Manual\",\n Sku = new Azure.Compute.Inputs.ScaleSetSkuArgs\n {\n Name = \"Standard_F2\",\n Tier = \"Standard\",\n Capacity = 2,\n },\n OsProfile = new Azure.Compute.Inputs.ScaleSetOsProfileArgs\n {\n ComputerNamePrefix = \"testvm\",\n AdminUsername = \"myadmin\",\n },\n OsProfileLinuxConfig = new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigArgs\n {\n DisablePasswordAuthentication = true,\n SshKeys = new[]\n {\n new Azure.Compute.Inputs.ScaleSetOsProfileLinuxConfigSshKeyArgs\n {\n Path = \"/home/myadmin/.ssh/authorized_keys\",\n KeyData = File.ReadAllText(\"~/.ssh/demo_key.pub\"),\n },\n },\n },\n NetworkProfiles = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileArgs\n {\n Name = \"TestNetworkProfile\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.ScaleSetNetworkProfileIpConfigurationArgs\n {\n Name = \"TestIPConfiguration\",\n Primary = true,\n SubnetId = exampleSubnet.Id,\n },\n },\n },\n },\n StorageProfileOsDisk = new Azure.Compute.Inputs.ScaleSetStorageProfileOsDiskArgs\n {\n Name = \"osDiskProfile\",\n Caching = \"ReadWrite\",\n CreateOption = \"FromImage\",\n VhdContainers = new[]\n {\n Output.Tuple(exampleAccount.PrimaryBlobEndpoint, exampleContainer.Name).Apply(values =\u003e\n {\n var primaryBlobEndpoint = values.Item1;\n var name = values.Item2;\n return $\"{primaryBlobEndpoint}{name}\";\n }),\n },\n },\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"staging\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleContainer, err := storage.NewContainer(ctx, \"exampleContainer\", \u0026storage.ContainerArgs{\n\t\t\tStorageAccountName: exampleAccount.Name,\n\t\t\tContainerAccessType: pulumi.String(\"private\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tUpgradePolicyMode: pulumi.String(\"Manual\"),\n\t\t\tSku: \u0026compute.ScaleSetSkuArgs{\n\t\t\t\tName: pulumi.String(\"Standard_F2\"),\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tCapacity: pulumi.Int(2),\n\t\t\t},\n\t\t\tOsProfile: \u0026compute.ScaleSetOsProfileArgs{\n\t\t\t\tComputerNamePrefix: pulumi.String(\"testvm\"),\n\t\t\t\tAdminUsername: pulumi.String(\"myadmin\"),\n\t\t\t},\n\t\t\tOsProfileLinuxConfig: \u0026compute.ScaleSetOsProfileLinuxConfigArgs{\n\t\t\t\tDisablePasswordAuthentication: pulumi.Bool(true),\n\t\t\t\tSshKeys: compute.ScaleSetOsProfileLinuxConfigSshKeyArray{\n\t\t\t\t\t\u0026compute.ScaleSetOsProfileLinuxConfigSshKeyArgs{\n\t\t\t\t\t\tPath: pulumi.String(\"/home/myadmin/.ssh/authorized_keys\"),\n\t\t\t\t\t\tKeyData: readFileOrPanic(\"~/.ssh/demo_key.pub\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkProfiles: compute.ScaleSetNetworkProfileArray{\n\t\t\t\t\u0026compute.ScaleSetNetworkProfileArgs{\n\t\t\t\t\tName: pulumi.String(\"TestNetworkProfile\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.ScaleSetNetworkProfileIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.ScaleSetNetworkProfileIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"TestIPConfiguration\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageProfileOsDisk: \u0026compute.ScaleSetStorageProfileOsDiskArgs{\n\t\t\t\tName: pulumi.String(\"osDiskProfile\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tCreateOption: pulumi.String(\"FromImage\"),\n\t\t\t\tVhdContainers: pulumi.StringArray{\n\t\t\t\t\tpulumi.All(exampleAccount.PrimaryBlobEndpoint, exampleContainer.Name).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tprimaryBlobEndpoint := _args[0].(string)\n\t\t\t\t\t\tname := _args[1].(string)\n\t\t\t\t\t\treturn fmt.Sprintf(\"%v%v\", primaryBlobEndpoint, name), nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.storage.Container;\nimport com.pulumi.azure.storage.ContainerArgs;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetSkuArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetOsProfileLinuxConfigArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetNetworkProfileArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .tags(Map.of(\"environment\", \"staging\"))\n .build());\n\n var exampleContainer = new Container(\"exampleContainer\", ContainerArgs.builder() \n .storageAccountName(exampleAccount.name())\n .containerAccessType(\"private\")\n .build());\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .upgradePolicyMode(\"Manual\")\n .sku(ScaleSetSkuArgs.builder()\n .name(\"Standard_F2\")\n .tier(\"Standard\")\n .capacity(2)\n .build())\n .osProfile(ScaleSetOsProfileArgs.builder()\n .computerNamePrefix(\"testvm\")\n .adminUsername(\"myadmin\")\n .build())\n .osProfileLinuxConfig(ScaleSetOsProfileLinuxConfigArgs.builder()\n .disablePasswordAuthentication(true)\n .sshKeys(ScaleSetOsProfileLinuxConfigSshKeyArgs.builder()\n .path(\"/home/myadmin/.ssh/authorized_keys\")\n .keyData(Files.readString(Paths.get(\"~/.ssh/demo_key.pub\")))\n .build())\n .build())\n .networkProfiles(ScaleSetNetworkProfileArgs.builder()\n .name(\"TestNetworkProfile\")\n .primary(true)\n .ipConfigurations(ScaleSetNetworkProfileIpConfigurationArgs.builder()\n .name(\"TestIPConfiguration\")\n .primary(true)\n .subnetId(exampleSubnet.id())\n .build())\n .build())\n .storageProfileOsDisk(ScaleSetStorageProfileOsDiskArgs.builder()\n .name(\"osDiskProfile\")\n .caching(\"ReadWrite\")\n .createOption(\"FromImage\")\n .vhdContainers(Output.tuple(exampleAccount.primaryBlobEndpoint(), exampleContainer.name()).applyValue(values -\u003e {\n var primaryBlobEndpoint = values.t1;\n var name = values.t2;\n return String.format(\"%s%s\", primaryBlobEndpoint,name);\n }))\n .build())\n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleAccount:\n type: azure:storage:Account\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n accountTier: Standard\n accountReplicationType: LRS\n tags:\n environment: staging\n exampleContainer:\n type: azure:storage:Container\n properties:\n storageAccountName: ${exampleAccount.name}\n containerAccessType: private\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n upgradePolicyMode: Manual\n sku:\n name: Standard_F2\n tier: Standard\n capacity: 2\n osProfile:\n computerNamePrefix: testvm\n adminUsername: myadmin\n osProfileLinuxConfig:\n disablePasswordAuthentication: true\n sshKeys:\n - path: /home/myadmin/.ssh/authorized_keys\n keyData:\n fn::readFile: ~/.ssh/demo_key.pub\n networkProfiles:\n - name: TestNetworkProfile\n primary: true\n ipConfigurations:\n - name: TestIPConfiguration\n primary: true\n subnetId: ${exampleSubnet.id}\n storageProfileOsDisk:\n name: osDiskProfile\n caching: ReadWrite\n createOption: FromImage\n vhdContainers:\n - ${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}\n storageProfileImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n## Example of storage_profile_image_reference with id\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleImage = new azure.compute.Image(\"exampleImage\", {});\n// ...\nconst exampleScaleSet = new azure.compute.ScaleSet(\"exampleScaleSet\", {storageProfileImageReference: {\n id: exampleImage.id,\n}});\n// ...\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_image = azure.compute.Image(\"exampleImage\")\n# ...\nexample_scale_set = azure.compute.ScaleSet(\"exampleScaleSet\", storage_profile_image_reference=azure.compute.ScaleSetStorageProfileImageReferenceArgs(\n id=example_image.id,\n))\n# ...\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleImage = new Azure.Compute.Image(\"exampleImage\");\n\n // ...\n var exampleScaleSet = new Azure.Compute.ScaleSet(\"exampleScaleSet\", new()\n {\n StorageProfileImageReference = new Azure.Compute.Inputs.ScaleSetStorageProfileImageReferenceArgs\n {\n Id = exampleImage.Id,\n },\n });\n\n // ...\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleImage, err := compute.NewImage(ctx, \"exampleImage\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = compute.NewScaleSet(ctx, \"exampleScaleSet\", \u0026compute.ScaleSetArgs{\n\t\t\tStorageProfileImageReference: \u0026compute.ScaleSetStorageProfileImageReferenceArgs{\n\t\t\t\tId: exampleImage.ID(),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.compute.Image;\nimport com.pulumi.azure.compute.ScaleSet;\nimport com.pulumi.azure.compute.ScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.ScaleSetStorageProfileImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleImage = new Image(\"exampleImage\");\n\n var exampleScaleSet = new ScaleSet(\"exampleScaleSet\", ScaleSetArgs.builder() \n .storageProfileImageReference(ScaleSetStorageProfileImageReferenceArgs.builder()\n .id(exampleImage.id())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleImage:\n type: azure:compute:Image\n exampleScaleSet:\n type: azure:compute:ScaleSet\n properties:\n storageProfileImageReference:\n id: ${exampleImage.id}\n```\n\n\n## Import\n\nVirtual Machine Scale Sets can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/scaleSet:ScaleSet scaleset1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleset1\n```\n\n ", "properties": { "automaticOsUpgrade": { "type": "boolean", @@ -139071,7 +139071,7 @@ } }, "azure:compute/sshPublicKey:SshPublicKey": { - "description": "Manages a SSH Public Key.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst example = new azure.compute.SshPublicKey(\"example\", {\n resourceGroupName: \"example\",\n location: \"West Europe\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample = azure.compute.SshPublicKey(\"example\",\n resource_group_name=\"example\",\n location=\"West Europe\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Azure.Compute.SshPublicKey(\"example\", new()\n {\n ResourceGroupName = \"example\",\n Location = \"West Europe\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := compute.NewSshPublicKey(ctx, \"example\", \u0026compute.SshPublicKeyArgs{\n\t\t\tResourceGroupName: pulumi.String(\"example\"),\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.compute.SshPublicKey;\nimport com.pulumi.azure.compute.SshPublicKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new SshPublicKey(\"example\", SshPublicKeyArgs.builder() \n .resourceGroupName(\"example\")\n .location(\"West Europe\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:compute:SshPublicKey\n properties:\n resourceGroupName: example\n location: West Europe\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH Public Keys can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/sshPublicKey:SshPublicKey example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName1\n```\n\n ", + "description": "Manages a SSH Public Key.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst example = new azure.compute.SshPublicKey(\"example\", {\n resourceGroupName: \"example\",\n location: \"West Europe\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample = azure.compute.SshPublicKey(\"example\",\n resource_group_name=\"example\",\n location=\"West Europe\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Azure.Compute.SshPublicKey(\"example\", new()\n {\n ResourceGroupName = \"example\",\n Location = \"West Europe\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := compute.NewSshPublicKey(ctx, \"example\", \u0026compute.SshPublicKeyArgs{\n\t\t\tResourceGroupName: pulumi.String(\"example\"),\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.compute.SshPublicKey;\nimport com.pulumi.azure.compute.SshPublicKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new SshPublicKey(\"example\", SshPublicKeyArgs.builder() \n .resourceGroupName(\"example\")\n .location(\"West Europe\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:compute:SshPublicKey\n properties:\n resourceGroupName: example\n location: West Europe\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSSH Public Keys can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:compute/sshPublicKey:SshPublicKey example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName1\n```\n\n ", "properties": { "location": { "type": "string", @@ -168708,7 +168708,7 @@ } }, "azure:devtest/linuxVirtualMachine:LinuxVirtualMachine": { - "description": "Manages a Linux Virtual Machine within a Dev Test Lab.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleLab = new azure.devtest.Lab(\"exampleLab\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tags: {\n Sydney: \"Australia\",\n },\n});\nconst exampleVirtualNetwork = new azure.devtest.VirtualNetwork(\"exampleVirtualNetwork\", {\n labName: exampleLab.name,\n resourceGroupName: exampleResourceGroup.name,\n subnet: {\n usePublicIpAddress: \"Allow\",\n useInVirtualMachineCreation: \"Allow\",\n },\n});\nconst exampleLinuxVirtualMachine = new azure.devtest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n labName: exampleLab.name,\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_DS2\",\n username: \"exampleuser99\",\n sshKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n labVirtualNetworkId: exampleVirtualNetwork.id,\n labSubnetName: exampleVirtualNetwork.subnet.apply(subnet =\u003e subnet.name),\n storageType: \"Premium\",\n notes: \"Some notes about this Virtual Machine.\",\n galleryImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_lab = azure.devtest.Lab(\"exampleLab\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tags={\n \"Sydney\": \"Australia\",\n })\nexample_virtual_network = azure.devtest.VirtualNetwork(\"exampleVirtualNetwork\",\n lab_name=example_lab.name,\n resource_group_name=example_resource_group.name,\n subnet=azure.devtest.VirtualNetworkSubnetArgs(\n use_public_ip_address=\"Allow\",\n use_in_virtual_machine_creation=\"Allow\",\n ))\nexample_linux_virtual_machine = azure.devtest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n lab_name=example_lab.name,\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_DS2\",\n username=\"exampleuser99\",\n ssh_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n lab_virtual_network_id=example_virtual_network.id,\n lab_subnet_name=example_virtual_network.subnet.name,\n storage_type=\"Premium\",\n notes=\"Some notes about this Virtual Machine.\",\n gallery_image_reference=azure.devtest.LinuxVirtualMachineGalleryImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleLab = new Azure.DevTest.Lab(\"exampleLab\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n Tags = \n {\n { \"Sydney\", \"Australia\" },\n },\n });\n\n var exampleVirtualNetwork = new Azure.DevTest.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n LabName = exampleLab.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Subnet = new Azure.DevTest.Inputs.VirtualNetworkSubnetArgs\n {\n UsePublicIpAddress = \"Allow\",\n UseInVirtualMachineCreation = \"Allow\",\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.DevTest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n LabName = exampleLab.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_DS2\",\n Username = \"exampleuser99\",\n SshKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n LabVirtualNetworkId = exampleVirtualNetwork.Id,\n LabSubnetName = exampleVirtualNetwork.Subnet.Apply(subnet =\u003e subnet.Name),\n StorageType = \"Premium\",\n Notes = \"Some notes about this Virtual Machine.\",\n GalleryImageReference = new Azure.DevTest.Inputs.LinuxVirtualMachineGalleryImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/devtest\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLab, err := devtest.NewLab(ctx, \"exampleLab\", \u0026devtest.LabArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Sydney\": pulumi.String(\"Australia\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := devtest.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026devtest.VirtualNetworkArgs{\n\t\t\tLabName: exampleLab.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSubnet: \u0026devtest.VirtualNetworkSubnetArgs{\n\t\t\t\tUsePublicIpAddress: pulumi.String(\"Allow\"),\n\t\t\t\tUseInVirtualMachineCreation: pulumi.String(\"Allow\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = devtest.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026devtest.LinuxVirtualMachineArgs{\n\t\t\tLabName: exampleLab.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_DS2\"),\n\t\t\tUsername: pulumi.String(\"exampleuser99\"),\n\t\t\tSshKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\tLabVirtualNetworkId: exampleVirtualNetwork.ID(),\n\t\t\tLabSubnetName: exampleVirtualNetwork.Subnet.ApplyT(func(subnet devtest.VirtualNetworkSubnet) (*string, error) {\n\t\t\t\treturn \u0026subnet.Name, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tStorageType: pulumi.String(\"Premium\"),\n\t\t\tNotes: pulumi.String(\"Some notes about this Virtual Machine.\"),\n\t\t\tGalleryImageReference: \u0026devtest.LinuxVirtualMachineGalleryImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.devtest.Lab;\nimport com.pulumi.azure.devtest.LabArgs;\nimport com.pulumi.azure.devtest.VirtualNetwork;\nimport com.pulumi.azure.devtest.VirtualNetworkArgs;\nimport com.pulumi.azure.devtest.inputs.VirtualNetworkSubnetArgs;\nimport com.pulumi.azure.devtest.LinuxVirtualMachine;\nimport com.pulumi.azure.devtest.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.devtest.inputs.LinuxVirtualMachineGalleryImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleLab = new Lab(\"exampleLab\", LabArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tags(Map.of(\"Sydney\", \"Australia\"))\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .labName(exampleLab.name())\n .resourceGroupName(exampleResourceGroup.name())\n .subnet(VirtualNetworkSubnetArgs.builder()\n .usePublicIpAddress(\"Allow\")\n .useInVirtualMachineCreation(\"Allow\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .labName(exampleLab.name())\n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_DS2\")\n .username(\"exampleuser99\")\n .sshKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .labVirtualNetworkId(exampleVirtualNetwork.id())\n .labSubnetName(exampleVirtualNetwork.subnet().applyValue(subnet -\u003e subnet.name()))\n .storageType(\"Premium\")\n .notes(\"Some notes about this Virtual Machine.\")\n .galleryImageReference(LinuxVirtualMachineGalleryImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleLab:\n type: azure:devtest:Lab\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tags:\n Sydney: Australia\n exampleVirtualNetwork:\n type: azure:devtest:VirtualNetwork\n properties:\n labName: ${exampleLab.name}\n resourceGroupName: ${exampleResourceGroup.name}\n subnet:\n usePublicIpAddress: Allow\n useInVirtualMachineCreation: Allow\n exampleLinuxVirtualMachine:\n type: azure:devtest:LinuxVirtualMachine\n properties:\n labName: ${exampleLab.name}\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_DS2\n username: exampleuser99\n sshKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n labVirtualNetworkId: ${exampleVirtualNetwork.id}\n labSubnetName: ${exampleVirtualNetwork.subnet.name}\n storageType: Premium\n notes: Some notes about this Virtual Machine.\n galleryImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDev Test Linux Virtual Machines can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:devtest/linuxVirtualMachine:LinuxVirtualMachine machine1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DevTestLab/labs/lab1/virtualMachines/machine1\n```\n\n ", + "description": "Manages a Linux Virtual Machine within a Dev Test Lab.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleLab = new azure.devtest.Lab(\"exampleLab\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tags: {\n Sydney: \"Australia\",\n },\n});\nconst exampleVirtualNetwork = new azure.devtest.VirtualNetwork(\"exampleVirtualNetwork\", {\n labName: exampleLab.name,\n resourceGroupName: exampleResourceGroup.name,\n subnet: {\n usePublicIpAddress: \"Allow\",\n useInVirtualMachineCreation: \"Allow\",\n },\n});\nconst exampleLinuxVirtualMachine = new azure.devtest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n labName: exampleLab.name,\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_DS2\",\n username: \"exampleuser99\",\n sshKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n labVirtualNetworkId: exampleVirtualNetwork.id,\n labSubnetName: exampleVirtualNetwork.subnet.apply(subnet =\u003e subnet.name),\n storageType: \"Premium\",\n notes: \"Some notes about this Virtual Machine.\",\n galleryImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_lab = azure.devtest.Lab(\"exampleLab\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tags={\n \"Sydney\": \"Australia\",\n })\nexample_virtual_network = azure.devtest.VirtualNetwork(\"exampleVirtualNetwork\",\n lab_name=example_lab.name,\n resource_group_name=example_resource_group.name,\n subnet=azure.devtest.VirtualNetworkSubnetArgs(\n use_public_ip_address=\"Allow\",\n use_in_virtual_machine_creation=\"Allow\",\n ))\nexample_linux_virtual_machine = azure.devtest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n lab_name=example_lab.name,\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_DS2\",\n username=\"exampleuser99\",\n ssh_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n lab_virtual_network_id=example_virtual_network.id,\n lab_subnet_name=example_virtual_network.subnet.name,\n storage_type=\"Premium\",\n notes=\"Some notes about this Virtual Machine.\",\n gallery_image_reference=azure.devtest.LinuxVirtualMachineGalleryImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleLab = new Azure.DevTest.Lab(\"exampleLab\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n Tags = \n {\n { \"Sydney\", \"Australia\" },\n },\n });\n\n var exampleVirtualNetwork = new Azure.DevTest.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n LabName = exampleLab.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Subnet = new Azure.DevTest.Inputs.VirtualNetworkSubnetArgs\n {\n UsePublicIpAddress = \"Allow\",\n UseInVirtualMachineCreation = \"Allow\",\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.DevTest.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n LabName = exampleLab.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_DS2\",\n Username = \"exampleuser99\",\n SshKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n LabVirtualNetworkId = exampleVirtualNetwork.Id,\n LabSubnetName = exampleVirtualNetwork.Subnet.Apply(subnet =\u003e subnet.Name),\n StorageType = \"Premium\",\n Notes = \"Some notes about this Virtual Machine.\",\n GalleryImageReference = new Azure.DevTest.Inputs.LinuxVirtualMachineGalleryImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/devtest\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLab, err := devtest.NewLab(ctx, \"exampleLab\", \u0026devtest.LabArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Sydney\": pulumi.String(\"Australia\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := devtest.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026devtest.VirtualNetworkArgs{\n\t\t\tLabName: exampleLab.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSubnet: \u0026devtest.VirtualNetworkSubnetArgs{\n\t\t\t\tUsePublicIpAddress: pulumi.String(\"Allow\"),\n\t\t\t\tUseInVirtualMachineCreation: pulumi.String(\"Allow\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = devtest.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026devtest.LinuxVirtualMachineArgs{\n\t\t\tLabName: exampleLab.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_DS2\"),\n\t\t\tUsername: pulumi.String(\"exampleuser99\"),\n\t\t\tSshKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\tLabVirtualNetworkId: exampleVirtualNetwork.ID(),\n\t\t\tLabSubnetName: exampleVirtualNetwork.Subnet.ApplyT(func(subnet devtest.VirtualNetworkSubnet) (*string, error) {\n\t\t\t\treturn \u0026subnet.Name, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tStorageType: pulumi.String(\"Premium\"),\n\t\t\tNotes: pulumi.String(\"Some notes about this Virtual Machine.\"),\n\t\t\tGalleryImageReference: \u0026devtest.LinuxVirtualMachineGalleryImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.devtest.Lab;\nimport com.pulumi.azure.devtest.LabArgs;\nimport com.pulumi.azure.devtest.VirtualNetwork;\nimport com.pulumi.azure.devtest.VirtualNetworkArgs;\nimport com.pulumi.azure.devtest.inputs.VirtualNetworkSubnetArgs;\nimport com.pulumi.azure.devtest.LinuxVirtualMachine;\nimport com.pulumi.azure.devtest.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.devtest.inputs.LinuxVirtualMachineGalleryImageReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleLab = new Lab(\"exampleLab\", LabArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tags(Map.of(\"Sydney\", \"Australia\"))\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .labName(exampleLab.name())\n .resourceGroupName(exampleResourceGroup.name())\n .subnet(VirtualNetworkSubnetArgs.builder()\n .usePublicIpAddress(\"Allow\")\n .useInVirtualMachineCreation(\"Allow\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .labName(exampleLab.name())\n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_DS2\")\n .username(\"exampleuser99\")\n .sshKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .labVirtualNetworkId(exampleVirtualNetwork.id())\n .labSubnetName(exampleVirtualNetwork.subnet().applyValue(subnet -\u003e subnet.name()))\n .storageType(\"Premium\")\n .notes(\"Some notes about this Virtual Machine.\")\n .galleryImageReference(LinuxVirtualMachineGalleryImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleLab:\n type: azure:devtest:Lab\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tags:\n Sydney: Australia\n exampleVirtualNetwork:\n type: azure:devtest:VirtualNetwork\n properties:\n labName: ${exampleLab.name}\n resourceGroupName: ${exampleResourceGroup.name}\n subnet:\n usePublicIpAddress: Allow\n useInVirtualMachineCreation: Allow\n exampleLinuxVirtualMachine:\n type: azure:devtest:LinuxVirtualMachine\n properties:\n labName: ${exampleLab.name}\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_DS2\n username: exampleuser99\n sshKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n labVirtualNetworkId: ${exampleVirtualNetwork.id}\n labSubnetName: ${exampleVirtualNetwork.subnet.name}\n storageType: Premium\n notes: Some notes about this Virtual Machine.\n galleryImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nDev Test Linux Virtual Machines can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:devtest/linuxVirtualMachine:LinuxVirtualMachine machine1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DevTestLab/labs/lab1/virtualMachines/machine1\n```\n\n ", "properties": { "allowClaim": { "type": "boolean", @@ -193491,7 +193491,7 @@ } }, "azure:logicapps/integrationAccountAgreement:IntegrationAccountAgreement": { - "description": "Manages a Logic App Integration Account Agreement.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst example = new azure.core.ResourceGroup(\"example\", {location: \"West Europe\"});\nconst testIntegrationAccount = new azure.logicapps.IntegrationAccount(\"testIntegrationAccount\", {\n location: example.location,\n resourceGroupName: example.name,\n skuName: \"Standard\",\n});\nconst host = new azure.logicapps.IntegrationAccountPartner(\"host\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n businessIdentities: [{\n qualifier: \"AS2Identity\",\n value: \"FabrikamNY\",\n }],\n});\nconst guest = new azure.logicapps.IntegrationAccountPartner(\"guest\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n businessIdentities: [{\n qualifier: \"AS2Identity\",\n value: \"FabrikamDC\",\n }],\n});\nconst testIntegrationAccountAgreement = new azure.logicapps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n agreementType: \"AS2\",\n hostPartnerName: host.name,\n guestPartnerName: guest.name,\n content: fs.readFileSync(\"testdata/integration_account_agreement_content_as2.json\"),\n hostIdentity: {\n qualifier: \"AS2Identity\",\n value: \"FabrikamNY\",\n },\n guestIdentity: {\n qualifier: \"AS2Identity\",\n value: \"FabrikamDC\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample = azure.core.ResourceGroup(\"example\", location=\"West Europe\")\ntest_integration_account = azure.logicapps.IntegrationAccount(\"testIntegrationAccount\",\n location=example.location,\n resource_group_name=example.name,\n sku_name=\"Standard\")\nhost = azure.logicapps.IntegrationAccountPartner(\"host\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n business_identities=[azure.logicapps.IntegrationAccountPartnerBusinessIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamNY\",\n )])\nguest = azure.logicapps.IntegrationAccountPartner(\"guest\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n business_identities=[azure.logicapps.IntegrationAccountPartnerBusinessIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamDC\",\n )])\ntest_integration_account_agreement = azure.logicapps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n agreement_type=\"AS2\",\n host_partner_name=host.name,\n guest_partner_name=guest.name,\n content=(lambda path: open(path).read())(\"testdata/integration_account_agreement_content_as2.json\"),\n host_identity=azure.logicapps.IntegrationAccountAgreementHostIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamNY\",\n ),\n guest_identity=azure.logicapps.IntegrationAccountAgreementGuestIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamDC\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Azure.Core.ResourceGroup(\"example\", new()\n {\n Location = \"West Europe\",\n });\n\n var testIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"testIntegrationAccount\", new()\n {\n Location = example.Location,\n ResourceGroupName = example.Name,\n SkuName = \"Standard\",\n });\n\n var host = new Azure.LogicApps.IntegrationAccountPartner(\"host\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n BusinessIdentities = new[]\n {\n new Azure.LogicApps.Inputs.IntegrationAccountPartnerBusinessIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamNY\",\n },\n },\n });\n\n var guest = new Azure.LogicApps.IntegrationAccountPartner(\"guest\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n BusinessIdentities = new[]\n {\n new Azure.LogicApps.Inputs.IntegrationAccountPartnerBusinessIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamDC\",\n },\n },\n });\n\n var testIntegrationAccountAgreement = new Azure.LogicApps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n AgreementType = \"AS2\",\n HostPartnerName = host.Name,\n GuestPartnerName = guest.Name,\n Content = File.ReadAllText(\"testdata/integration_account_agreement_content_as2.json\"),\n HostIdentity = new Azure.LogicApps.Inputs.IntegrationAccountAgreementHostIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamNY\",\n },\n GuestIdentity = new Azure.LogicApps.Inputs.IntegrationAccountAgreementGuestIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamDC\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := core.NewResourceGroup(ctx, \"example\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"testIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: example.Location,\n\t\t\tResourceGroupName: example.Name,\n\t\t\tSkuName: pulumi.String(\"Standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\thost, err := logicapps.NewIntegrationAccountPartner(ctx, \"host\", \u0026logicapps.IntegrationAccountPartnerArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tBusinessIdentities: logicapps.IntegrationAccountPartnerBusinessIdentityArray{\n\t\t\t\t\u0026logicapps.IntegrationAccountPartnerBusinessIdentityArgs{\n\t\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\t\tValue: pulumi.String(\"FabrikamNY\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tguest, err := logicapps.NewIntegrationAccountPartner(ctx, \"guest\", \u0026logicapps.IntegrationAccountPartnerArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tBusinessIdentities: logicapps.IntegrationAccountPartnerBusinessIdentityArray{\n\t\t\t\t\u0026logicapps.IntegrationAccountPartnerBusinessIdentityArgs{\n\t\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\t\tValue: pulumi.String(\"FabrikamDC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountAgreement(ctx, \"testIntegrationAccountAgreement\", \u0026logicapps.IntegrationAccountAgreementArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tAgreementType: pulumi.String(\"AS2\"),\n\t\t\tHostPartnerName: host.Name,\n\t\t\tGuestPartnerName: guest.Name,\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_agreement_content_as2.json\"),\n\t\t\tHostIdentity: \u0026logicapps.IntegrationAccountAgreementHostIdentityArgs{\n\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\tValue: pulumi.String(\"FabrikamNY\"),\n\t\t\t},\n\t\t\tGuestIdentity: \u0026logicapps.IntegrationAccountAgreementGuestIdentityArgs{\n\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\tValue: pulumi.String(\"FabrikamDC\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountPartner;\nimport com.pulumi.azure.logicapps.IntegrationAccountPartnerArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountPartnerBusinessIdentityArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountAgreement;\nimport com.pulumi.azure.logicapps.IntegrationAccountAgreementArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountAgreementHostIdentityArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountAgreementGuestIdentityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResourceGroup(\"example\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var testIntegrationAccount = new IntegrationAccount(\"testIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(example.location())\n .resourceGroupName(example.name())\n .skuName(\"Standard\")\n .build());\n\n var host = new IntegrationAccountPartner(\"host\", IntegrationAccountPartnerArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .businessIdentities(IntegrationAccountPartnerBusinessIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamNY\")\n .build())\n .build());\n\n var guest = new IntegrationAccountPartner(\"guest\", IntegrationAccountPartnerArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .businessIdentities(IntegrationAccountPartnerBusinessIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamDC\")\n .build())\n .build());\n\n var testIntegrationAccountAgreement = new IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", IntegrationAccountAgreementArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .agreementType(\"AS2\")\n .hostPartnerName(host.name())\n .guestPartnerName(guest.name())\n .content(Files.readString(Paths.get(\"testdata/integration_account_agreement_content_as2.json\")))\n .hostIdentity(IntegrationAccountAgreementHostIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamNY\")\n .build())\n .guestIdentity(IntegrationAccountAgreementGuestIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamDC\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n testIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${example.location}\n resourceGroupName: ${example.name}\n skuName: Standard\n host:\n type: azure:logicapps:IntegrationAccountPartner\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n businessIdentities:\n - qualifier: AS2Identity\n value: FabrikamNY\n guest:\n type: azure:logicapps:IntegrationAccountPartner\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n businessIdentities:\n - qualifier: AS2Identity\n value: FabrikamDC\n testIntegrationAccountAgreement:\n type: azure:logicapps:IntegrationAccountAgreement\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n agreementType: AS2\n hostPartnerName: ${host.name}\n guestPartnerName: ${guest.name}\n content:\n fn::readFile: testdata/integration_account_agreement_content_as2.json\n hostIdentity:\n qualifier: AS2Identity\n value: FabrikamNY\n guestIdentity:\n qualifier: AS2Identity\n value: FabrikamDC\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Agreements can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountAgreement:IntegrationAccountAgreement example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/agreements/agreement1\n```\n\n ", + "description": "Manages a Logic App Integration Account Agreement.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst example = new azure.core.ResourceGroup(\"example\", {location: \"West Europe\"});\nconst testIntegrationAccount = new azure.logicapps.IntegrationAccount(\"testIntegrationAccount\", {\n location: example.location,\n resourceGroupName: example.name,\n skuName: \"Standard\",\n});\nconst host = new azure.logicapps.IntegrationAccountPartner(\"host\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n businessIdentities: [{\n qualifier: \"AS2Identity\",\n value: \"FabrikamNY\",\n }],\n});\nconst guest = new azure.logicapps.IntegrationAccountPartner(\"guest\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n businessIdentities: [{\n qualifier: \"AS2Identity\",\n value: \"FabrikamDC\",\n }],\n});\nconst testIntegrationAccountAgreement = new azure.logicapps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", {\n resourceGroupName: example.name,\n integrationAccountName: testIntegrationAccount.name,\n agreementType: \"AS2\",\n hostPartnerName: host.name,\n guestPartnerName: guest.name,\n content: fs.readFileSync(\"testdata/integration_account_agreement_content_as2.json\", \"utf8\"),\n hostIdentity: {\n qualifier: \"AS2Identity\",\n value: \"FabrikamNY\",\n },\n guestIdentity: {\n qualifier: \"AS2Identity\",\n value: \"FabrikamDC\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample = azure.core.ResourceGroup(\"example\", location=\"West Europe\")\ntest_integration_account = azure.logicapps.IntegrationAccount(\"testIntegrationAccount\",\n location=example.location,\n resource_group_name=example.name,\n sku_name=\"Standard\")\nhost = azure.logicapps.IntegrationAccountPartner(\"host\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n business_identities=[azure.logicapps.IntegrationAccountPartnerBusinessIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamNY\",\n )])\nguest = azure.logicapps.IntegrationAccountPartner(\"guest\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n business_identities=[azure.logicapps.IntegrationAccountPartnerBusinessIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamDC\",\n )])\ntest_integration_account_agreement = azure.logicapps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\",\n resource_group_name=example.name,\n integration_account_name=test_integration_account.name,\n agreement_type=\"AS2\",\n host_partner_name=host.name,\n guest_partner_name=guest.name,\n content=(lambda path: open(path).read())(\"testdata/integration_account_agreement_content_as2.json\"),\n host_identity=azure.logicapps.IntegrationAccountAgreementHostIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamNY\",\n ),\n guest_identity=azure.logicapps.IntegrationAccountAgreementGuestIdentityArgs(\n qualifier=\"AS2Identity\",\n value=\"FabrikamDC\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Azure.Core.ResourceGroup(\"example\", new()\n {\n Location = \"West Europe\",\n });\n\n var testIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"testIntegrationAccount\", new()\n {\n Location = example.Location,\n ResourceGroupName = example.Name,\n SkuName = \"Standard\",\n });\n\n var host = new Azure.LogicApps.IntegrationAccountPartner(\"host\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n BusinessIdentities = new[]\n {\n new Azure.LogicApps.Inputs.IntegrationAccountPartnerBusinessIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamNY\",\n },\n },\n });\n\n var guest = new Azure.LogicApps.IntegrationAccountPartner(\"guest\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n BusinessIdentities = new[]\n {\n new Azure.LogicApps.Inputs.IntegrationAccountPartnerBusinessIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamDC\",\n },\n },\n });\n\n var testIntegrationAccountAgreement = new Azure.LogicApps.IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", new()\n {\n ResourceGroupName = example.Name,\n IntegrationAccountName = testIntegrationAccount.Name,\n AgreementType = \"AS2\",\n HostPartnerName = host.Name,\n GuestPartnerName = guest.Name,\n Content = File.ReadAllText(\"testdata/integration_account_agreement_content_as2.json\"),\n HostIdentity = new Azure.LogicApps.Inputs.IntegrationAccountAgreementHostIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamNY\",\n },\n GuestIdentity = new Azure.LogicApps.Inputs.IntegrationAccountAgreementGuestIdentityArgs\n {\n Qualifier = \"AS2Identity\",\n Value = \"FabrikamDC\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := core.NewResourceGroup(ctx, \"example\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"testIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: example.Location,\n\t\t\tResourceGroupName: example.Name,\n\t\t\tSkuName: pulumi.String(\"Standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\thost, err := logicapps.NewIntegrationAccountPartner(ctx, \"host\", \u0026logicapps.IntegrationAccountPartnerArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tBusinessIdentities: logicapps.IntegrationAccountPartnerBusinessIdentityArray{\n\t\t\t\t\u0026logicapps.IntegrationAccountPartnerBusinessIdentityArgs{\n\t\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\t\tValue: pulumi.String(\"FabrikamNY\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tguest, err := logicapps.NewIntegrationAccountPartner(ctx, \"guest\", \u0026logicapps.IntegrationAccountPartnerArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tBusinessIdentities: logicapps.IntegrationAccountPartnerBusinessIdentityArray{\n\t\t\t\t\u0026logicapps.IntegrationAccountPartnerBusinessIdentityArgs{\n\t\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\t\tValue: pulumi.String(\"FabrikamDC\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountAgreement(ctx, \"testIntegrationAccountAgreement\", \u0026logicapps.IntegrationAccountAgreementArgs{\n\t\t\tResourceGroupName: example.Name,\n\t\t\tIntegrationAccountName: testIntegrationAccount.Name,\n\t\t\tAgreementType: pulumi.String(\"AS2\"),\n\t\t\tHostPartnerName: host.Name,\n\t\t\tGuestPartnerName: guest.Name,\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_agreement_content_as2.json\"),\n\t\t\tHostIdentity: \u0026logicapps.IntegrationAccountAgreementHostIdentityArgs{\n\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\tValue: pulumi.String(\"FabrikamNY\"),\n\t\t\t},\n\t\t\tGuestIdentity: \u0026logicapps.IntegrationAccountAgreementGuestIdentityArgs{\n\t\t\t\tQualifier: pulumi.String(\"AS2Identity\"),\n\t\t\t\tValue: pulumi.String(\"FabrikamDC\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountPartner;\nimport com.pulumi.azure.logicapps.IntegrationAccountPartnerArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountPartnerBusinessIdentityArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountAgreement;\nimport com.pulumi.azure.logicapps.IntegrationAccountAgreementArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountAgreementHostIdentityArgs;\nimport com.pulumi.azure.logicapps.inputs.IntegrationAccountAgreementGuestIdentityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResourceGroup(\"example\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var testIntegrationAccount = new IntegrationAccount(\"testIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(example.location())\n .resourceGroupName(example.name())\n .skuName(\"Standard\")\n .build());\n\n var host = new IntegrationAccountPartner(\"host\", IntegrationAccountPartnerArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .businessIdentities(IntegrationAccountPartnerBusinessIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamNY\")\n .build())\n .build());\n\n var guest = new IntegrationAccountPartner(\"guest\", IntegrationAccountPartnerArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .businessIdentities(IntegrationAccountPartnerBusinessIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamDC\")\n .build())\n .build());\n\n var testIntegrationAccountAgreement = new IntegrationAccountAgreement(\"testIntegrationAccountAgreement\", IntegrationAccountAgreementArgs.builder() \n .resourceGroupName(example.name())\n .integrationAccountName(testIntegrationAccount.name())\n .agreementType(\"AS2\")\n .hostPartnerName(host.name())\n .guestPartnerName(guest.name())\n .content(Files.readString(Paths.get(\"testdata/integration_account_agreement_content_as2.json\")))\n .hostIdentity(IntegrationAccountAgreementHostIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamNY\")\n .build())\n .guestIdentity(IntegrationAccountAgreementGuestIdentityArgs.builder()\n .qualifier(\"AS2Identity\")\n .value(\"FabrikamDC\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n testIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${example.location}\n resourceGroupName: ${example.name}\n skuName: Standard\n host:\n type: azure:logicapps:IntegrationAccountPartner\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n businessIdentities:\n - qualifier: AS2Identity\n value: FabrikamNY\n guest:\n type: azure:logicapps:IntegrationAccountPartner\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n businessIdentities:\n - qualifier: AS2Identity\n value: FabrikamDC\n testIntegrationAccountAgreement:\n type: azure:logicapps:IntegrationAccountAgreement\n properties:\n resourceGroupName: ${example.name}\n integrationAccountName: ${testIntegrationAccount.name}\n agreementType: AS2\n hostPartnerName: ${host.name}\n guestPartnerName: ${guest.name}\n content:\n fn::readFile: testdata/integration_account_agreement_content_as2.json\n hostIdentity:\n qualifier: AS2Identity\n value: FabrikamNY\n guestIdentity:\n qualifier: AS2Identity\n value: FabrikamDC\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Agreements can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountAgreement:IntegrationAccountAgreement example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/agreements/agreement1\n```\n\n ", "properties": { "agreementType": { "type": "string", @@ -194010,7 +194010,7 @@ } }, "azure:logicapps/integrationAccountMap:IntegrationAccountMap": { - "description": "Manages a Logic App Integration Account Map.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Standard\",\n});\nconst exampleIntegrationAccountMap = new azure.logicapps.IntegrationAccountMap(\"exampleIntegrationAccountMap\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n mapType: \"Xslt\",\n content: fs.readFileSync(\"testdata/integration_account_map_content.xsd\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Standard\")\nexample_integration_account_map = azure.logicapps.IntegrationAccountMap(\"exampleIntegrationAccountMap\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n map_type=\"Xslt\",\n content=(lambda path: open(path).read())(\"testdata/integration_account_map_content.xsd\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Standard\",\n });\n\n var exampleIntegrationAccountMap = new Azure.LogicApps.IntegrationAccountMap(\"exampleIntegrationAccountMap\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n MapType = \"Xslt\",\n Content = File.ReadAllText(\"testdata/integration_account_map_content.xsd\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountMap(ctx, \"exampleIntegrationAccountMap\", \u0026logicapps.IntegrationAccountMapArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tMapType: pulumi.String(\"Xslt\"),\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_map_content.xsd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountMap;\nimport com.pulumi.azure.logicapps.IntegrationAccountMapArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Standard\")\n .build());\n\n var exampleIntegrationAccountMap = new IntegrationAccountMap(\"exampleIntegrationAccountMap\", IntegrationAccountMapArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .mapType(\"Xslt\")\n .content(Files.readString(Paths.get(\"testdata/integration_account_map_content.xsd\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Standard\n exampleIntegrationAccountMap:\n type: azure:logicapps:IntegrationAccountMap\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n integrationAccountName: ${exampleIntegrationAccount.name}\n mapType: Xslt\n content:\n fn::readFile: testdata/integration_account_map_content.xsd\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Maps can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountMap:IntegrationAccountMap example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/maps/map1\n```\n\n ", + "description": "Manages a Logic App Integration Account Map.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Standard\",\n});\nconst exampleIntegrationAccountMap = new azure.logicapps.IntegrationAccountMap(\"exampleIntegrationAccountMap\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n mapType: \"Xslt\",\n content: fs.readFileSync(\"testdata/integration_account_map_content.xsd\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Standard\")\nexample_integration_account_map = azure.logicapps.IntegrationAccountMap(\"exampleIntegrationAccountMap\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n map_type=\"Xslt\",\n content=(lambda path: open(path).read())(\"testdata/integration_account_map_content.xsd\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Standard\",\n });\n\n var exampleIntegrationAccountMap = new Azure.LogicApps.IntegrationAccountMap(\"exampleIntegrationAccountMap\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n MapType = \"Xslt\",\n Content = File.ReadAllText(\"testdata/integration_account_map_content.xsd\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountMap(ctx, \"exampleIntegrationAccountMap\", \u0026logicapps.IntegrationAccountMapArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tMapType: pulumi.String(\"Xslt\"),\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_map_content.xsd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountMap;\nimport com.pulumi.azure.logicapps.IntegrationAccountMapArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Standard\")\n .build());\n\n var exampleIntegrationAccountMap = new IntegrationAccountMap(\"exampleIntegrationAccountMap\", IntegrationAccountMapArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .mapType(\"Xslt\")\n .content(Files.readString(Paths.get(\"testdata/integration_account_map_content.xsd\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Standard\n exampleIntegrationAccountMap:\n type: azure:logicapps:IntegrationAccountMap\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n integrationAccountName: ${exampleIntegrationAccount.name}\n mapType: Xslt\n content:\n fn::readFile: testdata/integration_account_map_content.xsd\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Maps can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountMap:IntegrationAccountMap example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/maps/map1\n```\n\n ", "properties": { "content": { "type": "string", @@ -194222,7 +194222,7 @@ } }, "azure:logicapps/integrationAccountSchema:IntegrationAccountSchema": { - "description": "Manages a Logic App Integration Account Schema.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleIntegrationAccountSchema = new azure.logicapps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n content: fs.readFileSync(\"testdata/integration_account_schema_content.xsd\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_integration_account_schema = azure.logicapps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n content=(lambda path: open(path).read())(\"testdata/integration_account_schema_content.xsd\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleIntegrationAccountSchema = new Azure.LogicApps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n Content = File.ReadAllText(\"testdata/integration_account_schema_content.xsd\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountSchema(ctx, \"exampleIntegrationAccountSchema\", \u0026logicapps.IntegrationAccountSchemaArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_schema_content.xsd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountSchema;\nimport com.pulumi.azure.logicapps.IntegrationAccountSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleIntegrationAccountSchema = new IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", IntegrationAccountSchemaArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .content(Files.readString(Paths.get(\"testdata/integration_account_schema_content.xsd\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Basic\n exampleIntegrationAccountSchema:\n type: azure:logicapps:IntegrationAccountSchema\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n integrationAccountName: ${exampleIntegrationAccount.name}\n content:\n fn::readFile: testdata/integration_account_schema_content.xsd\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Schemas can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountSchema:IntegrationAccountSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/schemas/schema1\n```\n\n ", + "description": "Manages a Logic App Integration Account Schema.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleIntegrationAccountSchema = new azure.logicapps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n content: fs.readFileSync(\"testdata/integration_account_schema_content.xsd\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_integration_account_schema = azure.logicapps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n content=(lambda path: open(path).read())(\"testdata/integration_account_schema_content.xsd\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleIntegrationAccountSchema = new Azure.LogicApps.IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n Content = File.ReadAllText(\"testdata/integration_account_schema_content.xsd\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountSchema(ctx, \"exampleIntegrationAccountSchema\", \u0026logicapps.IntegrationAccountSchemaArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tContent: readFileOrPanic(\"testdata/integration_account_schema_content.xsd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountSchema;\nimport com.pulumi.azure.logicapps.IntegrationAccountSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleIntegrationAccountSchema = new IntegrationAccountSchema(\"exampleIntegrationAccountSchema\", IntegrationAccountSchemaArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .content(Files.readString(Paths.get(\"testdata/integration_account_schema_content.xsd\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleIntegrationAccount:\n type: azure:logicapps:IntegrationAccount\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n skuName: Basic\n exampleIntegrationAccountSchema:\n type: azure:logicapps:IntegrationAccountSchema\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n integrationAccountName: ${exampleIntegrationAccount.name}\n content:\n fn::readFile: testdata/integration_account_schema_content.xsd\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Schemas can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountSchema:IntegrationAccountSchema example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/schemas/schema1\n```\n\n ", "properties": { "content": { "type": "string", @@ -197118,7 +197118,7 @@ } }, "azure:maintenance/assignmentVirtualMachine:AssignmentVirtualMachine": { - "description": "Manages a maintenance assignment to virtual machine.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"internal\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\nconst exampleConfiguration = new azure.maintenance.Configuration(\"exampleConfiguration\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n scope: \"All\",\n});\nconst exampleAssignmentVirtualMachine = new azure.maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", {\n location: exampleResourceGroup.location,\n maintenanceConfigurationId: exampleConfiguration.id,\n virtualMachineId: exampleLinuxVirtualMachine.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\nexample_configuration = azure.maintenance.Configuration(\"exampleConfiguration\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n scope=\"All\")\nexample_assignment_virtual_machine = azure.maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\",\n location=example_resource_group.location,\n maintenance_configuration_id=example_configuration.id,\n virtual_machine_id=example_linux_virtual_machine.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n var exampleConfiguration = new Azure.Maintenance.Configuration(\"exampleConfiguration\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Scope = \"All\",\n });\n\n var exampleAssignmentVirtualMachine = new Azure.Maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", new()\n {\n Location = exampleResourceGroup.Location,\n MaintenanceConfigurationId = exampleConfiguration.Id,\n VirtualMachineId = exampleLinuxVirtualMachine.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/maintenance\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleConfiguration, err := maintenance.NewConfiguration(ctx, \"exampleConfiguration\", \u0026maintenance.ConfigurationArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tScope: pulumi.String(\"All\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = maintenance.NewAssignmentVirtualMachine(ctx, \"exampleAssignmentVirtualMachine\", \u0026maintenance.AssignmentVirtualMachineArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tMaintenanceConfigurationId: exampleConfiguration.ID(),\n\t\t\tVirtualMachineId: exampleLinuxVirtualMachine.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport com.pulumi.azure.maintenance.Configuration;\nimport com.pulumi.azure.maintenance.ConfigurationArgs;\nimport com.pulumi.azure.maintenance.AssignmentVirtualMachine;\nimport com.pulumi.azure.maintenance.AssignmentVirtualMachineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n var exampleConfiguration = new Configuration(\"exampleConfiguration\", ConfigurationArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .scope(\"All\")\n .build());\n\n var exampleAssignmentVirtualMachine = new AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", AssignmentVirtualMachineArgs.builder() \n .location(exampleResourceGroup.location())\n .maintenanceConfigurationId(exampleConfiguration.id())\n .virtualMachineId(exampleLinuxVirtualMachine.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: internal\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n exampleConfiguration:\n type: azure:maintenance:Configuration\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n scope: All\n exampleAssignmentVirtualMachine:\n type: azure:maintenance:AssignmentVirtualMachine\n properties:\n location: ${exampleResourceGroup.location}\n maintenanceConfigurationId: ${exampleConfiguration.id}\n virtualMachineId: ${exampleLinuxVirtualMachine.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMaintenance Assignment can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:maintenance/assignmentVirtualMachine:AssignmentVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Maintenance/configurationAssignments/assign1\n```\n\n ", + "description": "Manages a maintenance assignment to virtual machine.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleNetworkInterface = new azure.network.NetworkInterface(\"exampleNetworkInterface\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n ipConfigurations: [{\n name: \"internal\",\n subnetId: exampleSubnet.id,\n privateIpAddressAllocation: \"Dynamic\",\n }],\n});\nconst exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n size: \"Standard_F2\",\n adminUsername: \"adminuser\",\n networkInterfaceIds: [exampleNetworkInterface.id],\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n }],\n osDisk: {\n caching: \"ReadWrite\",\n storageAccountType: \"Standard_LRS\",\n },\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n});\nconst exampleConfiguration = new azure.maintenance.Configuration(\"exampleConfiguration\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n scope: \"All\",\n});\nconst exampleAssignmentVirtualMachine = new azure.maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", {\n location: exampleResourceGroup.location,\n maintenanceConfigurationId: exampleConfiguration.id,\n virtualMachineId: exampleLinuxVirtualMachine.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_network_interface = azure.network.NetworkInterface(\"exampleNetworkInterface\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n subnet_id=example_subnet.id,\n private_ip_address_allocation=\"Dynamic\",\n )])\nexample_linux_virtual_machine = azure.compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n size=\"Standard_F2\",\n admin_username=\"adminuser\",\n network_interface_ids=[example_network_interface.id],\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n os_disk=azure.compute.LinuxVirtualMachineOsDiskArgs(\n caching=\"ReadWrite\",\n storage_account_type=\"Standard_LRS\",\n ),\n source_image_reference=azure.compute.LinuxVirtualMachineSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ))\nexample_configuration = azure.maintenance.Configuration(\"exampleConfiguration\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n scope=\"All\")\nexample_assignment_virtual_machine = azure.maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\",\n location=example_resource_group.location,\n maintenance_configuration_id=example_configuration.id,\n virtual_machine_id=example_linux_virtual_machine.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleNetworkInterface = new Azure.Network.NetworkInterface(\"exampleNetworkInterface\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n IpConfigurations = new[]\n {\n new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n SubnetId = exampleSubnet.Id,\n PrivateIpAddressAllocation = \"Dynamic\",\n },\n },\n });\n\n var exampleLinuxVirtualMachine = new Azure.Compute.LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Size = \"Standard_F2\",\n AdminUsername = \"adminuser\",\n NetworkInterfaceIds = new[]\n {\n exampleNetworkInterface.Id,\n },\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineOsDiskArgs\n {\n Caching = \"ReadWrite\",\n StorageAccountType = \"Standard_LRS\",\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n });\n\n var exampleConfiguration = new Azure.Maintenance.Configuration(\"exampleConfiguration\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Scope = \"All\",\n });\n\n var exampleAssignmentVirtualMachine = new Azure.Maintenance.AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", new()\n {\n Location = exampleResourceGroup.Location,\n MaintenanceConfigurationId = exampleConfiguration.Id,\n VirtualMachineId = exampleLinuxVirtualMachine.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/maintenance\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNetworkInterface, err := network.NewNetworkInterface(ctx, \"exampleNetworkInterface\", \u0026network.NetworkInterfaceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIpConfigurations: network.NetworkInterfaceIpConfigurationArray{\n\t\t\t\t\u0026network.NetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t\tPrivateIpAddressAllocation: pulumi.String(\"Dynamic\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachine, err := compute.NewLinuxVirtualMachine(ctx, \"exampleLinuxVirtualMachine\", \u0026compute.LinuxVirtualMachineArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSize: pulumi.String(\"Standard_F2\"),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tNetworkInterfaceIds: pulumi.StringArray{\n\t\t\t\texampleNetworkInterface.ID(),\n\t\t\t},\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineOsDiskArgs{\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleConfiguration, err := maintenance.NewConfiguration(ctx, \"exampleConfiguration\", \u0026maintenance.ConfigurationArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tScope: pulumi.String(\"All\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = maintenance.NewAssignmentVirtualMachine(ctx, \"exampleAssignmentVirtualMachine\", \u0026maintenance.AssignmentVirtualMachineArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tMaintenanceConfigurationId: exampleConfiguration.ID(),\n\t\t\tVirtualMachineId: exampleLinuxVirtualMachine.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.NetworkInterface;\nimport com.pulumi.azure.network.NetworkInterfaceArgs;\nimport com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachine;\nimport com.pulumi.azure.compute.LinuxVirtualMachineArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineSourceImageReferenceArgs;\nimport com.pulumi.azure.maintenance.Configuration;\nimport com.pulumi.azure.maintenance.ConfigurationArgs;\nimport com.pulumi.azure.maintenance.AssignmentVirtualMachine;\nimport com.pulumi.azure.maintenance.AssignmentVirtualMachineArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleNetworkInterface = new NetworkInterface(\"exampleNetworkInterface\", NetworkInterfaceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .subnetId(exampleSubnet.id())\n .privateIpAddressAllocation(\"Dynamic\")\n .build())\n .build());\n\n var exampleLinuxVirtualMachine = new LinuxVirtualMachine(\"exampleLinuxVirtualMachine\", LinuxVirtualMachineArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .size(\"Standard_F2\")\n .adminUsername(\"adminuser\")\n .networkInterfaceIds(exampleNetworkInterface.id())\n .adminSshKeys(LinuxVirtualMachineAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .osDisk(LinuxVirtualMachineOsDiskArgs.builder()\n .caching(\"ReadWrite\")\n .storageAccountType(\"Standard_LRS\")\n .build())\n .sourceImageReference(LinuxVirtualMachineSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .build());\n\n var exampleConfiguration = new Configuration(\"exampleConfiguration\", ConfigurationArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .scope(\"All\")\n .build());\n\n var exampleAssignmentVirtualMachine = new AssignmentVirtualMachine(\"exampleAssignmentVirtualMachine\", AssignmentVirtualMachineArgs.builder() \n .location(exampleResourceGroup.location())\n .maintenanceConfigurationId(exampleConfiguration.id())\n .virtualMachineId(exampleLinuxVirtualMachine.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n addressSpaces:\n - 10.0.0.0/16\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n exampleSubnet:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleNetworkInterface:\n type: azure:network:NetworkInterface\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n ipConfigurations:\n - name: internal\n subnetId: ${exampleSubnet.id}\n privateIpAddressAllocation: Dynamic\n exampleLinuxVirtualMachine:\n type: azure:compute:LinuxVirtualMachine\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n size: Standard_F2\n adminUsername: adminuser\n networkInterfaceIds:\n - ${exampleNetworkInterface.id}\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n osDisk:\n caching: ReadWrite\n storageAccountType: Standard_LRS\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n exampleConfiguration:\n type: azure:maintenance:Configuration\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n scope: All\n exampleAssignmentVirtualMachine:\n type: azure:maintenance:AssignmentVirtualMachine\n properties:\n location: ${exampleResourceGroup.location}\n maintenanceConfigurationId: ${exampleConfiguration.id}\n virtualMachineId: ${exampleLinuxVirtualMachine.id}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nMaintenance Assignment can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:maintenance/assignmentVirtualMachine:AssignmentVirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Maintenance/configurationAssignments/assign1\n```\n\n ", "properties": { "location": { "type": "string", @@ -198667,7 +198667,7 @@ } }, "azure:management/groupTemplateDeployment:GroupTemplateDeployment": { - "description": "Manages a Template Deployment at a Management Group Scope.\n\n\u003e **Note:** Deleting a Deployment at the Management Group Scope will not delete any resources created by the deployment.\n\n\u003e **Note:** Deployments to a Management Group are always Incrementally applied. Existing resources that are not part of the template will not be removed.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateContent: `{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n`,\n parametersContent: `{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_content=\"\"\"{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n\"\"\",\n parameters_content=\"\"\"{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateContent = @\"{\n \"\"$schema\"\": \"\"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\"\",\n \"\"contentVersion\"\": \"\"1.0.0.0\"\",\n \"\"parameters\"\": {\n \"\"policyAssignmentName\"\": {\n \"\"type\"\": \"\"string\"\",\n \"\"defaultValue\"\": \"\"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\"\",\n \"\"metadata\"\": {\n \"\"description\"\": \"\"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\"\n }\n },\n \"\"policyDefinitionID\"\": {\n \"\"type\"\": \"\"string\"\",\n \"\"metadata\"\": {\n \"\"description\"\": \"\"Specifies the ID of the policy definition or policy set definition being assigned.\"\"\n }\n }\n },\n \"\"resources\"\": [\n {\n \"\"type\"\": \"\"Microsoft.Authorization/policyAssignments\"\",\n \"\"name\"\": \"\"[parameters('policyAssignmentName')]\"\",\n \"\"apiVersion\"\": \"\"2019-09-01\"\",\n \"\"properties\"\": {\n \"\"scope\"\": \"\"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\"\",\n \"\"policyDefinitionId\"\": \"\"[parameters('policyDefinitionID')]\"\"\n }\n }\n ]\n}\n\",\n ParametersContent = @\"{\n \"\"$schema\"\": \"\"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\"\",\n \"\"contentVersion\"\": \"\"1.0.0.0\"\",\n \"\"parameters\"\": {\n \"\"policyDefinitionID\"\": {\n \"\"value\"\": \"\"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\"\n }\n }\n}\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateContent: pulumi.String(`{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n`),\n\t\t\tParametersContent: pulumi.String(`{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateContent(\"\"\"\n{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n \"\"\")\n .parametersContent(\"\"\"\n{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateContent: |\n {\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n }\n parametersContent: |\n {\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n }\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateContent: fs.readFileSync(\"templates/example-deploy-template.json\"),\n parametersContent: fs.readFileSync(\"templates/example-deploy-params.json\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_content=(lambda path: open(path).read())(\"templates/example-deploy-template.json\"),\n parameters_content=(lambda path: open(path).read())(\"templates/example-deploy-params.json\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateContent = File.ReadAllText(\"templates/example-deploy-template.json\"),\n ParametersContent = File.ReadAllText(\"templates/example-deploy-params.json\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateContent: readFileOrPanic(\"templates/example-deploy-template.json\"),\n\t\t\tParametersContent: readFileOrPanic(\"templates/example-deploy-params.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateContent(Files.readString(Paths.get(\"templates/example-deploy-template.json\")))\n .parametersContent(Files.readString(Paths.get(\"templates/example-deploy-params.json\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateContent:\n fn::readFile: templates/example-deploy-template.json\n parametersContent:\n fn::readFile: templates/example-deploy-params.json\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleTemplateSpecVersion = azure.core.getTemplateSpecVersion({\n name: \"exampleTemplateForManagementGroup\",\n resourceGroupName: \"exampleResourceGroup\",\n version: \"v1.0.9\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateSpecVersionId: exampleTemplateSpecVersion.then(exampleTemplateSpecVersion =\u003e exampleTemplateSpecVersion.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_template_spec_version = azure.core.get_template_spec_version(name=\"exampleTemplateForManagementGroup\",\n resource_group_name=\"exampleResourceGroup\",\n version=\"v1.0.9\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_spec_version_id=example_template_spec_version.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleTemplateSpecVersion = Azure.Core.GetTemplateSpecVersion.Invoke(new()\n {\n Name = \"exampleTemplateForManagementGroup\",\n ResourceGroupName = \"exampleResourceGroup\",\n Version = \"v1.0.9\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateSpecVersionId = exampleTemplateSpecVersion.Apply(getTemplateSpecVersionResult =\u003e getTemplateSpecVersionResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTemplateSpecVersion, err := core.GetTemplateSpecVersion(ctx, \u0026core.GetTemplateSpecVersionArgs{\n\t\t\tName: \"exampleTemplateForManagementGroup\",\n\t\t\tResourceGroupName: \"exampleResourceGroup\",\n\t\t\tVersion: \"v1.0.9\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateSpecVersionId: *pulumi.String(exampleTemplateSpecVersion.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.inputs.GetTemplateSpecVersionArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n final var exampleTemplateSpecVersion = CoreFunctions.getTemplateSpecVersion(GetTemplateSpecVersionArgs.builder()\n .name(\"exampleTemplateForManagementGroup\")\n .resourceGroupName(\"exampleResourceGroup\")\n .version(\"v1.0.9\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateSpecVersionId(exampleTemplateSpecVersion.applyValue(getTemplateSpecVersionResult -\u003e getTemplateSpecVersionResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateSpecVersionId: ${exampleTemplateSpecVersion.id}\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n exampleTemplateSpecVersion:\n fn::invoke:\n Function: azure:core:getTemplateSpecVersion\n Arguments:\n name: exampleTemplateForManagementGroup\n resourceGroupName: exampleResourceGroup\n version: v1.0.9\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nManagement Group Template Deployments can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:management/groupTemplateDeployment:GroupTemplateDeployment example /providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/deploy1\n```\n\n ", + "description": "Manages a Template Deployment at a Management Group Scope.\n\n\u003e **Note:** Deleting a Deployment at the Management Group Scope will not delete any resources created by the deployment.\n\n\u003e **Note:** Deployments to a Management Group are always Incrementally applied. Existing resources that are not part of the template will not be removed.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateContent: `{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n`,\n parametersContent: `{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n`,\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_content=\"\"\"{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n\"\"\",\n parameters_content=\"\"\"{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n\"\"\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateContent = @\"{\n \"\"$schema\"\": \"\"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\"\",\n \"\"contentVersion\"\": \"\"1.0.0.0\"\",\n \"\"parameters\"\": {\n \"\"policyAssignmentName\"\": {\n \"\"type\"\": \"\"string\"\",\n \"\"defaultValue\"\": \"\"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\"\",\n \"\"metadata\"\": {\n \"\"description\"\": \"\"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\"\n }\n },\n \"\"policyDefinitionID\"\": {\n \"\"type\"\": \"\"string\"\",\n \"\"metadata\"\": {\n \"\"description\"\": \"\"Specifies the ID of the policy definition or policy set definition being assigned.\"\"\n }\n }\n },\n \"\"resources\"\": [\n {\n \"\"type\"\": \"\"Microsoft.Authorization/policyAssignments\"\",\n \"\"name\"\": \"\"[parameters('policyAssignmentName')]\"\",\n \"\"apiVersion\"\": \"\"2019-09-01\"\",\n \"\"properties\"\": {\n \"\"scope\"\": \"\"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\"\",\n \"\"policyDefinitionId\"\": \"\"[parameters('policyDefinitionID')]\"\"\n }\n }\n ]\n}\n\",\n ParametersContent = @\"{\n \"\"$schema\"\": \"\"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\"\",\n \"\"contentVersion\"\": \"\"1.0.0.0\"\",\n \"\"parameters\"\": {\n \"\"policyDefinitionID\"\": {\n \"\"value\"\": \"\"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\"\n }\n }\n}\n\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateContent: pulumi.String(`{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n`),\n\t\t\tParametersContent: pulumi.String(`{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n`),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateContent(\"\"\"\n{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n}\n \"\"\")\n .parametersContent(\"\"\"\n{\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n}\n \"\"\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateContent: |\n {\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyAssignmentName\": {\n \"type\": \"string\",\n \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n \"metadata\": {\n \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n }\n },\n \"policyDefinitionID\": {\n \"type\": \"string\",\n \"metadata\": {\n \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n }\n }\n },\n \"resources\": [\n {\n \"type\": \"Microsoft.Authorization/policyAssignments\",\n \"name\": \"[parameters('policyAssignmentName')]\",\n \"apiVersion\": \"2019-09-01\",\n \"properties\": {\n \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n }\n }\n ]\n }\n parametersContent: |\n {\n \"$schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n \"contentVersion\": \"1.0.0.0\",\n \"parameters\": {\n \"policyDefinitionID\": {\n \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n }\n }\n }\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateContent: fs.readFileSync(\"templates/example-deploy-template.json\", \"utf8\"),\n parametersContent: fs.readFileSync(\"templates/example-deploy-params.json\", \"utf8\"),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_content=(lambda path: open(path).read())(\"templates/example-deploy-template.json\"),\n parameters_content=(lambda path: open(path).read())(\"templates/example-deploy-params.json\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateContent = File.ReadAllText(\"templates/example-deploy-template.json\"),\n ParametersContent = File.ReadAllText(\"templates/example-deploy-params.json\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateContent: readFileOrPanic(\"templates/example-deploy-template.json\"),\n\t\t\tParametersContent: readFileOrPanic(\"templates/example-deploy-params.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateContent(Files.readString(Paths.get(\"templates/example-deploy-template.json\")))\n .parametersContent(Files.readString(Paths.get(\"templates/example-deploy-params.json\")))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateContent:\n fn::readFile: templates/example-deploy-template.json\n parametersContent:\n fn::readFile: templates/example-deploy-params.json\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n```\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst exampleGroup = azure.management.getGroup({\n name: \"00000000-0000-0000-0000-000000000000\",\n});\nconst exampleTemplateSpecVersion = azure.core.getTemplateSpecVersion({\n name: \"exampleTemplateForManagementGroup\",\n resourceGroupName: \"exampleResourceGroup\",\n version: \"v1.0.9\",\n});\nconst exampleGroupTemplateDeployment = new azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", {\n location: \"West Europe\",\n managementGroupId: exampleGroup.then(exampleGroup =\u003e exampleGroup.id),\n templateSpecVersionId: exampleTemplateSpecVersion.then(exampleTemplateSpecVersion =\u003e exampleTemplateSpecVersion.id),\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_group = azure.management.get_group(name=\"00000000-0000-0000-0000-000000000000\")\nexample_template_spec_version = azure.core.get_template_spec_version(name=\"exampleTemplateForManagementGroup\",\n resource_group_name=\"exampleResourceGroup\",\n version=\"v1.0.9\")\nexample_group_template_deployment = azure.management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\",\n location=\"West Europe\",\n management_group_id=example_group.id,\n template_spec_version_id=example_template_spec_version.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleGroup = Azure.Management.GetGroup.Invoke(new()\n {\n Name = \"00000000-0000-0000-0000-000000000000\",\n });\n\n var exampleTemplateSpecVersion = Azure.Core.GetTemplateSpecVersion.Invoke(new()\n {\n Name = \"exampleTemplateForManagementGroup\",\n ResourceGroupName = \"exampleResourceGroup\",\n Version = \"v1.0.9\",\n });\n\n var exampleGroupTemplateDeployment = new Azure.Management.GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", new()\n {\n Location = \"West Europe\",\n ManagementGroupId = exampleGroup.Apply(getGroupResult =\u003e getGroupResult.Id),\n TemplateSpecVersionId = exampleTemplateSpecVersion.Apply(getTemplateSpecVersionResult =\u003e getTemplateSpecVersionResult.Id),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleGroup, err := management.LookupGroup(ctx, \u0026management.LookupGroupArgs{\n\t\t\tName: pulumi.StringRef(\"00000000-0000-0000-0000-000000000000\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleTemplateSpecVersion, err := core.GetTemplateSpecVersion(ctx, \u0026core.GetTemplateSpecVersionArgs{\n\t\t\tName: \"exampleTemplateForManagementGroup\",\n\t\t\tResourceGroupName: \"exampleResourceGroup\",\n\t\t\tVersion: \"v1.0.9\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = management.NewGroupTemplateDeployment(ctx, \"exampleGroupTemplateDeployment\", \u0026management.GroupTemplateDeploymentArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tManagementGroupId: *pulumi.String(exampleGroup.Id),\n\t\t\tTemplateSpecVersionId: *pulumi.String(exampleTemplateSpecVersion.Id),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.management.ManagementFunctions;\nimport com.pulumi.azure.management.inputs.GetGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.inputs.GetTemplateSpecVersionArgs;\nimport com.pulumi.azure.management.GroupTemplateDeployment;\nimport com.pulumi.azure.management.GroupTemplateDeploymentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var exampleGroup = ManagementFunctions.getGroup(GetGroupArgs.builder()\n .name(\"00000000-0000-0000-0000-000000000000\")\n .build());\n\n final var exampleTemplateSpecVersion = CoreFunctions.getTemplateSpecVersion(GetTemplateSpecVersionArgs.builder()\n .name(\"exampleTemplateForManagementGroup\")\n .resourceGroupName(\"exampleResourceGroup\")\n .version(\"v1.0.9\")\n .build());\n\n var exampleGroupTemplateDeployment = new GroupTemplateDeployment(\"exampleGroupTemplateDeployment\", GroupTemplateDeploymentArgs.builder() \n .location(\"West Europe\")\n .managementGroupId(exampleGroup.applyValue(getGroupResult -\u003e getGroupResult.id()))\n .templateSpecVersionId(exampleTemplateSpecVersion.applyValue(getTemplateSpecVersionResult -\u003e getTemplateSpecVersionResult.id()))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleGroupTemplateDeployment:\n type: azure:management:GroupTemplateDeployment\n properties:\n location: West Europe\n managementGroupId: ${exampleGroup.id}\n templateSpecVersionId: ${exampleTemplateSpecVersion.id}\nvariables:\n exampleGroup:\n fn::invoke:\n Function: azure:management:getGroup\n Arguments:\n name: 00000000-0000-0000-0000-000000000000\n exampleTemplateSpecVersion:\n fn::invoke:\n Function: azure:core:getTemplateSpecVersion\n Arguments:\n name: exampleTemplateForManagementGroup\n resourceGroupName: exampleResourceGroup\n version: v1.0.9\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nManagement Group Template Deployments can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:management/groupTemplateDeployment:GroupTemplateDeployment example /providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/deploy1\n```\n\n ", "properties": { "debugLevel": { "type": "string", @@ -237715,7 +237715,7 @@ } }, "azure:securitycenter/assessment:Assessment": { - "description": "Manages the Security Center Assessment for Azure Security Center.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n addressSpaces: [\"10.0.0.0/16\"],\n});\nconst internal = new azure.network.Subnet(\"internal\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleLinuxVirtualMachineScaleSet = new azure.compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: \"Standard_F2\",\n instances: 1,\n adminUsername: \"adminuser\",\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\"),\n }],\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n osDisk: {\n storageAccountType: \"Standard_LRS\",\n caching: \"ReadWrite\",\n },\n networkInterfaces: [{\n name: \"example\",\n primary: true,\n ipConfigurations: [{\n name: \"internal\",\n primary: true,\n subnetId: internal.id,\n }],\n }],\n});\nconst exampleAssessmentPolicy = new azure.securitycenter.AssessmentPolicy(\"exampleAssessmentPolicy\", {\n displayName: \"Test Display Name\",\n severity: \"Medium\",\n description: \"Test Description\",\n});\nconst exampleAssessment = new azure.securitycenter.Assessment(\"exampleAssessment\", {\n assessmentPolicyId: exampleAssessmentPolicy.id,\n targetResourceId: exampleLinuxVirtualMachineScaleSet.id,\n status: {\n code: \"Healthy\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n address_spaces=[\"10.0.0.0/16\"])\ninternal = azure.network.Subnet(\"internal\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_linux_virtual_machine_scale_set = azure.compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=\"Standard_F2\",\n instances=1,\n admin_username=\"adminuser\",\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineScaleSetAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n source_image_reference=azure.compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ),\n os_disk=azure.compute.LinuxVirtualMachineScaleSetOsDiskArgs(\n storage_account_type=\"Standard_LRS\",\n caching=\"ReadWrite\",\n ),\n network_interfaces=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs(\n name=\"example\",\n primary=True,\n ip_configurations=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n primary=True,\n subnet_id=internal.id,\n )],\n )])\nexample_assessment_policy = azure.securitycenter.AssessmentPolicy(\"exampleAssessmentPolicy\",\n display_name=\"Test Display Name\",\n severity=\"Medium\",\n description=\"Test Description\")\nexample_assessment = azure.securitycenter.Assessment(\"exampleAssessment\",\n assessment_policy_id=example_assessment_policy.id,\n target_resource_id=example_linux_virtual_machine_scale_set.id,\n status=azure.securitycenter.AssessmentStatusArgs(\n code=\"Healthy\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n });\n\n var @internal = new Azure.Network.Subnet(\"internal\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleLinuxVirtualMachineScaleSet = new Azure.Compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = \"Standard_F2\",\n Instances = 1,\n AdminUsername = \"adminuser\",\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetOsDiskArgs\n {\n StorageAccountType = \"Standard_LRS\",\n Caching = \"ReadWrite\",\n },\n NetworkInterfaces = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs\n {\n Name = \"example\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n Primary = true,\n SubnetId = @internal.Id,\n },\n },\n },\n },\n });\n\n var exampleAssessmentPolicy = new Azure.SecurityCenter.AssessmentPolicy(\"exampleAssessmentPolicy\", new()\n {\n DisplayName = \"Test Display Name\",\n Severity = \"Medium\",\n Description = \"Test Description\",\n });\n\n var exampleAssessment = new Azure.SecurityCenter.Assessment(\"exampleAssessment\", new()\n {\n AssessmentPolicyId = exampleAssessmentPolicy.Id,\n TargetResourceId = exampleLinuxVirtualMachineScaleSet.Id,\n Status = new Azure.SecurityCenter.Inputs.AssessmentStatusArgs\n {\n Code = \"Healthy\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/securitycenter\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinternal, err := network.NewSubnet(ctx, \"internal\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachineScaleSet, err := compute.NewLinuxVirtualMachineScaleSet(ctx, \"exampleLinuxVirtualMachineScaleSet\", \u0026compute.LinuxVirtualMachineScaleSetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: pulumi.String(\"Standard_F2\"),\n\t\t\tInstances: pulumi.Int(1),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineScaleSetAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineScaleSetOsDiskArgs{\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: internal.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAssessmentPolicy, err := securitycenter.NewAssessmentPolicy(ctx, \"exampleAssessmentPolicy\", \u0026securitycenter.AssessmentPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Test Display Name\"),\n\t\t\tSeverity: pulumi.String(\"Medium\"),\n\t\t\tDescription: pulumi.String(\"Test Description\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = securitycenter.NewAssessment(ctx, \"exampleAssessment\", \u0026securitycenter.AssessmentArgs{\n\t\t\tAssessmentPolicyId: exampleAssessmentPolicy.ID(),\n\t\t\tTargetResourceId: exampleLinuxVirtualMachineScaleSet.ID(),\n\t\t\tStatus: \u0026securitycenter.AssessmentStatusArgs{\n\t\t\t\tCode: pulumi.String(\"Healthy\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachineScaleSet;\nimport com.pulumi.azure.compute.LinuxVirtualMachineScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs;\nimport com.pulumi.azure.securitycenter.AssessmentPolicy;\nimport com.pulumi.azure.securitycenter.AssessmentPolicyArgs;\nimport com.pulumi.azure.securitycenter.Assessment;\nimport com.pulumi.azure.securitycenter.AssessmentArgs;\nimport com.pulumi.azure.securitycenter.inputs.AssessmentStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .addressSpaces(\"10.0.0.0/16\")\n .build());\n\n var internal = new Subnet(\"internal\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleLinuxVirtualMachineScaleSet = new LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", LinuxVirtualMachineScaleSetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(\"Standard_F2\")\n .instances(1)\n .adminUsername(\"adminuser\")\n .adminSshKeys(LinuxVirtualMachineScaleSetAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .sourceImageReference(LinuxVirtualMachineScaleSetSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .osDisk(LinuxVirtualMachineScaleSetOsDiskArgs.builder()\n .storageAccountType(\"Standard_LRS\")\n .caching(\"ReadWrite\")\n .build())\n .networkInterfaces(LinuxVirtualMachineScaleSetNetworkInterfaceArgs.builder()\n .name(\"example\")\n .primary(true)\n .ipConfigurations(LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .primary(true)\n .subnetId(internal.id())\n .build())\n .build())\n .build());\n\n var exampleAssessmentPolicy = new AssessmentPolicy(\"exampleAssessmentPolicy\", AssessmentPolicyArgs.builder() \n .displayName(\"Test Display Name\")\n .severity(\"Medium\")\n .description(\"Test Description\")\n .build());\n\n var exampleAssessment = new Assessment(\"exampleAssessment\", AssessmentArgs.builder() \n .assessmentPolicyId(exampleAssessmentPolicy.id())\n .targetResourceId(exampleLinuxVirtualMachineScaleSet.id())\n .status(AssessmentStatusArgs.builder()\n .code(\"Healthy\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n addressSpaces:\n - 10.0.0.0/16\n internal:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleLinuxVirtualMachineScaleSet:\n type: azure:compute:LinuxVirtualMachineScaleSet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n sku: Standard_F2\n instances: 1\n adminUsername: adminuser\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n osDisk:\n storageAccountType: Standard_LRS\n caching: ReadWrite\n networkInterfaces:\n - name: example\n primary: true\n ipConfigurations:\n - name: internal\n primary: true\n subnetId: ${internal.id}\n exampleAssessmentPolicy:\n type: azure:securitycenter:AssessmentPolicy\n properties:\n displayName: Test Display Name\n severity: Medium\n description: Test Description\n exampleAssessment:\n type: azure:securitycenter:Assessment\n properties:\n assessmentPolicyId: ${exampleAssessmentPolicy.id}\n targetResourceId: ${exampleLinuxVirtualMachineScaleSet.id}\n status:\n code: Healthy\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSecurity Assessment can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:securitycenter/assessment:Assessment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/00000000-0000-0000-0000-000000000000\n```\n\n ", + "description": "Manages the Security Center Assessment for Azure Security Center.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n addressSpaces: [\"10.0.0.0/16\"],\n});\nconst internal = new azure.network.Subnet(\"internal\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n});\nconst exampleLinuxVirtualMachineScaleSet = new azure.compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: \"Standard_F2\",\n instances: 1,\n adminUsername: \"adminuser\",\n adminSshKeys: [{\n username: \"adminuser\",\n publicKey: fs.readFileSync(\"~/.ssh/id_rsa.pub\", \"utf8\"),\n }],\n sourceImageReference: {\n publisher: \"Canonical\",\n offer: \"0001-com-ubuntu-server-jammy\",\n sku: \"22_04-lts\",\n version: \"latest\",\n },\n osDisk: {\n storageAccountType: \"Standard_LRS\",\n caching: \"ReadWrite\",\n },\n networkInterfaces: [{\n name: \"example\",\n primary: true,\n ipConfigurations: [{\n name: \"internal\",\n primary: true,\n subnetId: internal.id,\n }],\n }],\n});\nconst exampleAssessmentPolicy = new azure.securitycenter.AssessmentPolicy(\"exampleAssessmentPolicy\", {\n displayName: \"Test Display Name\",\n severity: \"Medium\",\n description: \"Test Description\",\n});\nconst exampleAssessment = new azure.securitycenter.Assessment(\"exampleAssessment\", {\n assessmentPolicyId: exampleAssessmentPolicy.id,\n targetResourceId: exampleLinuxVirtualMachineScaleSet.id,\n status: {\n code: \"Healthy\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n address_spaces=[\"10.0.0.0/16\"])\ninternal = azure.network.Subnet(\"internal\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"])\nexample_linux_virtual_machine_scale_set = azure.compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=\"Standard_F2\",\n instances=1,\n admin_username=\"adminuser\",\n admin_ssh_keys=[azure.compute.LinuxVirtualMachineScaleSetAdminSshKeyArgs(\n username=\"adminuser\",\n public_key=(lambda path: open(path).read())(\"~/.ssh/id_rsa.pub\"),\n )],\n source_image_reference=azure.compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs(\n publisher=\"Canonical\",\n offer=\"0001-com-ubuntu-server-jammy\",\n sku=\"22_04-lts\",\n version=\"latest\",\n ),\n os_disk=azure.compute.LinuxVirtualMachineScaleSetOsDiskArgs(\n storage_account_type=\"Standard_LRS\",\n caching=\"ReadWrite\",\n ),\n network_interfaces=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs(\n name=\"example\",\n primary=True,\n ip_configurations=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs(\n name=\"internal\",\n primary=True,\n subnet_id=internal.id,\n )],\n )])\nexample_assessment_policy = azure.securitycenter.AssessmentPolicy(\"exampleAssessmentPolicy\",\n display_name=\"Test Display Name\",\n severity=\"Medium\",\n description=\"Test Description\")\nexample_assessment = azure.securitycenter.Assessment(\"exampleAssessment\",\n assessment_policy_id=example_assessment_policy.id,\n target_resource_id=example_linux_virtual_machine_scale_set.id,\n status=azure.securitycenter.AssessmentStatusArgs(\n code=\"Healthy\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n });\n\n var @internal = new Azure.Network.Subnet(\"internal\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n });\n\n var exampleLinuxVirtualMachineScaleSet = new Azure.Compute.LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = \"Standard_F2\",\n Instances = 1,\n AdminUsername = \"adminuser\",\n AdminSshKeys = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetAdminSshKeyArgs\n {\n Username = \"adminuser\",\n PublicKey = File.ReadAllText(\"~/.ssh/id_rsa.pub\"),\n },\n },\n SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs\n {\n Publisher = \"Canonical\",\n Offer = \"0001-com-ubuntu-server-jammy\",\n Sku = \"22_04-lts\",\n Version = \"latest\",\n },\n OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetOsDiskArgs\n {\n StorageAccountType = \"Standard_LRS\",\n Caching = \"ReadWrite\",\n },\n NetworkInterfaces = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs\n {\n Name = \"example\",\n Primary = true,\n IpConfigurations = new[]\n {\n new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs\n {\n Name = \"internal\",\n Primary = true,\n SubnetId = @internal.Id,\n },\n },\n },\n },\n });\n\n var exampleAssessmentPolicy = new Azure.SecurityCenter.AssessmentPolicy(\"exampleAssessmentPolicy\", new()\n {\n DisplayName = \"Test Display Name\",\n Severity = \"Medium\",\n Description = \"Test Description\",\n });\n\n var exampleAssessment = new Azure.SecurityCenter.Assessment(\"exampleAssessment\", new()\n {\n AssessmentPolicyId = exampleAssessmentPolicy.Id,\n TargetResourceId = exampleLinuxVirtualMachineScaleSet.Id,\n Status = new Azure.SecurityCenter.Inputs.AssessmentStatusArgs\n {\n Code = \"Healthy\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/securitycenter\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc readFileOrPanic(path string) pulumi.StringPtrInput {\n\tdata, err := os.ReadFile(path)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\treturn pulumi.String(string(data))\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinternal, err := network.NewSubnet(ctx, \"internal\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleLinuxVirtualMachineScaleSet, err := compute.NewLinuxVirtualMachineScaleSet(ctx, \"exampleLinuxVirtualMachineScaleSet\", \u0026compute.LinuxVirtualMachineScaleSetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: pulumi.String(\"Standard_F2\"),\n\t\t\tInstances: pulumi.Int(1),\n\t\t\tAdminUsername: pulumi.String(\"adminuser\"),\n\t\t\tAdminSshKeys: compute.LinuxVirtualMachineScaleSetAdminSshKeyArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetAdminSshKeyArgs{\n\t\t\t\t\tUsername: pulumi.String(\"adminuser\"),\n\t\t\t\t\tPublicKey: readFileOrPanic(\"~/.ssh/id_rsa.pub\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSourceImageReference: \u0026compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"Canonical\"),\n\t\t\t\tOffer: pulumi.String(\"0001-com-ubuntu-server-jammy\"),\n\t\t\t\tSku: pulumi.String(\"22_04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tOsDisk: \u0026compute.LinuxVirtualMachineScaleSetOsDiskArgs{\n\t\t\t\tStorageAccountType: pulumi.String(\"Standard_LRS\"),\n\t\t\t\tCaching: pulumi.String(\"ReadWrite\"),\n\t\t\t},\n\t\t\tNetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{\n\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{\n\t\t\t\t\tName: pulumi.String(\"example\"),\n\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\tIpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{\n\t\t\t\t\t\t\u0026compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"internal\"),\n\t\t\t\t\t\t\tPrimary: pulumi.Bool(true),\n\t\t\t\t\t\t\tSubnetId: internal.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAssessmentPolicy, err := securitycenter.NewAssessmentPolicy(ctx, \"exampleAssessmentPolicy\", \u0026securitycenter.AssessmentPolicyArgs{\n\t\t\tDisplayName: pulumi.String(\"Test Display Name\"),\n\t\t\tSeverity: pulumi.String(\"Medium\"),\n\t\t\tDescription: pulumi.String(\"Test Description\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = securitycenter.NewAssessment(ctx, \"exampleAssessment\", \u0026securitycenter.AssessmentArgs{\n\t\t\tAssessmentPolicyId: exampleAssessmentPolicy.ID(),\n\t\t\tTargetResourceId: exampleLinuxVirtualMachineScaleSet.ID(),\n\t\t\tStatus: \u0026securitycenter.AssessmentStatusArgs{\n\t\t\t\tCode: pulumi.String(\"Healthy\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.compute.LinuxVirtualMachineScaleSet;\nimport com.pulumi.azure.compute.LinuxVirtualMachineScaleSetArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetAdminSshKeyArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetOsDiskArgs;\nimport com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs;\nimport com.pulumi.azure.securitycenter.AssessmentPolicy;\nimport com.pulumi.azure.securitycenter.AssessmentPolicyArgs;\nimport com.pulumi.azure.securitycenter.Assessment;\nimport com.pulumi.azure.securitycenter.AssessmentArgs;\nimport com.pulumi.azure.securitycenter.inputs.AssessmentStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .addressSpaces(\"10.0.0.0/16\")\n .build());\n\n var internal = new Subnet(\"internal\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .build());\n\n var exampleLinuxVirtualMachineScaleSet = new LinuxVirtualMachineScaleSet(\"exampleLinuxVirtualMachineScaleSet\", LinuxVirtualMachineScaleSetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(\"Standard_F2\")\n .instances(1)\n .adminUsername(\"adminuser\")\n .adminSshKeys(LinuxVirtualMachineScaleSetAdminSshKeyArgs.builder()\n .username(\"adminuser\")\n .publicKey(Files.readString(Paths.get(\"~/.ssh/id_rsa.pub\")))\n .build())\n .sourceImageReference(LinuxVirtualMachineScaleSetSourceImageReferenceArgs.builder()\n .publisher(\"Canonical\")\n .offer(\"0001-com-ubuntu-server-jammy\")\n .sku(\"22_04-lts\")\n .version(\"latest\")\n .build())\n .osDisk(LinuxVirtualMachineScaleSetOsDiskArgs.builder()\n .storageAccountType(\"Standard_LRS\")\n .caching(\"ReadWrite\")\n .build())\n .networkInterfaces(LinuxVirtualMachineScaleSetNetworkInterfaceArgs.builder()\n .name(\"example\")\n .primary(true)\n .ipConfigurations(LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs.builder()\n .name(\"internal\")\n .primary(true)\n .subnetId(internal.id())\n .build())\n .build())\n .build());\n\n var exampleAssessmentPolicy = new AssessmentPolicy(\"exampleAssessmentPolicy\", AssessmentPolicyArgs.builder() \n .displayName(\"Test Display Name\")\n .severity(\"Medium\")\n .description(\"Test Description\")\n .build());\n\n var exampleAssessment = new Assessment(\"exampleAssessment\", AssessmentArgs.builder() \n .assessmentPolicyId(exampleAssessmentPolicy.id())\n .targetResourceId(exampleLinuxVirtualMachineScaleSet.id())\n .status(AssessmentStatusArgs.builder()\n .code(\"Healthy\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleVirtualNetwork:\n type: azure:network:VirtualNetwork\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n addressSpaces:\n - 10.0.0.0/16\n internal:\n type: azure:network:Subnet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n virtualNetworkName: ${exampleVirtualNetwork.name}\n addressPrefixes:\n - 10.0.2.0/24\n exampleLinuxVirtualMachineScaleSet:\n type: azure:compute:LinuxVirtualMachineScaleSet\n properties:\n resourceGroupName: ${exampleResourceGroup.name}\n location: ${exampleResourceGroup.location}\n sku: Standard_F2\n instances: 1\n adminUsername: adminuser\n adminSshKeys:\n - username: adminuser\n publicKey:\n fn::readFile: ~/.ssh/id_rsa.pub\n sourceImageReference:\n publisher: Canonical\n offer: 0001-com-ubuntu-server-jammy\n sku: 22_04-lts\n version: latest\n osDisk:\n storageAccountType: Standard_LRS\n caching: ReadWrite\n networkInterfaces:\n - name: example\n primary: true\n ipConfigurations:\n - name: internal\n primary: true\n subnetId: ${internal.id}\n exampleAssessmentPolicy:\n type: azure:securitycenter:AssessmentPolicy\n properties:\n displayName: Test Display Name\n severity: Medium\n description: Test Description\n exampleAssessment:\n type: azure:securitycenter:Assessment\n properties:\n assessmentPolicyId: ${exampleAssessmentPolicy.id}\n targetResourceId: ${exampleLinuxVirtualMachineScaleSet.id}\n status:\n code: Healthy\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nSecurity Assessment can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:securitycenter/assessment:Assessment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/00000000-0000-0000-0000-000000000000\n```\n\n ", "properties": { "additionalData": { "type": "object", diff --git a/provider/go.mod b/provider/go.mod index 52a6f61c88..defbb99ae3 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -7,8 +7,8 @@ require ( github.com/hashicorp/go-azure-sdk v0.20231129.1103252 github.com/hashicorp/terraform-plugin-sdk/v2 v2.29.0 github.com/hashicorp/terraform-provider-azurerm v1.44.1-0.20220923005104-eaa801c358ff - github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.0 - github.com/pulumi/pulumi/sdk/v3 v3.94.2 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.1-0.20231204224533-c47194b0897b + github.com/pulumi/pulumi/sdk/v3 v3.95.0 github.com/stretchr/testify v1.8.4 ) @@ -155,7 +155,7 @@ require ( github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.19 // indirect github.com/mattn/go-localereader v0.0.1 // indirect - github.com/mattn/go-runewidth v0.0.14 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect github.com/mitchellh/cli v1.1.5 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect @@ -167,14 +167,15 @@ require ( github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect github.com/muesli/cancelreader v0.2.2 // indirect github.com/muesli/reflow v0.3.0 // indirect - github.com/muesli/termenv v0.15.1 // indirect + github.com/muesli/termenv v0.15.2 // indirect github.com/natefinch/atomic v1.0.1 // indirect github.com/oklog/run v1.1.0 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect github.com/pjbgf/sha1cd v0.3.0 // indirect @@ -182,11 +183,12 @@ require ( github.com/pkg/term v1.1.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/posener/complete v1.2.3 // indirect - github.com/pulumi/esc v0.6.0 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 // indirect github.com/pulumi/pulumi-java/pkg v0.9.8 // indirect github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 // indirect - github.com/pulumi/pulumi-yaml v1.4.2 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.94.2 // indirect + github.com/pulumi/pulumi-yaml v1.4.3 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.95.0 // indirect github.com/pulumi/schema-tools v0.1.2 // indirect github.com/pulumi/terraform-diff-reader v0.0.2 // indirect github.com/rickb777/date v1.12.5-0.20200422084442-6300e543c4d9 // indirect @@ -225,17 +227,17 @@ require ( go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.27.0 // indirect gocloud.dev/secrets/hashivault v0.27.0 // indirect - golang.org/x/crypto v0.14.0 // indirect - golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect - golang.org/x/mod v0.13.0 // indirect - golang.org/x/net v0.17.0 // indirect + golang.org/x/crypto v0.15.0 // indirect + golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect + golang.org/x/mod v0.14.0 // indirect + golang.org/x/net v0.18.0 // indirect golang.org/x/oauth2 v0.12.0 // indirect - golang.org/x/sync v0.4.0 // indirect - golang.org/x/sys v0.13.0 // indirect - golang.org/x/term v0.13.0 // indirect - golang.org/x/text v0.13.0 // indirect + golang.org/x/sync v0.5.0 // indirect + golang.org/x/sys v0.14.0 // indirect + golang.org/x/term v0.14.0 // indirect + golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.3.0 // indirect - golang.org/x/tools v0.14.0 // indirect + golang.org/x/tools v0.15.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.126.0 // indirect google.golang.org/appengine v1.6.8 // indirect @@ -249,5 +251,4 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect software.sslmate.com/src/go-pkcs12 v0.2.1 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 // indirect ) diff --git a/provider/go.sum b/provider/go.sum index 58b0f33a6f..cda3a1f40f 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1900,8 +1900,8 @@ github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+Ei github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= -github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU= -github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= +github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= @@ -1982,14 +1982,14 @@ github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJ github.com/montanaflynn/stats v0.6.6/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= -github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b h1:1XF24mVaiu7u+CFywTdcDo2ie1pzzhwjt6RHqzpMU34= -github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b/go.mod h1:fQuZ0gauxyBcmsdE3ZT4NasjaRdxmbCS0jRHsrWu3Ho= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= -github.com/muesli/termenv v0.15.1 h1:UzuTb/+hhlBugQz28rpzey4ZuKcZ03MeKsoG7IJZIxs= -github.com/muesli/termenv v0.15.1/go.mod h1:HeAQPTzpfs016yGtA4g00CsdYnVLJvxsS4ANqrZs2sQ= +github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= +github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= @@ -2092,6 +2092,8 @@ github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrap github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= +github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= +github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386/go.mod h1:MRxHTJrf9FhdfNQ8Hdeh9gmHevC9RJE/fu8M3JIGjoE= github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY= @@ -2182,22 +2184,24 @@ github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1 github.com/prometheus/prometheus v0.35.0/go.mod h1:7HaLx5kEPKJ0GDgbODG0fZgXbQ8K/XjZNJXQmbmgQlY= github.com/prometheus/prometheus v0.37.0/go.mod h1:egARUgz+K93zwqsVIAneFlLZefyGOON44WyAp4Xqbbk= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= -github.com/pulumi/esc v0.6.0 h1:m8jWgBektlj26RvrN3/sM0r1lYiwTMmqVPvLxCxahGE= -github.com/pulumi/esc v0.6.0/go.mod h1:Y6W21yUukvxS2NnS5ae1beMSPhMvj0xNAYcDqDHVj/g= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= +github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 h1:1DJMji9F7XPea46bSuhy4/85n8J4/Mfz8PWLZtjKKiI= +github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5/go.mod h1:Y6W21yUukvxS2NnS5ae1beMSPhMvj0xNAYcDqDHVj/g= github.com/pulumi/pulumi-java/pkg v0.9.8 h1:c8mYsalnRXA2Ibgvv6scefOn6mW1Vb0UT0mcDqjsivQ= github.com/pulumi/pulumi-java/pkg v0.9.8/go.mod h1:c6rSw/+q4O0IImgJ9axxoC6QesbPYWBaG5gimbHouUQ= github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1 h1:SCg1gjfY9N4yn8U8peIUYATifjoDABkyR7H9lmefsfc= github.com/pulumi/pulumi-terraform-bridge/testing v0.0.1/go.mod h1:7OeUPH8rpt5ipyj9EFcnXpuzQ8SHL0dyqdfa8nOacdk= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.0 h1:1U5n9Xzh+BPf4/5x7EvaopwtsTvpP/RZ8FVUTE5IN5I= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.0/go.mod h1:1ZnUBM2KMg/JHgFn5tN/OrwRmgdJIGQ1uWs758CmdGY= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.1-0.20231204224533-c47194b0897b h1:EdYcQxCsQ/xQAcFl2l/LY2yfetPt/hHCqQ2dFYNAMlw= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.66.1-0.20231204224533-c47194b0897b/go.mod h1:m+XOZQff8d64SLZTfI3VhDOtVhu9KTsjQIx9Thvc/MU= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 h1:rIzMmtcVpPX8ynaz6/nW5AHNY63DiNfCohqmxWvMpM4= github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4/go.mod h1:Kt8RIZWa/N8rW3+0g6NrqCBmF3o+HuIhFaZpssEkG6w= -github.com/pulumi/pulumi-yaml v1.4.2 h1:LKptNH2lG6f5IjJmR7bvu7ouBE4sgkTRNd4I8ZHmjHw= -github.com/pulumi/pulumi-yaml v1.4.2/go.mod h1:1hwsXFnT7hm2ZeftY5fzjkngjs2eT/rv9MsPE48Leb4= -github.com/pulumi/pulumi/pkg/v3 v3.94.2 h1:b+gQ+EJZMYfSIu/sb/+p36VmfZ2ZJWbEWMsptt2f6Kk= -github.com/pulumi/pulumi/pkg/v3 v3.94.2/go.mod h1:aCeDMlncyDwX3RG6+vYUjWsy6bOEtoHUY0twCcn5qqE= -github.com/pulumi/pulumi/sdk/v3 v3.94.2 h1:B8W3CCzA2fX/0730o/7KQXdmqrY5KdgGtiAA6rDMVlk= -github.com/pulumi/pulumi/sdk/v3 v3.94.2/go.mod h1:zeqyIODqbb6GrEyhFV6aJET/xBSXSnF7Bw/EjbYZUnU= +github.com/pulumi/pulumi-yaml v1.4.3 h1:GO36c7FTl8If20Dn/w2Hi3huP7kmsO00KNaz3GJU0Ws= +github.com/pulumi/pulumi-yaml v1.4.3/go.mod h1:1hwsXFnT7hm2ZeftY5fzjkngjs2eT/rv9MsPE48Leb4= +github.com/pulumi/pulumi/pkg/v3 v3.95.0 h1:FBA0EmjRaqUgzleFMpLSAQUojXH2PyIVERzAm53p63U= +github.com/pulumi/pulumi/pkg/v3 v3.95.0/go.mod h1:4mjOPC8lb49ihR/HbGmid0y9GFlpfP9Orumr0wFOGno= +github.com/pulumi/pulumi/sdk/v3 v3.95.0 h1:SBpFZYdbVF8DtmiEosut2BRVRjLxPpcQf5bOkyPWosQ= +github.com/pulumi/pulumi/sdk/v3 v3.95.0/go.mod h1:xzyBCCPSyLSqOVyfwlaXIS7FqxpiGyLcOOWCzBF7ZKY= github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo= github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= @@ -2591,8 +2595,8 @@ golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= -golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc= -golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= +golang.org/x/crypto v0.15.0 h1:frVn1TEaCEaZcn3Tmd7Y2b5KKPaZ+I32Q2OA3kYp5TA= +golang.org/x/crypto v0.15.0/go.mod h1:4ChreQoLWfG3xLDer1WdlH5NdlQ3+mwnQq1YTKY+72g= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2608,8 +2612,8 @@ golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE= -golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI= -golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE= golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= @@ -2655,8 +2659,8 @@ golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.13.0 h1:I/DsJXRlw/8l/0c24sM9yb0T4z9liZTduXvdAWYiysY= -golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= +golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -2753,8 +2757,8 @@ golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= -golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= -golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/net v0.18.0 h1:mIYleuAkSbHh0tCv7RvjL3F6ZVbLjq4+R7zbOn3Kokg= +golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2808,8 +2812,8 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.4.0 h1:zxkM55ReGkDlKSM+Fu41A+zmbZuaPVbGMzvvdUPznYQ= -golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= +golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -2970,8 +2974,8 @@ golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.14.0 h1:Vz7Qs629MkJkGyHxUlRHizWJRG2j8fbQKjELVSNhy7Q= +golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -2988,8 +2992,8 @@ golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= -golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek= -golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= +golang.org/x/term v0.14.0 h1:LGK9IlZ8T9jvdy6cTdfKUCltatMFOehAQo9SRC46UQ8= +golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -3007,8 +3011,9 @@ golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= -golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -3117,8 +3122,8 @@ golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= -golang.org/x/tools v0.14.0 h1:jvNa2pY0M4r62jkRQ6RwEZZyPcymeL9XZMLBbV7U2nc= -golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg= +golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= +golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -3631,5 +3636,3 @@ sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= software.sslmate.com/src/go-pkcs12 v0.2.1 h1:tbT1jjaeFOF230tzOIRJ6U5S1jNqpsSyNjzDd58H3J8= software.sslmate.com/src/go-pkcs12 v0.2.1/go.mod h1:Qiz0EyvDRJjjxGyUQa2cCNZn/wMyzrRJ/qcDXOQazLI= sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 h1:hfyJ5ku9yFtLVOiSxa3IN+dx5eBQT9mPmKFypAmg8XM= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= diff --git a/sdk/go.mod b/sdk/go.mod index 141cd174ed..f37d7111e1 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -4,7 +4,7 @@ go 1.21 require ( github.com/blang/semver v3.5.1+incompatible - github.com/pulumi/pulumi/sdk/v3 v3.94.2 + github.com/pulumi/pulumi/sdk/v3 v3.95.0 ) require ( @@ -52,9 +52,11 @@ require ( github.com/muesli/termenv v0.15.1 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect github.com/pjbgf/sha1cd v0.3.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect + github.com/pulumi/appdash v0.0.0-20231130102013-538fec2a741d // indirect github.com/pulumi/esc v0.5.6 // indirect github.com/rivo/uniseg v0.4.4 // indirect github.com/rogpeppe/go-internal v1.11.0 // indirect @@ -89,5 +91,4 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect pgregory.net/rapid v0.6.1 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 // indirect ) diff --git a/sdk/go.sum b/sdk/go.sum index 9ff49715ac..6ddca29238 100644 --- a/sdk/go.sum +++ b/sdk/go.sum @@ -137,6 +137,8 @@ github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS6 github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= +github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= +github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= @@ -145,10 +147,12 @@ github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk= github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pulumi/appdash v0.0.0-20231130102013-538fec2a741d h1:dRSCMm3Eme0AaQzFo8IJlGXjn7eqiB+BmpvIG5A9edA= +github.com/pulumi/appdash v0.0.0-20231130102013-538fec2a741d/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= github.com/pulumi/esc v0.5.6 h1:4WV3X7OEVcChIwbSG+JxhZDdmq/q7lFPaSjHRYlPwmI= github.com/pulumi/esc v0.5.6/go.mod h1:wpwNfVS5fV7Kd51j4dJ6FWYlKfxdqyppgp0gtkzqH04= -github.com/pulumi/pulumi/sdk/v3 v3.94.2 h1:B8W3CCzA2fX/0730o/7KQXdmqrY5KdgGtiAA6rDMVlk= -github.com/pulumi/pulumi/sdk/v3 v3.94.2/go.mod h1:zeqyIODqbb6GrEyhFV6aJET/xBSXSnF7Bw/EjbYZUnU= +github.com/pulumi/pulumi/sdk/v3 v3.95.0 h1:SBpFZYdbVF8DtmiEosut2BRVRjLxPpcQf5bOkyPWosQ= +github.com/pulumi/pulumi/sdk/v3 v3.95.0/go.mod h1:xzyBCCPSyLSqOVyfwlaXIS7FqxpiGyLcOOWCzBF7ZKY= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= @@ -316,5 +320,3 @@ lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= pgregory.net/rapid v0.6.1 h1:4eyrDxyht86tT4Ztm+kvlyNBLIk071gR+ZQdhphc9dQ= pgregory.net/rapid v0.6.1/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 h1:hfyJ5ku9yFtLVOiSxa3IN+dx5eBQT9mPmKFypAmg8XM= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=