api.go 74 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package cloudformation provides a client for AWS CloudFormation.
  3. package cloudformation
  4. import (
  5. "time"
  6. "github.com/aws/aws-sdk-go/aws/awsutil"
  7. "github.com/aws/aws-sdk-go/aws/request"
  8. )
  9. const opCancelUpdateStack = "CancelUpdateStack"
  10. // CancelUpdateStackRequest generates a request for the CancelUpdateStack operation.
  11. func (c *CloudFormation) CancelUpdateStackRequest(input *CancelUpdateStackInput) (req *request.Request, output *CancelUpdateStackOutput) {
  12. op := &request.Operation{
  13. Name: opCancelUpdateStack,
  14. HTTPMethod: "POST",
  15. HTTPPath: "/",
  16. }
  17. if input == nil {
  18. input = &CancelUpdateStackInput{}
  19. }
  20. req = c.newRequest(op, input, output)
  21. output = &CancelUpdateStackOutput{}
  22. req.Data = output
  23. return
  24. }
  25. // Cancels an update on the specified stack. If the call completes successfully,
  26. // the stack will roll back the update and revert to the previous stack configuration.
  27. //
  28. // Only stacks that are in the UPDATE_IN_PROGRESS state can be canceled.
  29. func (c *CloudFormation) CancelUpdateStack(input *CancelUpdateStackInput) (*CancelUpdateStackOutput, error) {
  30. req, out := c.CancelUpdateStackRequest(input)
  31. err := req.Send()
  32. return out, err
  33. }
  34. const opCreateStack = "CreateStack"
  35. // CreateStackRequest generates a request for the CreateStack operation.
  36. func (c *CloudFormation) CreateStackRequest(input *CreateStackInput) (req *request.Request, output *CreateStackOutput) {
  37. op := &request.Operation{
  38. Name: opCreateStack,
  39. HTTPMethod: "POST",
  40. HTTPPath: "/",
  41. }
  42. if input == nil {
  43. input = &CreateStackInput{}
  44. }
  45. req = c.newRequest(op, input, output)
  46. output = &CreateStackOutput{}
  47. req.Data = output
  48. return
  49. }
  50. // Creates a stack as specified in the template. After the call completes successfully,
  51. // the stack creation starts. You can check the status of the stack via the
  52. // DescribeStacks API.
  53. func (c *CloudFormation) CreateStack(input *CreateStackInput) (*CreateStackOutput, error) {
  54. req, out := c.CreateStackRequest(input)
  55. err := req.Send()
  56. return out, err
  57. }
  58. const opDeleteStack = "DeleteStack"
  59. // DeleteStackRequest generates a request for the DeleteStack operation.
  60. func (c *CloudFormation) DeleteStackRequest(input *DeleteStackInput) (req *request.Request, output *DeleteStackOutput) {
  61. op := &request.Operation{
  62. Name: opDeleteStack,
  63. HTTPMethod: "POST",
  64. HTTPPath: "/",
  65. }
  66. if input == nil {
  67. input = &DeleteStackInput{}
  68. }
  69. req = c.newRequest(op, input, output)
  70. output = &DeleteStackOutput{}
  71. req.Data = output
  72. return
  73. }
  74. // Deletes a specified stack. Once the call completes successfully, stack deletion
  75. // starts. Deleted stacks do not show up in the DescribeStacks API if the deletion
  76. // has been completed successfully.
  77. func (c *CloudFormation) DeleteStack(input *DeleteStackInput) (*DeleteStackOutput, error) {
  78. req, out := c.DeleteStackRequest(input)
  79. err := req.Send()
  80. return out, err
  81. }
  82. const opDescribeStackEvents = "DescribeStackEvents"
  83. // DescribeStackEventsRequest generates a request for the DescribeStackEvents operation.
  84. func (c *CloudFormation) DescribeStackEventsRequest(input *DescribeStackEventsInput) (req *request.Request, output *DescribeStackEventsOutput) {
  85. op := &request.Operation{
  86. Name: opDescribeStackEvents,
  87. HTTPMethod: "POST",
  88. HTTPPath: "/",
  89. Paginator: &request.Paginator{
  90. InputTokens: []string{"NextToken"},
  91. OutputTokens: []string{"NextToken"},
  92. LimitToken: "",
  93. TruncationToken: "",
  94. },
  95. }
  96. if input == nil {
  97. input = &DescribeStackEventsInput{}
  98. }
  99. req = c.newRequest(op, input, output)
  100. output = &DescribeStackEventsOutput{}
  101. req.Data = output
  102. return
  103. }
  104. // Returns all stack related events for a specified stack. For more information
  105. // about a stack's event history, go to Stacks (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/concept-stack.html)
  106. // in the AWS CloudFormation User Guide.
  107. //
  108. // You can list events for stacks that have failed to create or have been deleted
  109. // by specifying the unique stack identifier (stack ID).
  110. func (c *CloudFormation) DescribeStackEvents(input *DescribeStackEventsInput) (*DescribeStackEventsOutput, error) {
  111. req, out := c.DescribeStackEventsRequest(input)
  112. err := req.Send()
  113. return out, err
  114. }
  115. func (c *CloudFormation) DescribeStackEventsPages(input *DescribeStackEventsInput, fn func(p *DescribeStackEventsOutput, lastPage bool) (shouldContinue bool)) error {
  116. page, _ := c.DescribeStackEventsRequest(input)
  117. return page.EachPage(func(p interface{}, lastPage bool) bool {
  118. return fn(p.(*DescribeStackEventsOutput), lastPage)
  119. })
  120. }
  121. const opDescribeStackResource = "DescribeStackResource"
  122. // DescribeStackResourceRequest generates a request for the DescribeStackResource operation.
  123. func (c *CloudFormation) DescribeStackResourceRequest(input *DescribeStackResourceInput) (req *request.Request, output *DescribeStackResourceOutput) {
  124. op := &request.Operation{
  125. Name: opDescribeStackResource,
  126. HTTPMethod: "POST",
  127. HTTPPath: "/",
  128. }
  129. if input == nil {
  130. input = &DescribeStackResourceInput{}
  131. }
  132. req = c.newRequest(op, input, output)
  133. output = &DescribeStackResourceOutput{}
  134. req.Data = output
  135. return
  136. }
  137. // Returns a description of the specified resource in the specified stack.
  138. //
  139. // For deleted stacks, DescribeStackResource returns resource information for
  140. // up to 90 days after the stack has been deleted.
  141. func (c *CloudFormation) DescribeStackResource(input *DescribeStackResourceInput) (*DescribeStackResourceOutput, error) {
  142. req, out := c.DescribeStackResourceRequest(input)
  143. err := req.Send()
  144. return out, err
  145. }
  146. const opDescribeStackResources = "DescribeStackResources"
  147. // DescribeStackResourcesRequest generates a request for the DescribeStackResources operation.
  148. func (c *CloudFormation) DescribeStackResourcesRequest(input *DescribeStackResourcesInput) (req *request.Request, output *DescribeStackResourcesOutput) {
  149. op := &request.Operation{
  150. Name: opDescribeStackResources,
  151. HTTPMethod: "POST",
  152. HTTPPath: "/",
  153. }
  154. if input == nil {
  155. input = &DescribeStackResourcesInput{}
  156. }
  157. req = c.newRequest(op, input, output)
  158. output = &DescribeStackResourcesOutput{}
  159. req.Data = output
  160. return
  161. }
  162. // Returns AWS resource descriptions for running and deleted stacks. If StackName
  163. // is specified, all the associated resources that are part of the stack are
  164. // returned. If PhysicalResourceId is specified, the associated resources of
  165. // the stack that the resource belongs to are returned.
  166. //
  167. // Only the first 100 resources will be returned. If your stack has more resources
  168. // than this, you should use ListStackResources instead. For deleted stacks,
  169. // DescribeStackResources returns resource information for up to 90 days after
  170. // the stack has been deleted.
  171. //
  172. // You must specify either StackName or PhysicalResourceId, but not both. In
  173. // addition, you can specify LogicalResourceId to filter the returned result.
  174. // For more information about resources, the LogicalResourceId and PhysicalResourceId,
  175. // go to the AWS CloudFormation User Guide (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide).
  176. //
  177. // A ValidationError is returned if you specify both StackName and PhysicalResourceId
  178. // in the same request.
  179. func (c *CloudFormation) DescribeStackResources(input *DescribeStackResourcesInput) (*DescribeStackResourcesOutput, error) {
  180. req, out := c.DescribeStackResourcesRequest(input)
  181. err := req.Send()
  182. return out, err
  183. }
  184. const opDescribeStacks = "DescribeStacks"
  185. // DescribeStacksRequest generates a request for the DescribeStacks operation.
  186. func (c *CloudFormation) DescribeStacksRequest(input *DescribeStacksInput) (req *request.Request, output *DescribeStacksOutput) {
  187. op := &request.Operation{
  188. Name: opDescribeStacks,
  189. HTTPMethod: "POST",
  190. HTTPPath: "/",
  191. Paginator: &request.Paginator{
  192. InputTokens: []string{"NextToken"},
  193. OutputTokens: []string{"NextToken"},
  194. LimitToken: "",
  195. TruncationToken: "",
  196. },
  197. }
  198. if input == nil {
  199. input = &DescribeStacksInput{}
  200. }
  201. req = c.newRequest(op, input, output)
  202. output = &DescribeStacksOutput{}
  203. req.Data = output
  204. return
  205. }
  206. // Returns the description for the specified stack; if no stack name was specified,
  207. // then it returns the description for all the stacks created.
  208. func (c *CloudFormation) DescribeStacks(input *DescribeStacksInput) (*DescribeStacksOutput, error) {
  209. req, out := c.DescribeStacksRequest(input)
  210. err := req.Send()
  211. return out, err
  212. }
  213. func (c *CloudFormation) DescribeStacksPages(input *DescribeStacksInput, fn func(p *DescribeStacksOutput, lastPage bool) (shouldContinue bool)) error {
  214. page, _ := c.DescribeStacksRequest(input)
  215. return page.EachPage(func(p interface{}, lastPage bool) bool {
  216. return fn(p.(*DescribeStacksOutput), lastPage)
  217. })
  218. }
  219. const opEstimateTemplateCost = "EstimateTemplateCost"
  220. // EstimateTemplateCostRequest generates a request for the EstimateTemplateCost operation.
  221. func (c *CloudFormation) EstimateTemplateCostRequest(input *EstimateTemplateCostInput) (req *request.Request, output *EstimateTemplateCostOutput) {
  222. op := &request.Operation{
  223. Name: opEstimateTemplateCost,
  224. HTTPMethod: "POST",
  225. HTTPPath: "/",
  226. }
  227. if input == nil {
  228. input = &EstimateTemplateCostInput{}
  229. }
  230. req = c.newRequest(op, input, output)
  231. output = &EstimateTemplateCostOutput{}
  232. req.Data = output
  233. return
  234. }
  235. // Returns the estimated monthly cost of a template. The return value is an
  236. // AWS Simple Monthly Calculator URL with a query string that describes the
  237. // resources required to run the template.
  238. func (c *CloudFormation) EstimateTemplateCost(input *EstimateTemplateCostInput) (*EstimateTemplateCostOutput, error) {
  239. req, out := c.EstimateTemplateCostRequest(input)
  240. err := req.Send()
  241. return out, err
  242. }
  243. const opGetStackPolicy = "GetStackPolicy"
  244. // GetStackPolicyRequest generates a request for the GetStackPolicy operation.
  245. func (c *CloudFormation) GetStackPolicyRequest(input *GetStackPolicyInput) (req *request.Request, output *GetStackPolicyOutput) {
  246. op := &request.Operation{
  247. Name: opGetStackPolicy,
  248. HTTPMethod: "POST",
  249. HTTPPath: "/",
  250. }
  251. if input == nil {
  252. input = &GetStackPolicyInput{}
  253. }
  254. req = c.newRequest(op, input, output)
  255. output = &GetStackPolicyOutput{}
  256. req.Data = output
  257. return
  258. }
  259. // Returns the stack policy for a specified stack. If a stack doesn't have a
  260. // policy, a null value is returned.
  261. func (c *CloudFormation) GetStackPolicy(input *GetStackPolicyInput) (*GetStackPolicyOutput, error) {
  262. req, out := c.GetStackPolicyRequest(input)
  263. err := req.Send()
  264. return out, err
  265. }
  266. const opGetTemplate = "GetTemplate"
  267. // GetTemplateRequest generates a request for the GetTemplate operation.
  268. func (c *CloudFormation) GetTemplateRequest(input *GetTemplateInput) (req *request.Request, output *GetTemplateOutput) {
  269. op := &request.Operation{
  270. Name: opGetTemplate,
  271. HTTPMethod: "POST",
  272. HTTPPath: "/",
  273. }
  274. if input == nil {
  275. input = &GetTemplateInput{}
  276. }
  277. req = c.newRequest(op, input, output)
  278. output = &GetTemplateOutput{}
  279. req.Data = output
  280. return
  281. }
  282. // Returns the template body for a specified stack. You can get the template
  283. // for running or deleted stacks.
  284. //
  285. // For deleted stacks, GetTemplate returns the template for up to 90 days after
  286. // the stack has been deleted.
  287. //
  288. // If the template does not exist, a ValidationError is returned.
  289. func (c *CloudFormation) GetTemplate(input *GetTemplateInput) (*GetTemplateOutput, error) {
  290. req, out := c.GetTemplateRequest(input)
  291. err := req.Send()
  292. return out, err
  293. }
  294. const opGetTemplateSummary = "GetTemplateSummary"
  295. // GetTemplateSummaryRequest generates a request for the GetTemplateSummary operation.
  296. func (c *CloudFormation) GetTemplateSummaryRequest(input *GetTemplateSummaryInput) (req *request.Request, output *GetTemplateSummaryOutput) {
  297. op := &request.Operation{
  298. Name: opGetTemplateSummary,
  299. HTTPMethod: "POST",
  300. HTTPPath: "/",
  301. }
  302. if input == nil {
  303. input = &GetTemplateSummaryInput{}
  304. }
  305. req = c.newRequest(op, input, output)
  306. output = &GetTemplateSummaryOutput{}
  307. req.Data = output
  308. return
  309. }
  310. // Returns information about a new or existing template. The GetTemplateSummary
  311. // action is useful for viewing parameter information, such as default parameter
  312. // values and parameter types, before you create or update a stack.
  313. //
  314. // You can use the GetTemplateSummary action when you submit a template, or
  315. // you can get template information for a running or deleted stack.
  316. //
  317. // For deleted stacks, GetTemplateSummary returns the template information
  318. // for up to 90 days after the stack has been deleted. If the template does
  319. // not exist, a ValidationError is returned.
  320. func (c *CloudFormation) GetTemplateSummary(input *GetTemplateSummaryInput) (*GetTemplateSummaryOutput, error) {
  321. req, out := c.GetTemplateSummaryRequest(input)
  322. err := req.Send()
  323. return out, err
  324. }
  325. const opListStackResources = "ListStackResources"
  326. // ListStackResourcesRequest generates a request for the ListStackResources operation.
  327. func (c *CloudFormation) ListStackResourcesRequest(input *ListStackResourcesInput) (req *request.Request, output *ListStackResourcesOutput) {
  328. op := &request.Operation{
  329. Name: opListStackResources,
  330. HTTPMethod: "POST",
  331. HTTPPath: "/",
  332. Paginator: &request.Paginator{
  333. InputTokens: []string{"NextToken"},
  334. OutputTokens: []string{"NextToken"},
  335. LimitToken: "",
  336. TruncationToken: "",
  337. },
  338. }
  339. if input == nil {
  340. input = &ListStackResourcesInput{}
  341. }
  342. req = c.newRequest(op, input, output)
  343. output = &ListStackResourcesOutput{}
  344. req.Data = output
  345. return
  346. }
  347. // Returns descriptions of all resources of the specified stack.
  348. //
  349. // For deleted stacks, ListStackResources returns resource information for
  350. // up to 90 days after the stack has been deleted.
  351. func (c *CloudFormation) ListStackResources(input *ListStackResourcesInput) (*ListStackResourcesOutput, error) {
  352. req, out := c.ListStackResourcesRequest(input)
  353. err := req.Send()
  354. return out, err
  355. }
  356. func (c *CloudFormation) ListStackResourcesPages(input *ListStackResourcesInput, fn func(p *ListStackResourcesOutput, lastPage bool) (shouldContinue bool)) error {
  357. page, _ := c.ListStackResourcesRequest(input)
  358. return page.EachPage(func(p interface{}, lastPage bool) bool {
  359. return fn(p.(*ListStackResourcesOutput), lastPage)
  360. })
  361. }
  362. const opListStacks = "ListStacks"
  363. // ListStacksRequest generates a request for the ListStacks operation.
  364. func (c *CloudFormation) ListStacksRequest(input *ListStacksInput) (req *request.Request, output *ListStacksOutput) {
  365. op := &request.Operation{
  366. Name: opListStacks,
  367. HTTPMethod: "POST",
  368. HTTPPath: "/",
  369. Paginator: &request.Paginator{
  370. InputTokens: []string{"NextToken"},
  371. OutputTokens: []string{"NextToken"},
  372. LimitToken: "",
  373. TruncationToken: "",
  374. },
  375. }
  376. if input == nil {
  377. input = &ListStacksInput{}
  378. }
  379. req = c.newRequest(op, input, output)
  380. output = &ListStacksOutput{}
  381. req.Data = output
  382. return
  383. }
  384. // Returns the summary information for stacks whose status matches the specified
  385. // StackStatusFilter. Summary information for stacks that have been deleted
  386. // is kept for 90 days after the stack is deleted. If no StackStatusFilter is
  387. // specified, summary information for all stacks is returned (including existing
  388. // stacks and stacks that have been deleted).
  389. func (c *CloudFormation) ListStacks(input *ListStacksInput) (*ListStacksOutput, error) {
  390. req, out := c.ListStacksRequest(input)
  391. err := req.Send()
  392. return out, err
  393. }
  394. func (c *CloudFormation) ListStacksPages(input *ListStacksInput, fn func(p *ListStacksOutput, lastPage bool) (shouldContinue bool)) error {
  395. page, _ := c.ListStacksRequest(input)
  396. return page.EachPage(func(p interface{}, lastPage bool) bool {
  397. return fn(p.(*ListStacksOutput), lastPage)
  398. })
  399. }
  400. const opSetStackPolicy = "SetStackPolicy"
  401. // SetStackPolicyRequest generates a request for the SetStackPolicy operation.
  402. func (c *CloudFormation) SetStackPolicyRequest(input *SetStackPolicyInput) (req *request.Request, output *SetStackPolicyOutput) {
  403. op := &request.Operation{
  404. Name: opSetStackPolicy,
  405. HTTPMethod: "POST",
  406. HTTPPath: "/",
  407. }
  408. if input == nil {
  409. input = &SetStackPolicyInput{}
  410. }
  411. req = c.newRequest(op, input, output)
  412. output = &SetStackPolicyOutput{}
  413. req.Data = output
  414. return
  415. }
  416. // Sets a stack policy for a specified stack.
  417. func (c *CloudFormation) SetStackPolicy(input *SetStackPolicyInput) (*SetStackPolicyOutput, error) {
  418. req, out := c.SetStackPolicyRequest(input)
  419. err := req.Send()
  420. return out, err
  421. }
  422. const opSignalResource = "SignalResource"
  423. // SignalResourceRequest generates a request for the SignalResource operation.
  424. func (c *CloudFormation) SignalResourceRequest(input *SignalResourceInput) (req *request.Request, output *SignalResourceOutput) {
  425. op := &request.Operation{
  426. Name: opSignalResource,
  427. HTTPMethod: "POST",
  428. HTTPPath: "/",
  429. }
  430. if input == nil {
  431. input = &SignalResourceInput{}
  432. }
  433. req = c.newRequest(op, input, output)
  434. output = &SignalResourceOutput{}
  435. req.Data = output
  436. return
  437. }
  438. // Sends a signal to the specified resource with a success or failure status.
  439. // You can use the SignalResource API in conjunction with a creation policy
  440. // or update policy. AWS CloudFormation doesn't proceed with a stack creation
  441. // or update until resources receive the required number of signals or the timeout
  442. // period is exceeded. The SignalResource API is useful in cases where you want
  443. // to send signals from anywhere other than an Amazon EC2 instance.
  444. func (c *CloudFormation) SignalResource(input *SignalResourceInput) (*SignalResourceOutput, error) {
  445. req, out := c.SignalResourceRequest(input)
  446. err := req.Send()
  447. return out, err
  448. }
  449. const opUpdateStack = "UpdateStack"
  450. // UpdateStackRequest generates a request for the UpdateStack operation.
  451. func (c *CloudFormation) UpdateStackRequest(input *UpdateStackInput) (req *request.Request, output *UpdateStackOutput) {
  452. op := &request.Operation{
  453. Name: opUpdateStack,
  454. HTTPMethod: "POST",
  455. HTTPPath: "/",
  456. }
  457. if input == nil {
  458. input = &UpdateStackInput{}
  459. }
  460. req = c.newRequest(op, input, output)
  461. output = &UpdateStackOutput{}
  462. req.Data = output
  463. return
  464. }
  465. // Updates a stack as specified in the template. After the call completes successfully,
  466. // the stack update starts. You can check the status of the stack via the DescribeStacks
  467. // action.
  468. //
  469. // To get a copy of the template for an existing stack, you can use the GetTemplate
  470. // action.
  471. //
  472. // Tags that were associated with this stack during creation time will still
  473. // be associated with the stack after an UpdateStack operation.
  474. //
  475. // For more information about creating an update template, updating a stack,
  476. // and monitoring the progress of the update, see Updating a Stack (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).
  477. func (c *CloudFormation) UpdateStack(input *UpdateStackInput) (*UpdateStackOutput, error) {
  478. req, out := c.UpdateStackRequest(input)
  479. err := req.Send()
  480. return out, err
  481. }
  482. const opValidateTemplate = "ValidateTemplate"
  483. // ValidateTemplateRequest generates a request for the ValidateTemplate operation.
  484. func (c *CloudFormation) ValidateTemplateRequest(input *ValidateTemplateInput) (req *request.Request, output *ValidateTemplateOutput) {
  485. op := &request.Operation{
  486. Name: opValidateTemplate,
  487. HTTPMethod: "POST",
  488. HTTPPath: "/",
  489. }
  490. if input == nil {
  491. input = &ValidateTemplateInput{}
  492. }
  493. req = c.newRequest(op, input, output)
  494. output = &ValidateTemplateOutput{}
  495. req.Data = output
  496. return
  497. }
  498. // Validates a specified template.
  499. func (c *CloudFormation) ValidateTemplate(input *ValidateTemplateInput) (*ValidateTemplateOutput, error) {
  500. req, out := c.ValidateTemplateRequest(input)
  501. err := req.Send()
  502. return out, err
  503. }
  504. // The input for CancelUpdateStack action.
  505. type CancelUpdateStackInput struct {
  506. // The name or the unique stack ID that is associated with the stack.
  507. StackName *string `type:"string" required:"true"`
  508. metadataCancelUpdateStackInput `json:"-" xml:"-"`
  509. }
  510. type metadataCancelUpdateStackInput struct {
  511. SDKShapeTraits bool `type:"structure"`
  512. }
  513. // String returns the string representation
  514. func (s CancelUpdateStackInput) String() string {
  515. return awsutil.Prettify(s)
  516. }
  517. // GoString returns the string representation
  518. func (s CancelUpdateStackInput) GoString() string {
  519. return s.String()
  520. }
  521. type CancelUpdateStackOutput struct {
  522. metadataCancelUpdateStackOutput `json:"-" xml:"-"`
  523. }
  524. type metadataCancelUpdateStackOutput struct {
  525. SDKShapeTraits bool `type:"structure"`
  526. }
  527. // String returns the string representation
  528. func (s CancelUpdateStackOutput) String() string {
  529. return awsutil.Prettify(s)
  530. }
  531. // GoString returns the string representation
  532. func (s CancelUpdateStackOutput) GoString() string {
  533. return s.String()
  534. }
  535. // The input for CreateStack action.
  536. type CreateStackInput struct {
  537. // A list of capabilities that you must specify before AWS CloudFormation can
  538. // create or update certain stacks. Some stack templates might include resources
  539. // that can affect permissions in your AWS account. For those stacks, you must
  540. // explicitly acknowledge their capabilities by specifying this parameter.
  541. //
  542. // Currently, the only valid value is CAPABILITY_IAM, which is required for
  543. // the following resources: AWS::IAM::AccessKey (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html),
  544. // AWS::IAM::Group (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html),
  545. // AWS::IAM::InstanceProfile (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html),
  546. // AWS::IAM::Policy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html),
  547. // AWS::IAM::Role (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html),
  548. // AWS::IAM::User (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html),
  549. // and AWS::IAM::UserToGroupAddition (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html).
  550. // If your stack template contains these resources, we recommend that you review
  551. // any permissions associated with them. If you don't specify this parameter,
  552. // this action returns an InsufficientCapabilities error.
  553. Capabilities []*string `type:"list"`
  554. // Set to true to disable rollback of the stack if stack creation failed. You
  555. // can specify either DisableRollback or OnFailure, but not both.
  556. //
  557. // Default: false
  558. DisableRollback *bool `type:"boolean"`
  559. // The Simple Notification Service (SNS) topic ARNs to publish stack related
  560. // events. You can find your SNS topic ARNs using the SNS console (http://console.aws.amazon.com/sns)
  561. // or your Command Line Interface (CLI).
  562. NotificationARNs []*string `type:"list"`
  563. // Determines what action will be taken if stack creation fails. This must be
  564. // one of: DO_NOTHING, ROLLBACK, or DELETE. You can specify either OnFailure
  565. // or DisableRollback, but not both.
  566. //
  567. // Default: ROLLBACK
  568. OnFailure *string `type:"string" enum:"OnFailure"`
  569. // A list of Parameter structures that specify input parameters for the stack.
  570. Parameters []*Parameter `type:"list"`
  571. // The name that is associated with the stack. The name must be unique in the
  572. // region in which you are creating the stack.
  573. //
  574. // A stack name can contain only alphanumeric characters (case sensitive) and
  575. // hyphens. It must start with an alphabetic character and cannot be longer
  576. // than 255 characters.
  577. StackName *string `type:"string" required:"true"`
  578. // Structure containing the stack policy body. For more information, go to
  579. // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html)
  580. // in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody
  581. // or the StackPolicyURL parameter, but not both.
  582. StackPolicyBody *string `type:"string"`
  583. // Location of a file containing the stack policy. The URL must point to a policy
  584. // (max size: 16KB) located in an S3 bucket in the same region as the stack.
  585. // You can specify either the StackPolicyBody or the StackPolicyURL parameter,
  586. // but not both.
  587. StackPolicyURL *string `type:"string"`
  588. // A set of user-defined Tags to associate with this stack, represented by key/value
  589. // pairs. Tags defined for the stack are propagated to EC2 resources that are
  590. // created as part of the stack. A maximum number of 10 tags can be specified.
  591. Tags []*Tag `type:"list"`
  592. // Structure containing the template body with a minimum length of 1 byte and
  593. // a maximum length of 51,200 bytes. For more information, go to Template Anatomy
  594. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  595. // in the AWS CloudFormation User Guide.
  596. //
  597. // Conditional: You must specify either the TemplateBody or the TemplateURL
  598. // parameter, but not both.
  599. TemplateBody *string `type:"string"`
  600. // Location of file containing the template body. The URL must point to a template
  601. // (max size: 460,800 bytes) located in an S3 bucket in the same region as the
  602. // stack. For more information, go to the Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  603. // in the AWS CloudFormation User Guide.
  604. //
  605. // Conditional: You must specify either the TemplateBody or the TemplateURL
  606. // parameter, but not both.
  607. TemplateURL *string `type:"string"`
  608. // The amount of time that can pass before the stack status becomes CREATE_FAILED;
  609. // if DisableRollback is not set or is set to false, the stack will be rolled
  610. // back.
  611. TimeoutInMinutes *int64 `type:"integer"`
  612. metadataCreateStackInput `json:"-" xml:"-"`
  613. }
  614. type metadataCreateStackInput struct {
  615. SDKShapeTraits bool `type:"structure"`
  616. }
  617. // String returns the string representation
  618. func (s CreateStackInput) String() string {
  619. return awsutil.Prettify(s)
  620. }
  621. // GoString returns the string representation
  622. func (s CreateStackInput) GoString() string {
  623. return s.String()
  624. }
  625. // The output for a CreateStack action.
  626. type CreateStackOutput struct {
  627. // Unique identifier of the stack.
  628. StackId *string `type:"string"`
  629. metadataCreateStackOutput `json:"-" xml:"-"`
  630. }
  631. type metadataCreateStackOutput struct {
  632. SDKShapeTraits bool `type:"structure"`
  633. }
  634. // String returns the string representation
  635. func (s CreateStackOutput) String() string {
  636. return awsutil.Prettify(s)
  637. }
  638. // GoString returns the string representation
  639. func (s CreateStackOutput) GoString() string {
  640. return s.String()
  641. }
  642. // The input for DeleteStack action.
  643. type DeleteStackInput struct {
  644. // The name or the unique stack ID that is associated with the stack.
  645. StackName *string `type:"string" required:"true"`
  646. metadataDeleteStackInput `json:"-" xml:"-"`
  647. }
  648. type metadataDeleteStackInput struct {
  649. SDKShapeTraits bool `type:"structure"`
  650. }
  651. // String returns the string representation
  652. func (s DeleteStackInput) String() string {
  653. return awsutil.Prettify(s)
  654. }
  655. // GoString returns the string representation
  656. func (s DeleteStackInput) GoString() string {
  657. return s.String()
  658. }
  659. type DeleteStackOutput struct {
  660. metadataDeleteStackOutput `json:"-" xml:"-"`
  661. }
  662. type metadataDeleteStackOutput struct {
  663. SDKShapeTraits bool `type:"structure"`
  664. }
  665. // String returns the string representation
  666. func (s DeleteStackOutput) String() string {
  667. return awsutil.Prettify(s)
  668. }
  669. // GoString returns the string representation
  670. func (s DeleteStackOutput) GoString() string {
  671. return s.String()
  672. }
  673. // The input for DescribeStackEvents action.
  674. type DescribeStackEventsInput struct {
  675. // String that identifies the start of the next list of events, if there is
  676. // one.
  677. //
  678. // Default: There is no default value.
  679. NextToken *string `type:"string"`
  680. // The name or the unique stack ID that is associated with the stack, which
  681. // are not always interchangeable:
  682. //
  683. // Running stacks: You can specify either the stack's name or its unique stack
  684. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  685. // is no default value.
  686. StackName *string `type:"string"`
  687. metadataDescribeStackEventsInput `json:"-" xml:"-"`
  688. }
  689. type metadataDescribeStackEventsInput struct {
  690. SDKShapeTraits bool `type:"structure"`
  691. }
  692. // String returns the string representation
  693. func (s DescribeStackEventsInput) String() string {
  694. return awsutil.Prettify(s)
  695. }
  696. // GoString returns the string representation
  697. func (s DescribeStackEventsInput) GoString() string {
  698. return s.String()
  699. }
  700. // The output for a DescribeStackEvents action.
  701. type DescribeStackEventsOutput struct {
  702. // String that identifies the start of the next list of events, if there is
  703. // one.
  704. NextToken *string `type:"string"`
  705. // A list of StackEvents structures.
  706. StackEvents []*StackEvent `type:"list"`
  707. metadataDescribeStackEventsOutput `json:"-" xml:"-"`
  708. }
  709. type metadataDescribeStackEventsOutput struct {
  710. SDKShapeTraits bool `type:"structure"`
  711. }
  712. // String returns the string representation
  713. func (s DescribeStackEventsOutput) String() string {
  714. return awsutil.Prettify(s)
  715. }
  716. // GoString returns the string representation
  717. func (s DescribeStackEventsOutput) GoString() string {
  718. return s.String()
  719. }
  720. // The input for DescribeStackResource action.
  721. type DescribeStackResourceInput struct {
  722. // The logical name of the resource as specified in the template.
  723. //
  724. // Default: There is no default value.
  725. LogicalResourceId *string `type:"string" required:"true"`
  726. // The name or the unique stack ID that is associated with the stack, which
  727. // are not always interchangeable:
  728. //
  729. // Running stacks: You can specify either the stack's name or its unique stack
  730. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  731. // is no default value.
  732. StackName *string `type:"string" required:"true"`
  733. metadataDescribeStackResourceInput `json:"-" xml:"-"`
  734. }
  735. type metadataDescribeStackResourceInput struct {
  736. SDKShapeTraits bool `type:"structure"`
  737. }
  738. // String returns the string representation
  739. func (s DescribeStackResourceInput) String() string {
  740. return awsutil.Prettify(s)
  741. }
  742. // GoString returns the string representation
  743. func (s DescribeStackResourceInput) GoString() string {
  744. return s.String()
  745. }
  746. // The output for a DescribeStackResource action.
  747. type DescribeStackResourceOutput struct {
  748. // A StackResourceDetail structure containing the description of the specified
  749. // resource in the specified stack.
  750. StackResourceDetail *StackResourceDetail `type:"structure"`
  751. metadataDescribeStackResourceOutput `json:"-" xml:"-"`
  752. }
  753. type metadataDescribeStackResourceOutput struct {
  754. SDKShapeTraits bool `type:"structure"`
  755. }
  756. // String returns the string representation
  757. func (s DescribeStackResourceOutput) String() string {
  758. return awsutil.Prettify(s)
  759. }
  760. // GoString returns the string representation
  761. func (s DescribeStackResourceOutput) GoString() string {
  762. return s.String()
  763. }
  764. // The input for DescribeStackResources action.
  765. type DescribeStackResourcesInput struct {
  766. // The logical name of the resource as specified in the template.
  767. //
  768. // Default: There is no default value.
  769. LogicalResourceId *string `type:"string"`
  770. // The name or unique identifier that corresponds to a physical instance ID
  771. // of a resource supported by AWS CloudFormation.
  772. //
  773. // For example, for an Amazon Elastic Compute Cloud (EC2) instance, PhysicalResourceId
  774. // corresponds to the InstanceId. You can pass the EC2 InstanceId to DescribeStackResources
  775. // to find which stack the instance belongs to and what other resources are
  776. // part of the stack.
  777. //
  778. // Required: Conditional. If you do not specify PhysicalResourceId, you must
  779. // specify StackName.
  780. //
  781. // Default: There is no default value.
  782. PhysicalResourceId *string `type:"string"`
  783. // The name or the unique stack ID that is associated with the stack, which
  784. // are not always interchangeable:
  785. //
  786. // Running stacks: You can specify either the stack's name or its unique stack
  787. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  788. // is no default value.
  789. //
  790. // Required: Conditional. If you do not specify StackName, you must specify
  791. // PhysicalResourceId.
  792. StackName *string `type:"string"`
  793. metadataDescribeStackResourcesInput `json:"-" xml:"-"`
  794. }
  795. type metadataDescribeStackResourcesInput struct {
  796. SDKShapeTraits bool `type:"structure"`
  797. }
  798. // String returns the string representation
  799. func (s DescribeStackResourcesInput) String() string {
  800. return awsutil.Prettify(s)
  801. }
  802. // GoString returns the string representation
  803. func (s DescribeStackResourcesInput) GoString() string {
  804. return s.String()
  805. }
  806. // The output for a DescribeStackResources action.
  807. type DescribeStackResourcesOutput struct {
  808. // A list of StackResource structures.
  809. StackResources []*StackResource `type:"list"`
  810. metadataDescribeStackResourcesOutput `json:"-" xml:"-"`
  811. }
  812. type metadataDescribeStackResourcesOutput struct {
  813. SDKShapeTraits bool `type:"structure"`
  814. }
  815. // String returns the string representation
  816. func (s DescribeStackResourcesOutput) String() string {
  817. return awsutil.Prettify(s)
  818. }
  819. // GoString returns the string representation
  820. func (s DescribeStackResourcesOutput) GoString() string {
  821. return s.String()
  822. }
  823. // The input for DescribeStacks action.
  824. type DescribeStacksInput struct {
  825. // String that identifies the start of the next list of stacks, if there is
  826. // one.
  827. NextToken *string `type:"string"`
  828. // The name or the unique stack ID that is associated with the stack, which
  829. // are not always interchangeable:
  830. //
  831. // Running stacks: You can specify either the stack's name or its unique stack
  832. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  833. // is no default value.
  834. StackName *string `type:"string"`
  835. metadataDescribeStacksInput `json:"-" xml:"-"`
  836. }
  837. type metadataDescribeStacksInput struct {
  838. SDKShapeTraits bool `type:"structure"`
  839. }
  840. // String returns the string representation
  841. func (s DescribeStacksInput) String() string {
  842. return awsutil.Prettify(s)
  843. }
  844. // GoString returns the string representation
  845. func (s DescribeStacksInput) GoString() string {
  846. return s.String()
  847. }
  848. // The output for a DescribeStacks action.
  849. type DescribeStacksOutput struct {
  850. // String that identifies the start of the next list of stacks, if there is
  851. // one.
  852. NextToken *string `type:"string"`
  853. // A list of stack structures.
  854. Stacks []*Stack `type:"list"`
  855. metadataDescribeStacksOutput `json:"-" xml:"-"`
  856. }
  857. type metadataDescribeStacksOutput struct {
  858. SDKShapeTraits bool `type:"structure"`
  859. }
  860. // String returns the string representation
  861. func (s DescribeStacksOutput) String() string {
  862. return awsutil.Prettify(s)
  863. }
  864. // GoString returns the string representation
  865. func (s DescribeStacksOutput) GoString() string {
  866. return s.String()
  867. }
  868. type EstimateTemplateCostInput struct {
  869. // A list of Parameter structures that specify input parameters.
  870. Parameters []*Parameter `type:"list"`
  871. // Structure containing the template body with a minimum length of 1 byte and
  872. // a maximum length of 51,200 bytes. (For more information, go to Template Anatomy
  873. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  874. // in the AWS CloudFormation User Guide.)
  875. //
  876. // Conditional: You must pass TemplateBody or TemplateURL. If both are passed,
  877. // only TemplateBody is used.
  878. TemplateBody *string `type:"string"`
  879. // Location of file containing the template body. The URL must point to a template
  880. // located in an S3 bucket in the same region as the stack. For more information,
  881. // go to Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  882. // in the AWS CloudFormation User Guide.
  883. //
  884. // Conditional: You must pass TemplateURL or TemplateBody. If both are passed,
  885. // only TemplateBody is used.
  886. TemplateURL *string `type:"string"`
  887. metadataEstimateTemplateCostInput `json:"-" xml:"-"`
  888. }
  889. type metadataEstimateTemplateCostInput struct {
  890. SDKShapeTraits bool `type:"structure"`
  891. }
  892. // String returns the string representation
  893. func (s EstimateTemplateCostInput) String() string {
  894. return awsutil.Prettify(s)
  895. }
  896. // GoString returns the string representation
  897. func (s EstimateTemplateCostInput) GoString() string {
  898. return s.String()
  899. }
  900. // The output for a EstimateTemplateCost action.
  901. type EstimateTemplateCostOutput struct {
  902. // An AWS Simple Monthly Calculator URL with a query string that describes the
  903. // resources required to run the template.
  904. Url *string `type:"string"`
  905. metadataEstimateTemplateCostOutput `json:"-" xml:"-"`
  906. }
  907. type metadataEstimateTemplateCostOutput struct {
  908. SDKShapeTraits bool `type:"structure"`
  909. }
  910. // String returns the string representation
  911. func (s EstimateTemplateCostOutput) String() string {
  912. return awsutil.Prettify(s)
  913. }
  914. // GoString returns the string representation
  915. func (s EstimateTemplateCostOutput) GoString() string {
  916. return s.String()
  917. }
  918. // The input for the GetStackPolicy action.
  919. type GetStackPolicyInput struct {
  920. // The name or unique stack ID that is associated with the stack whose policy
  921. // you want to get.
  922. StackName *string `type:"string" required:"true"`
  923. metadataGetStackPolicyInput `json:"-" xml:"-"`
  924. }
  925. type metadataGetStackPolicyInput struct {
  926. SDKShapeTraits bool `type:"structure"`
  927. }
  928. // String returns the string representation
  929. func (s GetStackPolicyInput) String() string {
  930. return awsutil.Prettify(s)
  931. }
  932. // GoString returns the string representation
  933. func (s GetStackPolicyInput) GoString() string {
  934. return s.String()
  935. }
  936. // The output for the GetStackPolicy action.
  937. type GetStackPolicyOutput struct {
  938. // Structure containing the stack policy body. (For more information, go to
  939. // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html)
  940. // in the AWS CloudFormation User Guide.)
  941. StackPolicyBody *string `type:"string"`
  942. metadataGetStackPolicyOutput `json:"-" xml:"-"`
  943. }
  944. type metadataGetStackPolicyOutput struct {
  945. SDKShapeTraits bool `type:"structure"`
  946. }
  947. // String returns the string representation
  948. func (s GetStackPolicyOutput) String() string {
  949. return awsutil.Prettify(s)
  950. }
  951. // GoString returns the string representation
  952. func (s GetStackPolicyOutput) GoString() string {
  953. return s.String()
  954. }
  955. // The input for a GetTemplate action.
  956. type GetTemplateInput struct {
  957. // The name or the unique stack ID that is associated with the stack, which
  958. // are not always interchangeable:
  959. //
  960. // Running stacks: You can specify either the stack's name or its unique stack
  961. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  962. // is no default value.
  963. StackName *string `type:"string" required:"true"`
  964. metadataGetTemplateInput `json:"-" xml:"-"`
  965. }
  966. type metadataGetTemplateInput struct {
  967. SDKShapeTraits bool `type:"structure"`
  968. }
  969. // String returns the string representation
  970. func (s GetTemplateInput) String() string {
  971. return awsutil.Prettify(s)
  972. }
  973. // GoString returns the string representation
  974. func (s GetTemplateInput) GoString() string {
  975. return s.String()
  976. }
  977. // The output for GetTemplate action.
  978. type GetTemplateOutput struct {
  979. // Structure containing the template body. (For more information, go to Template
  980. // Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  981. // in the AWS CloudFormation User Guide.)
  982. TemplateBody *string `type:"string"`
  983. metadataGetTemplateOutput `json:"-" xml:"-"`
  984. }
  985. type metadataGetTemplateOutput struct {
  986. SDKShapeTraits bool `type:"structure"`
  987. }
  988. // String returns the string representation
  989. func (s GetTemplateOutput) String() string {
  990. return awsutil.Prettify(s)
  991. }
  992. // GoString returns the string representation
  993. func (s GetTemplateOutput) GoString() string {
  994. return s.String()
  995. }
  996. // The input for the GetTemplateSummary action.
  997. type GetTemplateSummaryInput struct {
  998. // The name or the stack ID that is associated with the stack, which are not
  999. // always interchangeable. For running stacks, you can specify either the stack's
  1000. // name or its unique stack ID. For deleted stack, you must specify the unique
  1001. // stack ID.
  1002. //
  1003. // Conditional: You must specify only one of the following parameters: StackName,
  1004. // TemplateBody, or TemplateURL.
  1005. StackName *string `type:"string"`
  1006. // Structure containing the template body with a minimum length of 1 byte and
  1007. // a maximum length of 51,200 bytes. For more information about templates, see
  1008. // Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1009. // in the AWS CloudFormation User Guide.
  1010. //
  1011. // Conditional: You must specify only one of the following parameters: StackName,
  1012. // TemplateBody, or TemplateURL.
  1013. TemplateBody *string `type:"string"`
  1014. // Location of file containing the template body. The URL must point to a template
  1015. // (max size: 460,800 bytes) located in an Amazon S3 bucket. For more information
  1016. // about templates, see Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1017. // in the AWS CloudFormation User Guide.
  1018. //
  1019. // Conditional: You must specify only one of the following parameters: StackName,
  1020. // TemplateBody, or TemplateURL.
  1021. TemplateURL *string `type:"string"`
  1022. metadataGetTemplateSummaryInput `json:"-" xml:"-"`
  1023. }
  1024. type metadataGetTemplateSummaryInput struct {
  1025. SDKShapeTraits bool `type:"structure"`
  1026. }
  1027. // String returns the string representation
  1028. func (s GetTemplateSummaryInput) String() string {
  1029. return awsutil.Prettify(s)
  1030. }
  1031. // GoString returns the string representation
  1032. func (s GetTemplateSummaryInput) GoString() string {
  1033. return s.String()
  1034. }
  1035. // The output for the GetTemplateSummary action.
  1036. type GetTemplateSummaryOutput struct {
  1037. // The capabilities found within the template. Currently, AWS CloudFormation
  1038. // supports only the CAPABILITY_IAM capability. If your template contains IAM
  1039. // resources, you must specify the CAPABILITY_IAM value for this parameter when
  1040. // you use the CreateStack or UpdateStack actions with your template; otherwise,
  1041. // those actions return an InsufficientCapabilities error.
  1042. Capabilities []*string `type:"list"`
  1043. // The list of resources that generated the values in the Capabilities response
  1044. // element.
  1045. CapabilitiesReason *string `type:"string"`
  1046. // The value that is defined in the Description property of the template.
  1047. Description *string `type:"string"`
  1048. // The value that is defined for the Metadata property of the template.
  1049. Metadata *string `type:"string"`
  1050. // A list of parameter declarations that describe various properties for each
  1051. // parameter.
  1052. Parameters []*ParameterDeclaration `type:"list"`
  1053. // The AWS template format version, which identifies the capabilities of the
  1054. // template.
  1055. Version *string `type:"string"`
  1056. metadataGetTemplateSummaryOutput `json:"-" xml:"-"`
  1057. }
  1058. type metadataGetTemplateSummaryOutput struct {
  1059. SDKShapeTraits bool `type:"structure"`
  1060. }
  1061. // String returns the string representation
  1062. func (s GetTemplateSummaryOutput) String() string {
  1063. return awsutil.Prettify(s)
  1064. }
  1065. // GoString returns the string representation
  1066. func (s GetTemplateSummaryOutput) GoString() string {
  1067. return s.String()
  1068. }
  1069. // The input for the ListStackResource action.
  1070. type ListStackResourcesInput struct {
  1071. // String that identifies the start of the next list of stack resource summaries,
  1072. // if there is one.
  1073. //
  1074. // Default: There is no default value.
  1075. NextToken *string `type:"string"`
  1076. // The name or the unique stack ID that is associated with the stack, which
  1077. // are not always interchangeable:
  1078. //
  1079. // Running stacks: You can specify either the stack's name or its unique stack
  1080. // ID. Deleted stacks: You must specify the unique stack ID. Default: There
  1081. // is no default value.
  1082. StackName *string `type:"string" required:"true"`
  1083. metadataListStackResourcesInput `json:"-" xml:"-"`
  1084. }
  1085. type metadataListStackResourcesInput struct {
  1086. SDKShapeTraits bool `type:"structure"`
  1087. }
  1088. // String returns the string representation
  1089. func (s ListStackResourcesInput) String() string {
  1090. return awsutil.Prettify(s)
  1091. }
  1092. // GoString returns the string representation
  1093. func (s ListStackResourcesInput) GoString() string {
  1094. return s.String()
  1095. }
  1096. // The output for a ListStackResources action.
  1097. type ListStackResourcesOutput struct {
  1098. // String that identifies the start of the next list of stack resources, if
  1099. // there is one.
  1100. NextToken *string `type:"string"`
  1101. // A list of StackResourceSummary structures.
  1102. StackResourceSummaries []*StackResourceSummary `type:"list"`
  1103. metadataListStackResourcesOutput `json:"-" xml:"-"`
  1104. }
  1105. type metadataListStackResourcesOutput struct {
  1106. SDKShapeTraits bool `type:"structure"`
  1107. }
  1108. // String returns the string representation
  1109. func (s ListStackResourcesOutput) String() string {
  1110. return awsutil.Prettify(s)
  1111. }
  1112. // GoString returns the string representation
  1113. func (s ListStackResourcesOutput) GoString() string {
  1114. return s.String()
  1115. }
  1116. // The input for ListStacks action.
  1117. type ListStacksInput struct {
  1118. // String that identifies the start of the next list of stacks, if there is
  1119. // one.
  1120. //
  1121. // Default: There is no default value.
  1122. NextToken *string `type:"string"`
  1123. // Stack status to use as a filter. Specify one or more stack status codes to
  1124. // list only stacks with the specified status codes. For a complete list of
  1125. // stack status codes, see the StackStatus parameter of the Stack data type.
  1126. StackStatusFilter []*string `type:"list"`
  1127. metadataListStacksInput `json:"-" xml:"-"`
  1128. }
  1129. type metadataListStacksInput struct {
  1130. SDKShapeTraits bool `type:"structure"`
  1131. }
  1132. // String returns the string representation
  1133. func (s ListStacksInput) String() string {
  1134. return awsutil.Prettify(s)
  1135. }
  1136. // GoString returns the string representation
  1137. func (s ListStacksInput) GoString() string {
  1138. return s.String()
  1139. }
  1140. // The output for ListStacks action.
  1141. type ListStacksOutput struct {
  1142. // String that identifies the start of the next list of stacks, if there is
  1143. // one.
  1144. NextToken *string `type:"string"`
  1145. // A list of StackSummary structures containing information about the specified
  1146. // stacks.
  1147. StackSummaries []*StackSummary `type:"list"`
  1148. metadataListStacksOutput `json:"-" xml:"-"`
  1149. }
  1150. type metadataListStacksOutput struct {
  1151. SDKShapeTraits bool `type:"structure"`
  1152. }
  1153. // String returns the string representation
  1154. func (s ListStacksOutput) String() string {
  1155. return awsutil.Prettify(s)
  1156. }
  1157. // GoString returns the string representation
  1158. func (s ListStacksOutput) GoString() string {
  1159. return s.String()
  1160. }
  1161. // The Output data type.
  1162. type Output struct {
  1163. // User defined description associated with the output.
  1164. Description *string `type:"string"`
  1165. // The key associated with the output.
  1166. OutputKey *string `type:"string"`
  1167. // The value associated with the output.
  1168. OutputValue *string `type:"string"`
  1169. metadataOutput `json:"-" xml:"-"`
  1170. }
  1171. type metadataOutput struct {
  1172. SDKShapeTraits bool `type:"structure"`
  1173. }
  1174. // String returns the string representation
  1175. func (s Output) String() string {
  1176. return awsutil.Prettify(s)
  1177. }
  1178. // GoString returns the string representation
  1179. func (s Output) GoString() string {
  1180. return s.String()
  1181. }
  1182. // The Parameter data type.
  1183. type Parameter struct {
  1184. // The key associated with the parameter. If you don't specify a key and value
  1185. // for a particular parameter, AWS CloudFormation uses the default value that
  1186. // is specified in your template.
  1187. ParameterKey *string `type:"string"`
  1188. // The value associated with the parameter.
  1189. ParameterValue *string `type:"string"`
  1190. // During a stack update, use the existing parameter value that the stack is
  1191. // using for a given parameter key. If you specify true, do not specify a parameter
  1192. // value.
  1193. UsePreviousValue *bool `type:"boolean"`
  1194. metadataParameter `json:"-" xml:"-"`
  1195. }
  1196. type metadataParameter struct {
  1197. SDKShapeTraits bool `type:"structure"`
  1198. }
  1199. // String returns the string representation
  1200. func (s Parameter) String() string {
  1201. return awsutil.Prettify(s)
  1202. }
  1203. // GoString returns the string representation
  1204. func (s Parameter) GoString() string {
  1205. return s.String()
  1206. }
  1207. // A set of criteria that AWS CloudFormation uses to validate parameter values.
  1208. // Although other constraints might be defined in the stack template, AWS CloudFormation
  1209. // returns only the AllowedValues property.
  1210. type ParameterConstraints struct {
  1211. // A list of values that are permitted for a parameter.
  1212. AllowedValues []*string `type:"list"`
  1213. metadataParameterConstraints `json:"-" xml:"-"`
  1214. }
  1215. type metadataParameterConstraints struct {
  1216. SDKShapeTraits bool `type:"structure"`
  1217. }
  1218. // String returns the string representation
  1219. func (s ParameterConstraints) String() string {
  1220. return awsutil.Prettify(s)
  1221. }
  1222. // GoString returns the string representation
  1223. func (s ParameterConstraints) GoString() string {
  1224. return s.String()
  1225. }
  1226. // The ParameterDeclaration data type.
  1227. type ParameterDeclaration struct {
  1228. // The default value of the parameter.
  1229. DefaultValue *string `type:"string"`
  1230. // The description that is associate with the parameter.
  1231. Description *string `type:"string"`
  1232. // Flag that indicates whether the parameter value is shown as plain text in
  1233. // logs and in the AWS Management Console.
  1234. NoEcho *bool `type:"boolean"`
  1235. // The criteria that AWS CloudFormation uses to validate parameter values.
  1236. ParameterConstraints *ParameterConstraints `type:"structure"`
  1237. // The name that is associated with the parameter.
  1238. ParameterKey *string `type:"string"`
  1239. // The type of parameter.
  1240. ParameterType *string `type:"string"`
  1241. metadataParameterDeclaration `json:"-" xml:"-"`
  1242. }
  1243. type metadataParameterDeclaration struct {
  1244. SDKShapeTraits bool `type:"structure"`
  1245. }
  1246. // String returns the string representation
  1247. func (s ParameterDeclaration) String() string {
  1248. return awsutil.Prettify(s)
  1249. }
  1250. // GoString returns the string representation
  1251. func (s ParameterDeclaration) GoString() string {
  1252. return s.String()
  1253. }
  1254. // The input for the SetStackPolicy action.
  1255. type SetStackPolicyInput struct {
  1256. // The name or unique stack ID that you want to associate a policy with.
  1257. StackName *string `type:"string" required:"true"`
  1258. // Structure containing the stack policy body. For more information, go to
  1259. // Prevent Updates to Stack Resources (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html)
  1260. // in the AWS CloudFormation User Guide. You can specify either the StackPolicyBody
  1261. // or the StackPolicyURL parameter, but not both.
  1262. StackPolicyBody *string `type:"string"`
  1263. // Location of a file containing the stack policy. The URL must point to a policy
  1264. // (max size: 16KB) located in an S3 bucket in the same region as the stack.
  1265. // You can specify either the StackPolicyBody or the StackPolicyURL parameter,
  1266. // but not both.
  1267. StackPolicyURL *string `type:"string"`
  1268. metadataSetStackPolicyInput `json:"-" xml:"-"`
  1269. }
  1270. type metadataSetStackPolicyInput struct {
  1271. SDKShapeTraits bool `type:"structure"`
  1272. }
  1273. // String returns the string representation
  1274. func (s SetStackPolicyInput) String() string {
  1275. return awsutil.Prettify(s)
  1276. }
  1277. // GoString returns the string representation
  1278. func (s SetStackPolicyInput) GoString() string {
  1279. return s.String()
  1280. }
  1281. type SetStackPolicyOutput struct {
  1282. metadataSetStackPolicyOutput `json:"-" xml:"-"`
  1283. }
  1284. type metadataSetStackPolicyOutput struct {
  1285. SDKShapeTraits bool `type:"structure"`
  1286. }
  1287. // String returns the string representation
  1288. func (s SetStackPolicyOutput) String() string {
  1289. return awsutil.Prettify(s)
  1290. }
  1291. // GoString returns the string representation
  1292. func (s SetStackPolicyOutput) GoString() string {
  1293. return s.String()
  1294. }
  1295. // The input for the SignalResource action.
  1296. type SignalResourceInput struct {
  1297. // The logical ID of the resource that you want to signal. The logical ID is
  1298. // the name of the resource that given in the template.
  1299. LogicalResourceId *string `type:"string" required:"true"`
  1300. // The stack name or unique stack ID that includes the resource that you want
  1301. // to signal.
  1302. StackName *string `type:"string" required:"true"`
  1303. // The status of the signal, which is either success or failure. A failure signal
  1304. // causes AWS CloudFormation to immediately fail the stack creation or update.
  1305. Status *string `type:"string" required:"true" enum:"ResourceSignalStatus"`
  1306. // A unique ID of the signal. When you signal Amazon EC2 instances or Auto Scaling
  1307. // groups, specify the instance ID that you are signaling as the unique ID.
  1308. // If you send multiple signals to a single resource (such as signaling a wait
  1309. // condition), each signal requires a different unique ID.
  1310. UniqueId *string `type:"string" required:"true"`
  1311. metadataSignalResourceInput `json:"-" xml:"-"`
  1312. }
  1313. type metadataSignalResourceInput struct {
  1314. SDKShapeTraits bool `type:"structure"`
  1315. }
  1316. // String returns the string representation
  1317. func (s SignalResourceInput) String() string {
  1318. return awsutil.Prettify(s)
  1319. }
  1320. // GoString returns the string representation
  1321. func (s SignalResourceInput) GoString() string {
  1322. return s.String()
  1323. }
  1324. type SignalResourceOutput struct {
  1325. metadataSignalResourceOutput `json:"-" xml:"-"`
  1326. }
  1327. type metadataSignalResourceOutput struct {
  1328. SDKShapeTraits bool `type:"structure"`
  1329. }
  1330. // String returns the string representation
  1331. func (s SignalResourceOutput) String() string {
  1332. return awsutil.Prettify(s)
  1333. }
  1334. // GoString returns the string representation
  1335. func (s SignalResourceOutput) GoString() string {
  1336. return s.String()
  1337. }
  1338. // The Stack data type.
  1339. type Stack struct {
  1340. // The capabilities allowed in the stack.
  1341. Capabilities []*string `type:"list"`
  1342. // Time at which the stack was created.
  1343. CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1344. // User defined description associated with the stack.
  1345. Description *string `type:"string"`
  1346. // Boolean to enable or disable rollback on stack creation failures:
  1347. //
  1348. // true: disable rollback false: enable rollback
  1349. DisableRollback *bool `type:"boolean"`
  1350. // The time the stack was last updated. This field will only be returned if
  1351. // the stack has been updated at least once.
  1352. LastUpdatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1353. // SNS topic ARNs to which stack related events are published.
  1354. NotificationARNs []*string `type:"list"`
  1355. // A list of output structures.
  1356. Outputs []*Output `type:"list"`
  1357. // A list of Parameter structures.
  1358. Parameters []*Parameter `type:"list"`
  1359. // Unique identifier of the stack.
  1360. StackId *string `type:"string"`
  1361. // The name associated with the stack.
  1362. StackName *string `type:"string" required:"true"`
  1363. // Current status of the stack.
  1364. StackStatus *string `type:"string" required:"true" enum:"StackStatus"`
  1365. // Success/failure message associated with the stack status.
  1366. StackStatusReason *string `type:"string"`
  1367. // A list of Tags that specify cost allocation information for the stack.
  1368. Tags []*Tag `type:"list"`
  1369. // The amount of time within which stack creation should complete.
  1370. TimeoutInMinutes *int64 `type:"integer"`
  1371. metadataStack `json:"-" xml:"-"`
  1372. }
  1373. type metadataStack struct {
  1374. SDKShapeTraits bool `type:"structure"`
  1375. }
  1376. // String returns the string representation
  1377. func (s Stack) String() string {
  1378. return awsutil.Prettify(s)
  1379. }
  1380. // GoString returns the string representation
  1381. func (s Stack) GoString() string {
  1382. return s.String()
  1383. }
  1384. // The StackEvent data type.
  1385. type StackEvent struct {
  1386. // The unique ID of this event.
  1387. EventId *string `type:"string" required:"true"`
  1388. // The logical name of the resource specified in the template.
  1389. LogicalResourceId *string `type:"string"`
  1390. // The name or unique identifier associated with the physical instance of the
  1391. // resource.
  1392. PhysicalResourceId *string `type:"string"`
  1393. // BLOB of the properties used to create the resource.
  1394. ResourceProperties *string `type:"string"`
  1395. // Current status of the resource.
  1396. ResourceStatus *string `type:"string" enum:"ResourceStatus"`
  1397. // Success/failure message associated with the resource.
  1398. ResourceStatusReason *string `type:"string"`
  1399. // Type of resource. (For more information, go to AWS Resource Types Reference
  1400. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
  1401. // in the AWS CloudFormation User Guide.)
  1402. ResourceType *string `type:"string"`
  1403. // The unique ID name of the instance of the stack.
  1404. StackId *string `type:"string" required:"true"`
  1405. // The name associated with a stack.
  1406. StackName *string `type:"string" required:"true"`
  1407. // Time the status was updated.
  1408. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1409. metadataStackEvent `json:"-" xml:"-"`
  1410. }
  1411. type metadataStackEvent struct {
  1412. SDKShapeTraits bool `type:"structure"`
  1413. }
  1414. // String returns the string representation
  1415. func (s StackEvent) String() string {
  1416. return awsutil.Prettify(s)
  1417. }
  1418. // GoString returns the string representation
  1419. func (s StackEvent) GoString() string {
  1420. return s.String()
  1421. }
  1422. // The StackResource data type.
  1423. type StackResource struct {
  1424. // User defined description associated with the resource.
  1425. Description *string `type:"string"`
  1426. // The logical name of the resource specified in the template.
  1427. LogicalResourceId *string `type:"string" required:"true"`
  1428. // The name or unique identifier that corresponds to a physical instance ID
  1429. // of a resource supported by AWS CloudFormation.
  1430. PhysicalResourceId *string `type:"string"`
  1431. // Current status of the resource.
  1432. ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"`
  1433. // Success/failure message associated with the resource.
  1434. ResourceStatusReason *string `type:"string"`
  1435. // Type of resource. (For more information, go to AWS Resource Types Reference
  1436. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
  1437. // in the AWS CloudFormation User Guide.)
  1438. ResourceType *string `type:"string" required:"true"`
  1439. // Unique identifier of the stack.
  1440. StackId *string `type:"string"`
  1441. // The name associated with the stack.
  1442. StackName *string `type:"string"`
  1443. // Time the status was updated.
  1444. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1445. metadataStackResource `json:"-" xml:"-"`
  1446. }
  1447. type metadataStackResource struct {
  1448. SDKShapeTraits bool `type:"structure"`
  1449. }
  1450. // String returns the string representation
  1451. func (s StackResource) String() string {
  1452. return awsutil.Prettify(s)
  1453. }
  1454. // GoString returns the string representation
  1455. func (s StackResource) GoString() string {
  1456. return s.String()
  1457. }
  1458. // Contains detailed information about the specified stack resource.
  1459. type StackResourceDetail struct {
  1460. // User defined description associated with the resource.
  1461. Description *string `type:"string"`
  1462. // Time the status was updated.
  1463. LastUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1464. // The logical name of the resource specified in the template.
  1465. LogicalResourceId *string `type:"string" required:"true"`
  1466. // The JSON format content of the Metadata attribute declared for the resource.
  1467. // For more information, see Metadata Attribute (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html)
  1468. // in the AWS CloudFormation User Guide.
  1469. Metadata *string `type:"string"`
  1470. // The name or unique identifier that corresponds to a physical instance ID
  1471. // of a resource supported by AWS CloudFormation.
  1472. PhysicalResourceId *string `type:"string"`
  1473. // Current status of the resource.
  1474. ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"`
  1475. // Success/failure message associated with the resource.
  1476. ResourceStatusReason *string `type:"string"`
  1477. // Type of resource. ((For more information, go to AWS Resource Types Reference
  1478. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
  1479. // in the AWS CloudFormation User Guide.)
  1480. ResourceType *string `type:"string" required:"true"`
  1481. // Unique identifier of the stack.
  1482. StackId *string `type:"string"`
  1483. // The name associated with the stack.
  1484. StackName *string `type:"string"`
  1485. metadataStackResourceDetail `json:"-" xml:"-"`
  1486. }
  1487. type metadataStackResourceDetail struct {
  1488. SDKShapeTraits bool `type:"structure"`
  1489. }
  1490. // String returns the string representation
  1491. func (s StackResourceDetail) String() string {
  1492. return awsutil.Prettify(s)
  1493. }
  1494. // GoString returns the string representation
  1495. func (s StackResourceDetail) GoString() string {
  1496. return s.String()
  1497. }
  1498. // Contains high-level information about the specified stack resource.
  1499. type StackResourceSummary struct {
  1500. // Time the status was updated.
  1501. LastUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1502. // The logical name of the resource specified in the template.
  1503. LogicalResourceId *string `type:"string" required:"true"`
  1504. // The name or unique identifier that corresponds to a physical instance ID
  1505. // of the resource.
  1506. PhysicalResourceId *string `type:"string"`
  1507. // Current status of the resource.
  1508. ResourceStatus *string `type:"string" required:"true" enum:"ResourceStatus"`
  1509. // Success/failure message associated with the resource.
  1510. ResourceStatusReason *string `type:"string"`
  1511. // Type of resource. (For more information, go to AWS Resource Types Reference
  1512. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
  1513. // in the AWS CloudFormation User Guide.)
  1514. ResourceType *string `type:"string" required:"true"`
  1515. metadataStackResourceSummary `json:"-" xml:"-"`
  1516. }
  1517. type metadataStackResourceSummary struct {
  1518. SDKShapeTraits bool `type:"structure"`
  1519. }
  1520. // String returns the string representation
  1521. func (s StackResourceSummary) String() string {
  1522. return awsutil.Prettify(s)
  1523. }
  1524. // GoString returns the string representation
  1525. func (s StackResourceSummary) GoString() string {
  1526. return s.String()
  1527. }
  1528. // The StackSummary Data Type
  1529. type StackSummary struct {
  1530. // The time the stack was created.
  1531. CreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1532. // The time the stack was deleted.
  1533. DeletionTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1534. // The time the stack was last updated. This field will only be returned if
  1535. // the stack has been updated at least once.
  1536. LastUpdatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1537. // Unique stack identifier.
  1538. StackId *string `type:"string"`
  1539. // The name associated with the stack.
  1540. StackName *string `type:"string" required:"true"`
  1541. // The current status of the stack.
  1542. StackStatus *string `type:"string" required:"true" enum:"StackStatus"`
  1543. // Success/Failure message associated with the stack status.
  1544. StackStatusReason *string `type:"string"`
  1545. // The template description of the template used to create the stack.
  1546. TemplateDescription *string `type:"string"`
  1547. metadataStackSummary `json:"-" xml:"-"`
  1548. }
  1549. type metadataStackSummary struct {
  1550. SDKShapeTraits bool `type:"structure"`
  1551. }
  1552. // String returns the string representation
  1553. func (s StackSummary) String() string {
  1554. return awsutil.Prettify(s)
  1555. }
  1556. // GoString returns the string representation
  1557. func (s StackSummary) GoString() string {
  1558. return s.String()
  1559. }
  1560. // The Tag type is used by CreateStack in the Tags parameter. It allows you
  1561. // to specify a key/value pair that can be used to store information related
  1562. // to cost allocation for an AWS CloudFormation stack.
  1563. type Tag struct {
  1564. // Required. A string used to identify this tag. You can specify a maximum of
  1565. // 128 characters for a tag key. Tags owned by Amazon Web Services (AWS) have
  1566. // the reserved prefix: aws:.
  1567. Key *string `type:"string"`
  1568. // Required. A string containing the value for this tag. You can specify a maximum
  1569. // of 256 characters for a tag value.
  1570. Value *string `type:"string"`
  1571. metadataTag `json:"-" xml:"-"`
  1572. }
  1573. type metadataTag struct {
  1574. SDKShapeTraits bool `type:"structure"`
  1575. }
  1576. // String returns the string representation
  1577. func (s Tag) String() string {
  1578. return awsutil.Prettify(s)
  1579. }
  1580. // GoString returns the string representation
  1581. func (s Tag) GoString() string {
  1582. return s.String()
  1583. }
  1584. // The TemplateParameter data type.
  1585. type TemplateParameter struct {
  1586. // The default value associated with the parameter.
  1587. DefaultValue *string `type:"string"`
  1588. // User defined description associated with the parameter.
  1589. Description *string `type:"string"`
  1590. // Flag indicating whether the parameter should be displayed as plain text in
  1591. // logs and UIs.
  1592. NoEcho *bool `type:"boolean"`
  1593. // The name associated with the parameter.
  1594. ParameterKey *string `type:"string"`
  1595. metadataTemplateParameter `json:"-" xml:"-"`
  1596. }
  1597. type metadataTemplateParameter struct {
  1598. SDKShapeTraits bool `type:"structure"`
  1599. }
  1600. // String returns the string representation
  1601. func (s TemplateParameter) String() string {
  1602. return awsutil.Prettify(s)
  1603. }
  1604. // GoString returns the string representation
  1605. func (s TemplateParameter) GoString() string {
  1606. return s.String()
  1607. }
  1608. // The input for UpdateStack action.
  1609. type UpdateStackInput struct {
  1610. // A list of capabilities that you must specify before AWS CloudFormation can
  1611. // create or update certain stacks. Some stack templates might include resources
  1612. // that can affect permissions in your AWS account. For those stacks, you must
  1613. // explicitly acknowledge their capabilities by specifying this parameter. Currently,
  1614. // the only valid value is CAPABILITY_IAM, which is required for the following
  1615. // resources: AWS::IAM::AccessKey (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html),
  1616. // AWS::IAM::Group (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html),
  1617. // AWS::IAM::InstanceProfile (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html),
  1618. // AWS::IAM::Policy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html),
  1619. // AWS::IAM::Role (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html),
  1620. // AWS::IAM::User (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html),
  1621. // and AWS::IAM::UserToGroupAddition (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html).
  1622. // If your stack template contains these resources, we recommend that you review
  1623. // any permissions associated with them. If you don't specify this parameter,
  1624. // this action returns an InsufficientCapabilities error.
  1625. Capabilities []*string `type:"list"`
  1626. // Update the ARNs for the Amazon SNS topics that are associated with the stack.
  1627. NotificationARNs []*string `type:"list"`
  1628. // A list of Parameter structures that specify input parameters for the stack.
  1629. // For more information, see the Parameter (http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_Parameter.html)
  1630. // data type.
  1631. Parameters []*Parameter `type:"list"`
  1632. // The name or unique stack ID of the stack to update.
  1633. StackName *string `type:"string" required:"true"`
  1634. // Structure containing a new stack policy body. You can specify either the
  1635. // StackPolicyBody or the StackPolicyURL parameter, but not both.
  1636. //
  1637. // You might update the stack policy, for example, in order to protect a new
  1638. // resource that you created during a stack update. If you do not specify a
  1639. // stack policy, the current policy that is associated with the stack is unchanged.
  1640. StackPolicyBody *string `type:"string"`
  1641. // Structure containing the temporary overriding stack policy body. You can
  1642. // specify either the StackPolicyDuringUpdateBody or the StackPolicyDuringUpdateURL
  1643. // parameter, but not both.
  1644. //
  1645. // If you want to update protected resources, specify a temporary overriding
  1646. // stack policy during this update. If you do not specify a stack policy, the
  1647. // current policy that is associated with the stack will be used.
  1648. StackPolicyDuringUpdateBody *string `type:"string"`
  1649. // Location of a file containing the temporary overriding stack policy. The
  1650. // URL must point to a policy (max size: 16KB) located in an S3 bucket in the
  1651. // same region as the stack. You can specify either the StackPolicyDuringUpdateBody
  1652. // or the StackPolicyDuringUpdateURL parameter, but not both.
  1653. //
  1654. // If you want to update protected resources, specify a temporary overriding
  1655. // stack policy during this update. If you do not specify a stack policy, the
  1656. // current policy that is associated with the stack will be used.
  1657. StackPolicyDuringUpdateURL *string `type:"string"`
  1658. // Location of a file containing the updated stack policy. The URL must point
  1659. // to a policy (max size: 16KB) located in an S3 bucket in the same region as
  1660. // the stack. You can specify either the StackPolicyBody or the StackPolicyURL
  1661. // parameter, but not both.
  1662. //
  1663. // You might update the stack policy, for example, in order to protect a new
  1664. // resource that you created during a stack update. If you do not specify a
  1665. // stack policy, the current policy that is associated with the stack is unchanged.
  1666. StackPolicyURL *string `type:"string"`
  1667. // Structure containing the template body with a minimum length of 1 byte and
  1668. // a maximum length of 51,200 bytes. (For more information, go to Template Anatomy
  1669. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1670. // in the AWS CloudFormation User Guide.)
  1671. //
  1672. // Conditional: You must specify either the TemplateBody or the TemplateURL
  1673. // parameter, but not both.
  1674. TemplateBody *string `type:"string"`
  1675. // Location of file containing the template body. The URL must point to a template
  1676. // located in an S3 bucket in the same region as the stack. For more information,
  1677. // go to Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1678. // in the AWS CloudFormation User Guide.
  1679. //
  1680. // Conditional: You must specify either the TemplateBody or the TemplateURL
  1681. // parameter, but not both.
  1682. TemplateURL *string `type:"string"`
  1683. // Reuse the existing template that is associated with the stack that you are
  1684. // updating.
  1685. UsePreviousTemplate *bool `type:"boolean"`
  1686. metadataUpdateStackInput `json:"-" xml:"-"`
  1687. }
  1688. type metadataUpdateStackInput struct {
  1689. SDKShapeTraits bool `type:"structure"`
  1690. }
  1691. // String returns the string representation
  1692. func (s UpdateStackInput) String() string {
  1693. return awsutil.Prettify(s)
  1694. }
  1695. // GoString returns the string representation
  1696. func (s UpdateStackInput) GoString() string {
  1697. return s.String()
  1698. }
  1699. // The output for a UpdateStack action.
  1700. type UpdateStackOutput struct {
  1701. // Unique identifier of the stack.
  1702. StackId *string `type:"string"`
  1703. metadataUpdateStackOutput `json:"-" xml:"-"`
  1704. }
  1705. type metadataUpdateStackOutput struct {
  1706. SDKShapeTraits bool `type:"structure"`
  1707. }
  1708. // String returns the string representation
  1709. func (s UpdateStackOutput) String() string {
  1710. return awsutil.Prettify(s)
  1711. }
  1712. // GoString returns the string representation
  1713. func (s UpdateStackOutput) GoString() string {
  1714. return s.String()
  1715. }
  1716. // The input for ValidateTemplate action.
  1717. type ValidateTemplateInput struct {
  1718. // Structure containing the template body with a minimum length of 1 byte and
  1719. // a maximum length of 51,200 bytes. For more information, go to Template Anatomy
  1720. // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1721. // in the AWS CloudFormation User Guide.
  1722. //
  1723. // Conditional: You must pass TemplateURL or TemplateBody. If both are passed,
  1724. // only TemplateBody is used.
  1725. TemplateBody *string `type:"string"`
  1726. // Location of file containing the template body. The URL must point to a template
  1727. // (max size: 460,800 bytes) located in an S3 bucket in the same region as the
  1728. // stack. For more information, go to Template Anatomy (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html)
  1729. // in the AWS CloudFormation User Guide.
  1730. //
  1731. // Conditional: You must pass TemplateURL or TemplateBody. If both are passed,
  1732. // only TemplateBody is used.
  1733. TemplateURL *string `type:"string"`
  1734. metadataValidateTemplateInput `json:"-" xml:"-"`
  1735. }
  1736. type metadataValidateTemplateInput struct {
  1737. SDKShapeTraits bool `type:"structure"`
  1738. }
  1739. // String returns the string representation
  1740. func (s ValidateTemplateInput) String() string {
  1741. return awsutil.Prettify(s)
  1742. }
  1743. // GoString returns the string representation
  1744. func (s ValidateTemplateInput) GoString() string {
  1745. return s.String()
  1746. }
  1747. // The output for ValidateTemplate action.
  1748. type ValidateTemplateOutput struct {
  1749. // The capabilities found within the template. Currently, AWS CloudFormation
  1750. // supports only the CAPABILITY_IAM capability. If your template contains IAM
  1751. // resources, you must specify the CAPABILITY_IAM value for this parameter when
  1752. // you use the CreateStack or UpdateStack actions with your template; otherwise,
  1753. // those actions return an InsufficientCapabilities error.
  1754. Capabilities []*string `type:"list"`
  1755. // The list of resources that generated the values in the Capabilities response
  1756. // element.
  1757. CapabilitiesReason *string `type:"string"`
  1758. // The description found within the template.
  1759. Description *string `type:"string"`
  1760. // A list of TemplateParameter structures.
  1761. Parameters []*TemplateParameter `type:"list"`
  1762. metadataValidateTemplateOutput `json:"-" xml:"-"`
  1763. }
  1764. type metadataValidateTemplateOutput struct {
  1765. SDKShapeTraits bool `type:"structure"`
  1766. }
  1767. // String returns the string representation
  1768. func (s ValidateTemplateOutput) String() string {
  1769. return awsutil.Prettify(s)
  1770. }
  1771. // GoString returns the string representation
  1772. func (s ValidateTemplateOutput) GoString() string {
  1773. return s.String()
  1774. }
  1775. const (
  1776. // @enum Capability
  1777. CapabilityCapabilityIam = "CAPABILITY_IAM"
  1778. )
  1779. const (
  1780. // @enum OnFailure
  1781. OnFailureDoNothing = "DO_NOTHING"
  1782. // @enum OnFailure
  1783. OnFailureRollback = "ROLLBACK"
  1784. // @enum OnFailure
  1785. OnFailureDelete = "DELETE"
  1786. )
  1787. const (
  1788. // @enum ResourceSignalStatus
  1789. ResourceSignalStatusSuccess = "SUCCESS"
  1790. // @enum ResourceSignalStatus
  1791. ResourceSignalStatusFailure = "FAILURE"
  1792. )
  1793. const (
  1794. // @enum ResourceStatus
  1795. ResourceStatusCreateInProgress = "CREATE_IN_PROGRESS"
  1796. // @enum ResourceStatus
  1797. ResourceStatusCreateFailed = "CREATE_FAILED"
  1798. // @enum ResourceStatus
  1799. ResourceStatusCreateComplete = "CREATE_COMPLETE"
  1800. // @enum ResourceStatus
  1801. ResourceStatusDeleteInProgress = "DELETE_IN_PROGRESS"
  1802. // @enum ResourceStatus
  1803. ResourceStatusDeleteFailed = "DELETE_FAILED"
  1804. // @enum ResourceStatus
  1805. ResourceStatusDeleteComplete = "DELETE_COMPLETE"
  1806. // @enum ResourceStatus
  1807. ResourceStatusDeleteSkipped = "DELETE_SKIPPED"
  1808. // @enum ResourceStatus
  1809. ResourceStatusUpdateInProgress = "UPDATE_IN_PROGRESS"
  1810. // @enum ResourceStatus
  1811. ResourceStatusUpdateFailed = "UPDATE_FAILED"
  1812. // @enum ResourceStatus
  1813. ResourceStatusUpdateComplete = "UPDATE_COMPLETE"
  1814. )
  1815. const (
  1816. // @enum StackStatus
  1817. StackStatusCreateInProgress = "CREATE_IN_PROGRESS"
  1818. // @enum StackStatus
  1819. StackStatusCreateFailed = "CREATE_FAILED"
  1820. // @enum StackStatus
  1821. StackStatusCreateComplete = "CREATE_COMPLETE"
  1822. // @enum StackStatus
  1823. StackStatusRollbackInProgress = "ROLLBACK_IN_PROGRESS"
  1824. // @enum StackStatus
  1825. StackStatusRollbackFailed = "ROLLBACK_FAILED"
  1826. // @enum StackStatus
  1827. StackStatusRollbackComplete = "ROLLBACK_COMPLETE"
  1828. // @enum StackStatus
  1829. StackStatusDeleteInProgress = "DELETE_IN_PROGRESS"
  1830. // @enum StackStatus
  1831. StackStatusDeleteFailed = "DELETE_FAILED"
  1832. // @enum StackStatus
  1833. StackStatusDeleteComplete = "DELETE_COMPLETE"
  1834. // @enum StackStatus
  1835. StackStatusUpdateInProgress = "UPDATE_IN_PROGRESS"
  1836. // @enum StackStatus
  1837. StackStatusUpdateCompleteCleanupInProgress = "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS"
  1838. // @enum StackStatus
  1839. StackStatusUpdateComplete = "UPDATE_COMPLETE"
  1840. // @enum StackStatus
  1841. StackStatusUpdateRollbackInProgress = "UPDATE_ROLLBACK_IN_PROGRESS"
  1842. // @enum StackStatus
  1843. StackStatusUpdateRollbackFailed = "UPDATE_ROLLBACK_FAILED"
  1844. // @enum StackStatus
  1845. StackStatusUpdateRollbackCompleteCleanupInProgress = "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS"
  1846. // @enum StackStatus
  1847. StackStatusUpdateRollbackComplete = "UPDATE_ROLLBACK_COMPLETE"
  1848. )