package Ġio . kot less . gen . factory . azure . file sc ont ent Ċ Ċ import Ġio . kot less . Application Ċ import Ġio . kot less . resource . Lambda Ċ import Ġio . terraform kt . az ur erm . data . storage .* Ċ import Ġio . terraform kt . az ur erm . resource . storage . Storage Container Ċ import Ġio . terraform kt . h cl . ref Ċ Ċ object ĠLambda Description Ġ{ ĊĠĠĠ Ġfun Ġbody ( lambda : ĠLambda ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" script File " Ġ: Ġ"../ ${ lambda . file . name }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" entry Point " Ġ: Ġ"${ lambda . entrypoint . qualified Name }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" bindings " Ġ: Ġ[ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" type " Ġ: Ġ" http Trigger ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" direction " Ġ: Ġ" in ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" name " Ġ: Ġ" req ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" methods " Ġ: Ġ[ Ġ" GET ", Ġ" POST " Ġ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" auth Level " Ġ: Ġ" AN ONY MO US " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" type " Ġ: Ġ" http ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" direction " Ġ: Ġ" out ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" name " Ġ: Ġ"${ '$ '} return " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent (). replace (" \"", Ġ"\\ \"" ). replace ("\ n ", Ġ"") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġproxy ( lambda Path : ĠString , Ġdynamic Route : ĠApplication . Api Gateway . Dynamic Route , Ġfunction AppName : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ dynamic Route . path }_ route ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" match Condition ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" route ": Ġ"${ dynamic Route . path }" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" request Overrides ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" backend . request . headers . x - original - path ": Ġ"/ ${ dynamic Route . path }" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" backend Uri ": Ġ" https ://${ function AppName }. azure websites . net /${ lambda Path }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent (). replace (" \"", Ġ"\\ \"" ). replace ("\ n ", Ġ"") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġhost () Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" version ": Ġ" 2 . 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" extension Bundle ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" id ": Ġ" Microsoft . Azure . Functions . Extension Bundle ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" version ": Ġ"[ 1 .*, Ġ 2 . 0 . 0 )" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" extensions ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" http ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" route Prefix ": Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent (). replace (" \"", Ġ"\\ \"" ). replace ("\ n ", Ġ"") ĊĊĠĠĠ Ġfun Ġlocal Settings () Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Is Encrypted ": Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Values ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Azure Web Jobs Storage ": Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" FUNCTION S _ WORK ER _ RUNTIME ": Ġ" java " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent (). replace (" \"", Ġ"\\ \"" ). replace ("\ n ", Ġ"") ĊĊĠĠĠ Ġfun Ġstatic Route ( static Route : ĠApplication . Api Gateway . Static Route , Ġstorage Account : ĠStorage Account , Ġstorage Container : ĠStorage Container , Ġblob Name : ĠString ) Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ static Route . path } ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" match Condition ": Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" route ": Ġ"${ static Route . path }" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" backend Uri ": Ġ" https ://${ storage Account :: name . ref }. blob . core . windows . net /${ storage Container :: name . ref }/${ blob Name }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent (). replace (" \"", Ġ"\\ \"" ). replace ("\ n ", Ġ"") Ċ } Ċ