āĻšā§‡āĻ˛āĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻĄā§‡āĻ‡āĻ˛āĻŋāĻŽā§‹āĻļāĻ¨ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡: āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž

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

āĻ•ā§‹āĻĨāĻž āĻĨā§‡āĻ•ā§‡ āĻļā§āĻ°ā§ āĻšāĻ˛ā§‹

āĻāĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻ°āĻž āĻ•āĻ­āĻžāĻ° āĻ•āĻ°āĻŦ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻžāĻ°āĻž āĻŦāĻŋāĻļā§āĻŦā§‡āĻ° āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻœā§āĻĄāĻŧā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŋāĨ¤

āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• Kubernetes āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋ āĻšāĻžāĻ˛, āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻšāĻžāĻ°ā§āĻŸ āĻāĻ•āĻŸāĻŋ āĻ—āĻŋāĻŸ āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻ¤ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¤āĻĨāĻžāĻ•āĻĨāĻŋāĻ¤ āĻ¸āĻžāĻ°āĻžāĻ‚āĻļ āĻšāĻžāĻ°ā§āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋāĨ¤ āĻŽā§‚āĻ˛āĻ¤, āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻšāĻžāĻ°ā§āĻŸ āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž āĻ˜ā§‹āĻˇāĻŖāĻž āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§‡ API āĻāĻŦāĻ‚ āĻāĻ° āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ—ā§āĻ˛āĻŋ āĻļā§āĻ°ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤

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

āĻšāĻ˛ā§āĻ¨ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒā§‡āĻ¤ā§‡.

āĻŦāĻŋāĻƒāĻĻā§āĻ°āĻƒ. āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻĒāĻĄāĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĨā§‡ āĻšā§‡āĻ˛āĻŽ 3-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĨāĻŽ āĻ°āĻŋāĻ˛āĻŋāĻœ āĻĒā§āĻ°āĻžāĻ°ā§āĻĨā§€ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ˜ā§‹āĻˇāĻŖāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¤ā§€āĻ¤ā§‡ āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋ āĻ¤āĻžāĻ° āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŽā§‚āĻ˛ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡ āĻ…āĻ¨ā§‡āĻ• āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻšāĻžāĻ°ā§āĻŸ āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻ•āĻ°ā§āĻŽāĻĒā§āĻ°āĻŦāĻžāĻš

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

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

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

āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°āĻŋāĻŦā§‡āĻļā§‡ āĻšāĻžāĻ°ā§āĻŸ āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛

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

āĻ¤āĻžāĻ›āĻžāĻĄāĻŧāĻž, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ›ā§‹āĻŸā§āĻŸ āĻĒāĻžāĻ‡āĻĨāĻ¨ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ“āĻĒā§‡āĻ¨āĻāĻĒāĻŋāĻ†āĻ‡ āĻ¸ā§āĻĒā§‡āĻ¸āĻŋāĻĢāĻŋāĻ•ā§‡āĻļāĻ¨ā§‡āĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸāĻ•ā§‡ āĻŦā§ˆāĻ§ āĻ•āĻ°ā§‡ āĻ•ā§āĻŦā§‡āĻŦāĻ˛, Chartmusem āĻ āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡.

āĻšāĻžāĻ°ā§āĻŸ āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻ•āĻ°ā§āĻŽāĻĒā§āĻ°āĻŦāĻžāĻšā§‡āĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦāĻ°ā§āĻŖāĻ¨āĻž

  1. āĻ¸ā§āĻĒā§‡āĻ¸āĻŋāĻĢāĻŋāĻ•ā§‡āĻļāĻ¨ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻĒāĻžāĻ‡āĻĒāĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻ•āĻžāĻœ āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž gazr.io āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ (āĻ˛āĻŋāĻ¨ā§āĻŸ, āĻ‡āĻ‰āĻ¨āĻŋāĻŸ-āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž)āĨ¤
  2. āĻĒāĻžāĻ‡āĻĨāĻ¨ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻĄāĻ•āĻžāĻ° āĻ‡āĻŽā§‡āĻœ āĻĒā§āĻļ āĻ•āĻ°āĻž āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡āĨ¤
  3. āĻļāĻžāĻ–āĻžāĻ° āĻ¨āĻžāĻŽ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻĒāĻ°āĻŋāĻŦā§‡āĻļ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻžāĨ¤
  4. Kubeval āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Kubernetes yaml āĻĢāĻžāĻ‡āĻ˛ āĻ¯āĻžāĻšāĻžāĻ‡ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤
  5. āĻāĻ•āĻŸāĻŋ āĻšāĻžāĻ°ā§āĻŸ āĻāĻŦāĻ‚ āĻāĻ° āĻŽā§‚āĻ˛ āĻšāĻžāĻ°ā§āĻŸā§‡āĻ° āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻŦā§ƒāĻĻā§āĻ§āĻŋ āĻ•āĻ°ā§āĻ¨ (āĻšāĻžāĻ°ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ āĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡)āĨ¤
  6. āĻšāĻžāĻ°ā§āĻŸ āĻŽāĻŋāĻ‰āĻœāĻŋāĻ¯āĻŧāĻžāĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻšāĻžāĻ°ā§āĻŸ āĻœāĻŽāĻž āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯āĻž āĻāĻ° āĻĒāĻ°āĻŋāĻŦā§‡āĻļā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻ˛ā§‡

āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻœā§āĻĄāĻŧā§‡ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž

āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻĢā§‡āĻĄāĻžāĻ°ā§‡āĻļāĻ¨

āĻāĻ•āĻŸāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻ›āĻŋāĻ˛ āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤āĻžāĻŽ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻĢā§‡āĻĄāĻžāĻ°ā§‡āĻļāĻ¨, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ Kubernetes āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸ āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• API āĻļā§‡āĻˇ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻ˜ā§‹āĻˇāĻŖāĻž āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§‡āĻ–āĻž āĻĻāĻŋāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ•āĻŋāĻ›ā§ Kubernetes āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸ āĻĢā§‡āĻĄāĻžāĻ°ā§‡āĻļāĻ¨ āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§‡ āĻĒā§ƒāĻĨāĻ• āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĢā§‡āĻĄāĻžāĻ°ā§‡āĻļāĻ¨āĻ¯ā§āĻ•ā§āĻ¤ āĻŦāĻ¸ā§āĻ¤ā§ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦāĻ¸ā§āĻ¤ā§ āĻŦāĻœāĻžāĻ¯āĻŧ āĻ°āĻžāĻ–āĻž āĻ•āĻ āĻŋāĻ¨ āĻšāĻ¯āĻŧā§‡ āĻĒāĻĄāĻŧā§‡āĨ¤

āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž āĻ¸ā§āĻŦāĻžāĻ§ā§€āĻ¨āĻ­āĻžāĻŦā§‡ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ¯āĻž āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ•ā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻ•āĻ­āĻžāĻŦā§‡ āĻ¸āĻ°āĻ˛ āĻ•āĻ°ā§‡āĻ›ā§‡ (āĻ†āĻŽāĻ°āĻž āĻĢā§‡āĻĄāĻžāĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ›āĻŋ; āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻŸāĻŋāĻ¤ā§‡ āĻ•āĻŋāĻ›ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡)āĨ¤

āĻœāĻŋāĻ“-āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻŸā§‡āĻĄ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻŸāĻĢāĻ°ā§āĻŽ

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻŸāĻĢāĻ°ā§āĻŽāĻŸāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§‡ 6āĻŸāĻŋ āĻ…āĻžā§āĻšāĻ˛ āĻœā§āĻĄāĻŧā§‡ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ - 3āĻŸāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻāĻŦāĻ‚ 3āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄā§‡ā§ˇ


āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻŸā§‡āĻĄ āĻĄāĻŋāĻĒā§āĻ˛āĻ¯āĻŧāĻŽā§‡āĻ¨ā§āĻŸ

āĻ—ā§āĻ˛ā§‹āĻŦāĻžāĻ˛ āĻšā§‡āĻ˛āĻŽ āĻŽāĻžāĻ¨

4 āĻ—ā§āĻ˛ā§‹āĻŦāĻžāĻ˛ āĻšā§‡āĻ˛āĻŽ āĻŽāĻžāĻ¨ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻšāĻžāĻ°ā§āĻŸā§‡āĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻŽāĻžāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

global:
  cloud: True
  env: staging
  region: us-central1
  clusterName: staging-us-central1

āĻŦā§ˆāĻļā§āĻŦāĻŋāĻ• āĻŽā§‚āĻ˛ā§āĻ¯āĻŦā§‹āĻ§

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

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

āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ:

{{/* Returns Horizontal Pod Autoscaler replicas for GraphQL*/}}
{{- define "graphql.hpaReplicas" -}}
{{- if eq .Values.global.env "prod" }}
{{- if eq .Values.global.region "europe-west1" }}
minReplicas: 40
{{- else }}
minReplicas: 150
{{- end }}
maxReplicas: 1400
{{- else }}
minReplicas: 4
maxReplicas: 20
{{- end }}
{{- end -}}

āĻšā§‡āĻ˛āĻŽ āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ

Kubernetes YAML-āĻ āĻŦāĻŋāĻļā§ƒāĻ™ā§āĻ–āĻ˛āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻāĻ‡ āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻŸāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ• āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸā§‡ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ†āĻŦā§‡āĻĻāĻ¨ā§‡āĻ° āĻ˜ā§‹āĻˇāĻŖāĻž

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

releases:
  - foo.world

foo.world:                # Release name
  services:               # List of dailymotion's apps/projects
    foobar:
      chart_name: foo-foobar
      repo: [email protected]:dailymotion/foobar
      contexts:
        prod-europe-west1:
          deployments:
            - name: foo-bar-baz
              replicas: 18
            - name: another-deployment
              replicas: 3

āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ¸āĻ‚āĻœā§āĻžāĻž

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


āĻœā§‡āĻ¨āĻ•āĻŋāĻ¨ā§āĻ¸ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ

āĻ—ā§‹āĻĒāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ•āĻŋ?

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

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽāĻ—ā§āĻ˛āĻŋ āĻ­āĻ˛ā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻ—ā§‹āĻĒāĻ¨ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻŦā§‡āĻ° āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¯āĻ–āĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻ¸ā§‡, āĻ¤āĻ–āĻ¨ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻšā§‡āĻ˛āĻŽā§‡ āĻĸā§‹āĻ•āĻžāĻ¨ā§ˇ

āĻāĻŸāĻŋ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž āĻ­āĻ˛ā§āĻŸā§‡āĻ° āĻ—ā§‹āĻĒāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ—ā§‹āĻĒāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡āĻ›āĻŋ:

secrets:                                                                                                                                                                                                        
     - secret_id: "stack1-app1-password"                                                                                                                                                                                  
       contexts:                                                                                                                                                                                                   
         - name: "default"                                                                                                                                                                                         
           vaultPath: "/kv/dev/stack1/app1/test"                                                                                                                                                               
           vaultKey: "password"                                                                                                                                                                                    
         - name: "cluster1"                                                                                                                                                                           
           vaultPath: "/kv/dev/stack1/app1/test"                                                                                                                                                               
           vaultKey: "password"

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

apiVersion: v1
data:
{{- range $key,$value := .Values.secrets }}
  {{ $key }}: {{ $value | b64enc | quote }}
{{ end }}
kind: Secret
metadata:
  name: "{{ .Chart.Name }}"
  labels:
    chartVersion: "{{ .Chart.Version }}"
    tillerVersion: "{{ .Capabilities.TillerVersion.SemVer }}"
type: Opaque

āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻŦāĻ‚ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž

āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻž

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

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻšāĻžāĻ°ā§āĻŸ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻāĻžāĻŽā§‡āĻ˛āĻž

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

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

āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

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

āĻ­āĻ˛ā§āĻŸā§‡ āĻœā§‡āĻ¨āĻ•āĻŋāĻ¨ā§āĻ¸ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋāĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻŦ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡

āĻ†āĻŽāĻ°āĻž āĻāĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ†āĻ›ā§‡ AppRole, āĻ¯āĻž āĻ­āĻ˛ā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ—ā§‹āĻĒāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž āĻĒāĻĄāĻŧā§‡āĨ¤

āĻ°ā§‹āĻ˛āĻŦā§āĻ¯āĻžāĻ• āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ¨āĻ¯āĻŧ

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

āĻ†āĻŽāĻ°āĻž GitOps āĻāĻ° āĻĻāĻŋāĻ•ā§‡ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻšā§āĻ›āĻŋ

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯

āĻ†āĻŽāĻ°āĻž āĻšāĻžāĻ°ā§āĻŸāĻŸāĻŋ āĻ¯ā§‡ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡ āĻ¤āĻžāĻ° āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§‡ āĻĢā§‡āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§‡ āĻšāĻžāĻ‡āĨ¤

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

āĻŦā§‡āĻļ āĻ•āĻŋāĻ›ā§ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ†āĻ›ā§‡:

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

āĻĻā§āĻŦāĻŋ-āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°

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

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

apiVersion: "v1"
kind: "DailymotionRelease"
metadata:
  name: "app1.ns1"
  environment: "dev"
  branch: "mybranch"
spec:
  slack_channel: "#admin"
  chart_name: "app1"
  scaling:
    - context: "dev-us-central1-0"
      replicas:
        - name: "hermes"
          count: 2
    - context: "dev-europe-west1-0"
      replicas:
        - name: "app1-deploy"
          count: 2
  secrets:
    - secret_id: "app1"
      contexts:
        - name: "default"
          vaultPath: "/kv/dev/ns1/app1/test"
          vaultKey: "password"
        - name: "dev-europe-west1-0"
          vaultPath: "/kv/dev/ns1/app1/test"
          vaultKey: "password"

  • āĻĒā§āĻ°āĻ¤āĻŋ āĻ†āĻŦā§‡āĻĻāĻ¨ 1 āĻ°āĻŋāĻ˛āĻŋāĻœ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ•ā§ƒāĻ¤ āĻšāĻžāĻ°ā§āĻŸ āĻ›āĻžāĻĄāĻŧāĻž)āĨ¤
  • āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ā§‡āĻ° āĻ—āĻŋāĻŸ āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§‡āĻ° āĻšāĻžāĻ°ā§āĻŸāĨ¤

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

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

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

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