āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•ā§‹āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ…āĻ‚āĻļ 2

āĻšāĻžāĻ‡ āĻ¸āĻŦ. āĻ†āĻœ āĻ†āĻŽāĻ°āĻž āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋāĻ° āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ…āĻ‚āĻļāĻŸāĻŋ āĻļā§‡āĻ¯āĻŧāĻžāĻ° āĻ•āĻ°āĻ›āĻŋāĨ¤ "āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•ā§‹āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž", āĻ¯āĻžāĻ° āĻ…āĻ¨ā§āĻŦāĻžāĻĻ āĻ•ā§‹āĻ°ā§āĻ¸ āĻ›āĻžāĻ¤ā§āĻ°āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§‡āĻˇāĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ "DevOps āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽ".

āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•ā§‹āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ…āĻ‚āĻļ 2

āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻāĻ‡ āĻļā§ˆāĻ˛ā§€āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻļāĻ•ā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§€ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ•ā§‹āĻĄā§‡āĻ° āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻžāĻ°āĻŋāĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻžāĻĻāĻž āĻŦāĻ•ā§āĻ¸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ†āĻŽāĻ°āĻž āĻ¯āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ āĻ¤āĻž āĻ•āĻŋāĻ›ā§āĻŸāĻž āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ•āĻ°ā§‡āĨ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ†āĻ—ā§‡ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ‡āĻ¨-āĻŽā§‡āĻŽāĻ°āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻ•āĻ˛ā§āĻĒāĻ¨āĻžāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻ¸āĻžā§āĻšāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻŸāĻŋ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻŦāĻ‚ āĻāĻ‡ āĻĻā§āĻŸāĻŋ āĻĒāĻ¨ā§āĻĨāĻž āĻāĻ•āĻ¸āĻ™ā§āĻ—ā§‡ āĻŽāĻšāĻžāĻ¨ āĻ•āĻžāĻœ!

āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• Go-āĻ¤ā§‡ āĻ˛ā§‡āĻ–āĻž āĻ†āĻ›ā§‡, āĻ¯ā§‡āĻ­āĻžāĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻ•ā§‹āĻĄ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŋāĨ¤ āĻ¯āĻĻāĻŋāĻ“ āĻĒā§‚āĻ°ā§āĻŦā§‡ āĻ†āĻ˛ā§‹āĻšāĻŋāĻ¤ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻžāĻĻāĻž āĻŦāĻ•ā§āĻ¸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŽāĻ¤ āĻ›āĻŋāĻ˛, āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ˛ā§‹ āĻŦāĻžāĻ•ā§āĻ¸āĨ¤ (āĻ•āĻ ā§‹āĻ° āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯āĻ“ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤) āĻāĻ‡ āĻ•āĻžāĻ āĻžāĻŽā§‹āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻāĻŦāĻ‚ āĻāĻ¤ā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ˛āĻžāĻ‡āĻĢāĻ¸āĻžāĻ‡āĻ•ā§‡āĻ˛ āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛, āĻ¯ā§‡āĻŽāĻ¨ āĻ¸ā§āĻ•ā§āĻ°ā§āĻ¯āĻžāĻš āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž, āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻŸāĻŋ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž, āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻāĻ•āĻžāĻ§āĻŋāĻ•āĻŦāĻžāĻ° . āĻ†āĻŽāĻ°āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻšāĻžāĻ˛āĻžāĻ‡ (āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ°āĻžāĻ¤ā§‡) āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§‡āĨ¤

(āĻ†āĻŽāĻ°āĻž āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻž āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ›āĻŋ, āĻ¯āĻžāĻ¤ā§‡ āĻāĻ•āĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ SDK āĻ­āĻžāĻˇāĻžāĻ¯āĻŧ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¯ā§‡ āĻ­āĻžāĻˇāĻžāĻ¯āĻŧ āĻ˛ā§‡āĻ–āĻž āĻšā§‹āĻ• āĻ¨āĻž āĻ•ā§‡āĻ¨ āĻ†āĻĒāĻ¨āĻŋ Go āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨)āĨ¤

āĻāĻ‡ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

  • āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻœā§‡āĻ•ā§āĻŸ āĻ•ā§‹āĻĄ āĻ¸āĻŋāĻ¨āĻŸā§āĻ¯āĻžāĻ•ā§āĻŸāĻŋāĻ˛āĻŋ āĻ¸āĻ āĻŋāĻ• āĻāĻŦāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻšāĻ˛ā§‡āĨ¤
  • āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻāĻŦāĻ‚ āĻ¸āĻŋāĻ•ā§āĻ°ā§‡āĻŸāĻ¸ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
  • āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒāĻ›āĻ¨ā§āĻĻā§‡āĻ° āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ¤ā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤
  • āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ• āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĨā§‡āĻ•ā§‡ N āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ°āĻžāĻœā§āĻ¯ā§‡ āĻ†āĻĒāĻ—ā§āĻ°ā§‡āĻĄ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤
  • āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡ āĻ§ā§āĻŦāĻ‚āĻ¸ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ°āĻžāĻ¨ā§‹ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡.

āĻ†āĻŽāĻ°āĻž āĻļā§€āĻ˜ā§āĻ°āĻ‡ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻŦ, āĻāĻ‡ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•āĻŸāĻŋ āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ āĻ¯āĻžāĻšāĻžāĻ‡āĻ•āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯āĻ“ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ¸āĻšāĻœ āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻāĻŸāĻŋ āĻ•āĻ°ā§āĻŽā§‡ āĻĻā§‡āĻ–āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛āĻŸāĻŋ āĻĻā§‡āĻ–āĻŦ pulumi/examples, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĻāĻ˛ āĻāĻŦāĻ‚ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧ āĻāĻŸāĻŋāĻ•ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻĒā§āĻ˛ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻ°āĻžāĻ¤ā§‡āĻ° āĻŦāĻŋāĻ˛ā§āĻĄāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯āĨ¤

āĻ¨ā§€āĻšā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻ°āĻ˛ā§€āĻ•ā§ƒāĻ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ†āĻ›ā§‡ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ¯āĻž S3 āĻŦāĻžāĻ˛āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦāĻ¸ā§āĻ¤ā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡:

example_test.go:

package test
 
import (
    "os"
    "path"
    "testing"
 
    "github.com/pulumi/pulumi/pkg/testing/integration"
)
 
func TestExamples(t *testing.T) {
    awsRegion := os.Getenv("AWS_REGION")
    if awsRegion == "" {
        awsRegion = "us-west-1"
    }
    cwd, _ := os.Getwd()
    integration.ProgramTest(t, &integration.ProgramTestOptions{
        Quick:       true,
        SkipRefresh: true,
        Dir:         path.Join(cwd, "..", "..", "aws-js-s3-folder"),
        Config: map[string]string{
            "aws:region": awsRegion,
        },
    })
}

āĻāĻ‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĢā§‹āĻ˛ā§āĻĄāĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻ¤ā§ˆāĻ°āĻŋ, āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻŦāĻ‚ āĻ§ā§āĻŦāĻ‚āĻ¸ āĻ•āĻ°āĻžāĻ° āĻŽā§ŒāĻ˛āĻŋāĻ• āĻœā§€āĻŦāĻ¨āĻšāĻ•ā§āĻ°ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ aws-js-s3-folder. āĻāĻ•āĻŸāĻŋ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻ• āĻŽāĻŋāĻ¨āĻŋāĻŸ āĻ¸āĻŽāĻ¯āĻŧ āĻ˛āĻžāĻ—āĻŦā§‡:

$ go test .
PASS
ok      ... 43.993s

āĻāĻ‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ†āĻšāĻ°āĻŖ āĻ•āĻžāĻ¸ā§āĻŸāĻŽāĻžāĻ‡āĻœ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ†āĻ›ā§‡āĨ¤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻĻā§‡āĻ–ā§āĻ¨āĨ¤ āĻ—āĻ āĻ¨ā§‡ ProgramTestOptions. āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻĒāĻ¨āĻŋ āĻœāĻžāĻ‡āĻ—āĻžāĻ° āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻ•ā§‡ āĻŸā§āĻ°ā§‡āĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ (Tracing), āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§āĻ¨ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ†āĻļāĻž āĻ•āĻ°āĻ›ā§‡āĻ¨ āĻ¯āĻĻāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ¨ā§‡āĻ¤āĻŋāĻŦāĻžāĻšāĻ• āĻšāĻ¯āĻŧ (ExpectFailure), āĻ°āĻžāĻœā§āĻ¯āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ°āĻŽāĻŋāĻ• āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽā§‡ "āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž" āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ°āĻŋāĻœ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§āĻ¨ (EditDirs) āĻāĻŦāĻ‚ āĻ†āĻ°ā§‹ āĻ…āĻ¨ā§‡āĻ• āĻ•āĻŋāĻ›ā§. āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤āĻžāĻĻā§‡āĻ° āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¤āĻž āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•āĨ¤

āĻ¸āĻŽā§āĻĒāĻĻ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ‰āĻĒāĻ°ā§‡ āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻ•āĻ°āĻž āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ "āĻ•āĻžāĻœ āĻ•āĻ°ā§‡"—āĻāĻŸāĻŋ āĻ•ā§āĻ°ā§āĻ¯āĻžāĻļ āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡? āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ§āĻ°āĻŖā§‡āĻ° āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (āĻŦāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ) āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻŽāĻžāĻĒ ExtraRuntimeValidation āĻĨā§‡āĻ•ā§‡ ProgramTestOptions āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ°ā§‡āĻ•āĻ°ā§āĻĄ āĻ•āĻ°āĻž āĻĒā§‹āĻ¸ā§āĻŸ-āĻĄāĻŋāĻĒā§āĻ˛āĻ¯āĻŧāĻŽā§‡āĻ¨ā§āĻŸ āĻ¸ā§āĻŸā§‡āĻŸ āĻĻā§‡āĻ–āĻžāĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻšā§‡āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻ¤ā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨, āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋāĻ•ā§ƒāĻ¤ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻŽāĻžāĻ¨, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋāĻ° āĻŽāĻžāĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŽā§āĻĒāĻĻā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž āĻ¸āĻš āĻĢāĻ˛āĻžāĻĢāĻ˛ā§‡āĻ° āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻŽā§ŒāĻ˛āĻŋāĻ• āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§‡āĻ–āĻ¤ā§‡, āĻ†āĻ¸ā§āĻ¨ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡ āĻĻā§‡āĻ–āĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻāĻ•āĻŸāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡ S3 āĻŦāĻžāĻ˛āĻ¤āĻŋ:

  integration.ProgramTest(t, &integration.ProgramTestOptions{
        // as before...
        ExtraRuntimeValidation: func(t *testing.T, stack integration.RuntimeValidationStackInfo) {
            var foundBuckets int
            for _, res := range stack.Deployment.Resources {
                if res.Type == "aws:s3/bucket:Bucket" {
                    foundBuckets++
                }
            }
            assert.Equal(t, 1, foundBuckets, "Expected to find a single AWS S3 Bucket")
        },
    })

āĻāĻ–āĻ¨, āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ—ā§‹ āĻŸā§‡āĻ¸ā§āĻŸ āĻšāĻžāĻ˛āĻžāĻ‡, āĻ¤āĻ–āĻ¨ āĻāĻŸāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻžāĻ‡āĻĢāĻ¸āĻžāĻ‡āĻ•ā§‡āĻ˛ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŦā§āĻ¯āĻžāĻŸāĻžāĻ°āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻŦā§‡ āĻ¨āĻž, āĻ¤āĻŦā§‡, āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•āĻŸāĻŋ āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻāĻŸāĻŋ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻ‰āĻĒāĻ° āĻāĻ•āĻŸāĻŋ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻāĻ–āĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ¨āĻŋāĻ›āĻ•āĻ­āĻžāĻŦā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ†āĻšāĻ°āĻŖ āĻāĻŦāĻ‚ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻŽāĻĄā§‡āĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¯āĻžāĻšāĻžāĻ‡ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻŦāĻŋāĻ§āĻžāĻ¨ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ†āĻ¸āĻ˛ā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡? āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¯ā§‡ āĻ­āĻžāĻ°ā§āĻšā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§‡āĻļāĻŋāĻ¨ āĻšāĻ˛āĻ›ā§‡, S3 āĻŦāĻžāĻ˛āĻ¤āĻŋāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¯āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻ¤āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻāĻŸāĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡: āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ ExtraRuntimeValidation āĻĨā§‡āĻ•ā§‡ ProgramTestOptions - āĻāĻŸāĻž āĻāĻ‡ āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŽāĻšāĻžāĻ¨ āĻ¸ā§āĻ¯ā§‹āĻ—. āĻāĻ‡ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽā§‡āĻ° āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ¸ā§āĻŸāĻŽ āĻ—ā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻšāĻžāĻ˛āĻžāĻ¨āĨ¤ āĻāĻ‡ āĻ°āĻžāĻœā§āĻ¯ā§‡ āĻ­āĻžāĻ°ā§āĻšā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡āĻ° āĻ†āĻ‡āĻĒāĻŋ āĻ āĻŋāĻ•āĻžāĻ¨āĻž, āĻ‡āĻ‰āĻ†āĻ°āĻāĻ˛, āĻāĻŦāĻ‚ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ° āĻ¸āĻžāĻĨā§‡ āĻ†āĻ¸āĻ˛ā§‡ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ…ā§āĻ¯āĻžāĻ•ā§āĻŸ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§āĻ° āĻŽāĻ¤ā§‹ āĻ¤āĻĨā§āĻ¯ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋ āĻ•āĻ°ā§‡ webEndpoint āĻŦāĻžāĻ˛āĻ¤āĻŋ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ websiteUrl, āĻ¯āĻž āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ URL āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻ°āĻž āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ index document. āĻ¯āĻĻāĻŋāĻ“ āĻ†āĻŽāĻ°āĻž āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻ°āĻžāĻˇā§āĻŸā§āĻ° āĻĢāĻžāĻ‡āĻ˛ āĻŽāĻ§ā§āĻ¯ā§‡ āĻ–āĻ¨āĻ¨ āĻĒāĻžāĻ°ā§‡ bucket āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ‡ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻĄāĻŧā§āĻ¨, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ…āĻ¨ā§‡āĻ• āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•āĻ—ā§āĻ˛āĻŋ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻĻāĻ°āĻ•āĻžāĻ°ā§€ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋ āĻ•āĻ°ā§‡ āĻ¯āĻž āĻ†āĻŽāĻ°āĻž āĻšā§‡āĻ• āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻ•āĻ°āĻŋ:

integration.ProgramTest(t, &integration.ProgramTestOptions{
            // as before ...
        ExtraRuntimeValidation: func(t *testing.T, stack integration.RuntimeValidationStackInfo) {
            url := "http://" + stack.Outputs["websiteUrl"].(string)
            resp, err := http.Get(url)
            if !assert.NoError(t, err) {
                return
            }
            if !assert.Equal(t, 200, resp.StatusCode) {
                return
            }
            defer resp.Body.Close()
            body, err := ioutil.ReadAll(resp.Body)
            if !assert.NoError(t, err) {
                return
            }
            assert.Contains(t, string(body), "Hello, Pulumi!")
        },
    })

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§€ āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ āĻšā§‡āĻ•āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ¤ā§‹, āĻāĻ‡ āĻšā§‡āĻ•āĻŸāĻŋ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§‹āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĨā§‡āĻ‡ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ•āĻ˛ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§‡ go test. āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ†āĻ‡āĻ¸āĻŦāĻžāĻ°ā§āĻ—ā§‡āĻ° āĻŸāĻŋāĻĒ - āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ—ā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ¯āĻž āĻ†āĻĒāĻ¨āĻŋ āĻ•ā§‹āĻĄā§‡ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¤āĻž āĻ‰āĻĒāĻ˛āĻŦā§āĻ§āĨ¤

āĻ…āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨

āĻ•ā§‹āĻĄ āĻĒāĻ°ā§āĻ¯āĻžāĻ˛ā§‹āĻšāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻœāĻŽāĻž āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻ†āĻ—ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻ˛ā§‡ āĻ˛ā§āĻ¯āĻžāĻĒāĻŸāĻĒā§‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻ“āĻ¯āĻŧāĻž āĻ­āĻžāĻ˛āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻ¨ā§‡āĻ• āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻœā§€āĻŦāĻ¨āĻšāĻ•ā§āĻ°ā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŋ:

  • āĻŽāĻžāĻ°ā§āĻœ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ–ā§‹āĻ˛āĻž āĻŸāĻžāĻ¨ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§.
  • āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ•āĻŽāĻŋāĻŸā§‡āĻ° āĻœāĻŦāĻžāĻŦā§‡, āĻŽāĻžāĻ°ā§āĻœāĻŸāĻŋ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ•āĻŋāĻ¨āĻž āĻ¤āĻž āĻĻā§āĻŦāĻžāĻ° āĻšā§‡āĻ• āĻ•āĻ°āĻ¤ā§‡āĨ¤
  • āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻ•ā§āĻ°āĻŽā§‡, āĻ¯ā§‡āĻŽāĻ¨ āĻ°āĻžāĻ¤ā§‡ āĻŦāĻž āĻ¸āĻžāĻĒā§āĻ¤āĻžāĻšāĻŋāĻ• āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯āĨ¤
  • āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻŦāĻž āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ…āĻ‚āĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§‡, āĻ¯āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻŽāĻ¯āĻŧ āĻ§āĻ°ā§‡ āĻšāĻ˛ā§‡ āĻāĻŦāĻ‚ āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻšāĻžāĻ˛āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚/āĻ…āĻĨāĻŦāĻž āĻāĻ•āĻ‡ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻāĻ•āĻžāĻ§āĻŋāĻ•āĻŦāĻžāĻ° āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ—ā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯, āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻ…āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻāĻ•ā§€āĻ•āĻ°āĻŖ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•ā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻ•ā§āĻ°āĻŽāĻžāĻ—āĻ¤ āĻāĻ•ā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻ¸āĻžāĻĨā§‡, āĻāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§‡āĻ° āĻŽāĻ¤ā§‹ āĻāĻ•āĻ‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ•āĻ­āĻžāĻ°ā§‡āĻœ āĻĻā§‡āĻ¯āĻŧāĨ¤

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸āĻŋāĻ†āĻ‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ–āĻžāĻ¨ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ•āĻŋāĻ›ā§:

āĻ†āĻ°āĻ“ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ…āĻ¨ā§āĻ—ā§āĻ°āĻš āĻ•āĻ°ā§‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻĒāĻĄāĻŧā§āĻ¨ āĻ…āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻ¤āĻ°āĻŖ.

āĻ•ā§āĻˇāĻŖāĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§€ āĻĒāĻ°āĻŋāĻŦā§‡āĻļ

āĻāĻ•āĻŸāĻŋ āĻ–ā§āĻŦ āĻļāĻ•ā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§€ āĻ¸ā§āĻ¯ā§‹āĻ— āĻ¯āĻž āĻ–ā§‹āĻ˛ā§‡ āĻ¤āĻž āĻšāĻ˛ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ—ā§āĻ°āĻšāĻŖāĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡ āĻ•ā§āĻˇāĻŖāĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§€ āĻĒāĻ°āĻŋāĻŦā§‡āĻļ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ•ā§āĻˇāĻŽāĻ¤āĻžāĨ¤ āĻ§āĻžāĻ°āĻŖāĻž āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ•ā§‡ āĻ¸āĻšāĻœā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¸ā§āĻŦāĻžāĻ§ā§€āĻ¨ āĻĒāĻ°āĻŋāĻŦā§‡āĻļāĻ•ā§‡ āĻ­ā§‡āĻ™ā§‡ āĻĢā§‡āĻ˛āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•āĻŋāĻ›ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ CLI āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡ āĻŦāĻž āĻāĻ•āĻŸāĻŋ āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ—āĻŋāĻŸāĻšāĻžāĻŦ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻŦā§‡ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻ…āĻĢāĻžāĻ° āĻ•āĻ°ā§‡ āĻ—āĻŋāĻŸāĻšāĻžāĻŦ āĻ…ā§āĻ¯āĻžāĻĒ, āĻ¯āĻž āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° CI āĻĒāĻžāĻ‡āĻĒāĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋ āĻŸāĻžāĻ¨āĻ¤ā§‡ āĻ—ā§āĻ°āĻšāĻŖāĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ•ā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻ•āĻ°āĻŦā§‡āĨ¤ āĻļā§āĻ§ā§ GitHub āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§‡ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§āĻ¨, āĻāĻŦāĻ‚ Pulumi āĻ†āĻĒāĻ¨āĻžāĻ° CI āĻāĻŦāĻ‚ āĻĒā§āĻ˛ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒā§‚āĻ°ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻĒāĻĄā§‡āĻŸ āĻāĻŦāĻ‚ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¤āĻĨā§āĻ¯ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŦā§‡:

āĻĒā§āĻ˛ā§āĻŽāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•ā§‹āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ…āĻ‚āĻļ 2

āĻ¯āĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŽā§‚āĻ˛ āĻ—ā§āĻ°āĻšāĻŖāĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ˛ā§āĻŽāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨, āĻ¤āĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨ āĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¯āĻž āĻĻāĻ˛ā§‡āĻ° āĻ‰ā§ŽāĻĒāĻžāĻĻāĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ•ā§‡ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻŦā§‡ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻ—ā§āĻŖāĻŽāĻžāĻ¨ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻ¸ā§āĻĨāĻž āĻĻā§‡āĻŦā§‡āĨ¤

āĻĢāĻ˛āĻžāĻĢāĻ˛

āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–ā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāĻˇāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ…āĻ¨ā§‡āĻ• āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻŦāĻŋāĻ•āĻžāĻļ āĻ•ā§ŒāĻļāĻ˛ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻŦāĻŋāĻ•āĻžāĻļā§‡ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚, āĻ‡āĻ¨ā§āĻŸāĻŋāĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻāĻŦāĻ‚ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¤āĻžāĻ°āĻž āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻŦāĻŋāĻ¸ā§āĻ¤ā§ƒāĻ¤ āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ āĻŸā§‡āĻ¸ā§āĻŸāĻŋāĻ‚ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻšāĻžāĻšāĻŋāĻĻāĻž āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻŦāĻž āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ†āĻ‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻšāĻžāĻ˛āĻžāĻ¨ā§‹ āĻ¸āĻšāĻœāĨ¤

āĻĒā§āĻ˛ā§āĻŽāĻŋ - āĻ“āĻĒā§‡āĻ¨ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāĻˇāĻž āĻāĻŦāĻ‚ āĻŽā§‡āĻ˜ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ - āĻ†āĻœ āĻāĻŸāĻŋ āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§āĻ¨!

→ āĻĒā§āĻ°āĻĨāĻŽ āĻ…āĻ‚āĻļ

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨