werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

āĻ‰ā§ŽāĻ¸āĻŦā§‡āĻ° āĻ…āĻ‚āĻļ āĻšāĻŋāĻ¸ā§‡āĻŦā§‡ āĻ…āĻ¨ā§āĻˇā§āĻ āĻŋāĻ¤ DevOpsConf 27 āĻ¸āĻŽā§āĻŽā§‡āĻ˛āĻ¨ā§‡āĻ° āĻŽā§‚āĻ˛ āĻšāĻ˛ā§‡ 2019 āĻŽā§‡ RIT++ 2019, "āĻ•āĻ¨ā§āĻŸāĻŋāĻ¨āĻŋāĻ‰āĻ¯āĻŧāĻžāĻ¸ āĻĄā§‡āĻ˛āĻŋāĻ­āĻžāĻ°āĻŋ" āĻŦāĻŋāĻ­āĻžāĻ—ā§‡āĻ° āĻ…āĻ‚āĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§‡, āĻāĻ•āĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ "werf - āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ CI/CD āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛"āĨ¤ āĻāĻŸāĻž āĻ¸ā§‡āĻ¸āĻŦ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛ā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡ āĻŽā§‹āĻ¤āĻžāĻ¯āĻŧā§‡āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¯ā§‡ āĻ¸āĻ•āĻ˛ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻŦāĻ‚ āĻšā§āĻ¯āĻžāĻ˛ā§‡āĻžā§āĻœā§‡āĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧ, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¯āĻž āĻ…āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§‡ āĻ˛āĻ•ā§āĻˇāĻŖā§€āĻ¯āĻŧ āĻ¨āĻžāĻ“ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻžāĻ‡ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ“āĻĒā§‡āĻ¨ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻŸā§āĻ˛ā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ werf.

āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒāĻ° āĻĨā§‡āĻ•ā§‡, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ (āĻĒā§‚āĻ°ā§āĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻĄā§āĻ¯āĻžāĻĒ āĻ¨āĻžāĻŽā§‡ āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤) āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻāĻ¤āĻŋāĻšāĻžāĻ¸āĻŋāĻ• āĻŽāĻžāĻ‡āĻ˛āĻĢāĻ˛āĻ• āĻ›ā§āĻāĻ¯āĻŧā§‡āĻ›ā§‡ GitHub-āĻ 1000 āĻ¤āĻžāĻ°āĻž — āĻ†āĻŽāĻ°āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻ¯ā§‡ āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ•ā§āĻ°āĻŽāĻŦāĻ°ā§āĻ§āĻŽāĻžāĻ¨ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧ āĻ…āĻ¨ā§‡āĻ• DevOps āĻ‡āĻžā§āĻœāĻŋāĻ¨āĻŋāĻ¯āĻŧāĻžāĻ°āĻĻā§‡āĻ° āĻœā§€āĻŦāĻ¨āĻ•ā§‡ āĻ¸āĻšāĻœ āĻ•āĻ°ā§‡ āĻ¤ā§āĻ˛āĻŦā§‡āĨ¤

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ†āĻŽāĻ°āĻž āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§‡āĻĻāĻ¨ā§‡āĻ° āĻ­āĻŋāĻĄāĻŋāĻ“ (~47 āĻŽāĻŋāĻ¨āĻŋāĻŸ, āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡āĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ…āĻ¨ā§‡āĻ• āĻŦā§‡āĻļāĻŋ āĻ¤āĻĨā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ) āĻāĻŦāĻ‚ āĻĒāĻžāĻ ā§āĻ¯ āĻ†āĻ•āĻžāĻ°ā§‡ āĻāĻŸāĻŋ āĻĨā§‡āĻ•ā§‡ āĻŽā§‚āĻ˛ āĻ¨āĻŋāĻ°ā§āĻ¯āĻžāĻ¸āĨ¤ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻž!

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸āĻ•ā§‡ āĻ•ā§‹āĻĄ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ†āĻ˛ā§‹āĻšāĻ¨āĻžāĻŸāĻŋ āĻ†āĻ° āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĢ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¨āĻ¯āĻŧ, āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡ āĻ¸āĻŋāĻ†āĻ‡/āĻ¸āĻŋāĻĄāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻŦā§‡, āĻ¯āĻž āĻŦā§‹āĻāĻžāĻ¯āĻŧ āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĄāĻ•āĻžāĻ° āĻĒāĻžāĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (āĻ†āĻŽāĻŋ āĻāĻ‡ āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛ā§‡āĻ›āĻŋ 2016 āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ), āĻāĻŦāĻ‚ K8s āĻāĻŸāĻŋ āĻ‰ā§ŽāĻĒāĻžāĻĻāĻ¨ā§‡ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡ (āĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻ°āĻ“ 2017 āĻŦāĻ›āĻ°).

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ā§‡ āĻĄā§‡āĻ˛āĻŋāĻ­āĻžāĻ°āĻŋ āĻ•ā§‡āĻŽāĻ¨ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ?

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

āĻāĻ–āĻžāĻ¨ā§‡ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ¨ā§‹āĻŸ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

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

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

āĻŽāĻžā§āĻš āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨

āĻĻā§‡āĻ–ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻŦā§‡ āĻ†āĻĒāĻ¨āĻŋ 2019 āĻ¸āĻžāĻ˛ā§‡ āĻĄāĻ•āĻžāĻ° āĻ‡āĻŽā§‡āĻœ āĻ¤ā§ˆāĻ°āĻŋāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¯āĻ–āĻ¨ āĻ¸āĻŦāĻžāĻ‡ āĻœāĻžāĻ¨ā§‡ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛āĻ¸ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻšāĻ¯āĻŧ docker build?.. āĻāĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻŋ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¯ā§‡ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻ†āĻ›ā§‡:

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

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

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

āĻāĻŦāĻ‚ āĻāĻ–āĻžāĻ¨ā§‡ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

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

...āĻāĻŦāĻ‚ GitHub-āĻ āĻ¤āĻžāĻĻā§‡āĻ° āĻ•āĻ¤āĻ—ā§āĻ˛āĻŋ āĻ¤āĻžāĻ°āĻž āĻ†āĻ›ā§‡ āĻ¤āĻž āĻĻā§‡āĻ–ā§āĻ¨āĨ¤ āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻāĻ•āĻĻāĻŋāĻ•ā§‡, docker build āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ°ā§‚āĻĒā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž - āĻāĻ° āĻĒā§āĻ°āĻŽāĻžāĻŖ āĻšāĻ˛ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ¸āĻ‚āĻ—ā§āĻ°āĻžāĻšāĻ•āĻĻā§‡āĻ° āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛ āĻŦāĻŋāĻ•āĻžāĻļ, āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ•āĻŋāĻ›ā§ āĻ…āĻ‚āĻļ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤

werf āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸āĻŽāĻžāĻŦā§‡āĻļ

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻ•āĻžāĻļā§‡āĻ° āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧ (āĻĒā§āĻ°āĻ•āĻžāĻļ)

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

āĻāĻ‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻ¤ āĻ•āĻ āĻŋāĻ¨ āĻ•āĻŋ? āĻĒā§āĻ°āĻœāĻ¨āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§āĻ¨: āĻ—āĻŋāĻŸā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻŽāĻŋāĻŸ āĻĨā§‡āĻ•ā§‡, āĻ¯āĻž āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻŋāĻ¤ā§‡ āĻ…āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§€āĻ¯āĻŧ (āĻ…āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§€āĻ¯āĻŧ), āĻāĻ•āĻŸāĻŋ āĻĄāĻ•āĻžāĻ° āĻ‡āĻŽā§‡āĻœ, āĻ¯āĻž āĻāĻ•āĻ‡ āĻ°āĻžāĻ–āĻž āĻ‰āĻšāĻŋāĻ¤.

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

āĻŸā§āĻ¯āĻžāĻ—āĻŋāĻ‚ āĻ•ā§ŒāĻļāĻ˛

āĻĒā§āĻ°āĻĨāĻŽāĻŸāĻŋ āĻ¸āĻšāĻœ git āĻŸā§āĻ¯āĻžāĻ—. āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ›āĻŦāĻŋ āĻŸā§āĻ¯āĻžāĻ— āĻ¸āĻ™ā§āĻ—ā§‡ āĻāĻ•āĻŸāĻŋ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋ āĻ†āĻ›ā§‡ 1.0. Kubernetes āĻŽāĻžā§āĻš āĻāĻŦāĻ‚ āĻ‰āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻ†āĻ›ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ‡ āĻ›āĻŦāĻŋāĻŸāĻŋ āĻ†āĻĒāĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ. āĻ—āĻŋāĻŸ-āĻ āĻ†āĻŽāĻ°āĻž āĻ•āĻŽāĻŋāĻŸ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻ†āĻŽāĻ°āĻž āĻŸā§āĻ¯āĻžāĻ— āĻ•āĻ°āĻŋ 2.0. āĻ†āĻŽāĻ°āĻž āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ āĻĨā§‡āĻ•ā§‡ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻžāĻŦāĻ˛ā§€ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻŸā§āĻ¯āĻžāĻ— āĻ¸āĻš āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻ°āĻžāĻ–āĻŋ 2.0. āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋāĻ•ā§‡ āĻŽāĻžā§āĻšā§‡ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸āĻŋ āĻāĻŦāĻ‚, āĻ¯āĻĻāĻŋ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ āĻŋāĻ• āĻĨāĻžāĻ•ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ‰ā§ŽāĻĒāĻžāĻĻāĻ¨ā§‡āĨ¤

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻŸāĻŋ āĻš'āĻ˛ git āĻ•āĻŽāĻŋāĻŸ + āĻŸā§āĻ¯āĻžāĻ—. āĻŽāĻžāĻ¸ā§āĻŸāĻžāĻ° āĻļāĻžāĻ–āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻ— āĻ†āĻ›ā§‡ 1.0; āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻāĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ - āĻāĻ•āĻŸāĻŋ āĻšāĻŋāĻ¤ā§āĻ° āĻ‰āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡ āĻĒā§āĻ°āĻŋāĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§‡āĻœāĻŋāĻ‚ āĻ•āĻ¨āĻŸā§āĻ¯ā§āĻ° āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€āĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ—āĻŋāĻŸāĻĢā§āĻ˛ā§‹ āĻ…āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ•āĻ°āĻŋ: āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻļāĻžāĻ–āĻžāĻ¯āĻŧ (develop) āĻ†āĻŽāĻ°āĻž āĻ¨āĻ¤ā§āĻ¨ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋ, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§‡ āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ #c1. āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻāĻ‡ āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻŋ (#c1) āĻāĻ•āĻ‡ āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§‡ āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻŋāĻ­āĻŋāĻ‰āĻ¤ā§‡ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻŋāĨ¤ āĻ†āĻŽāĻ°āĻž āĻ•āĻŽāĻŋāĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻ‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻŋ #c2 и #c3.

āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ āĻ¯ā§‡ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§€āĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻŋāĨ¤ Git āĻ āĻāĻ•āĻŸāĻŋ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨ release_1.1 (āĻŦā§‡āĻ¸ā§‡ #c3 āĻĨā§‡āĻ•ā§‡ develop) āĻāĻ‡ āĻ°āĻŋāĻ˛āĻŋāĻœ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻžāĻ° āĻ•ā§‹āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨ā§‡āĻ‡, āĻ•āĻžāĻ°āĻŖ... āĻāĻŸāĻŋ āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋāĻ•ā§‡ āĻŽāĻžā§āĻšāĻžāĻ¯āĻŧāĻ¨ā§‡ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ†āĻŽāĻ°āĻž āĻŦāĻžāĻ— āĻ āĻŋāĻ• āĻ•āĻ°āĻŋ #c4 āĻāĻŦāĻ‚ āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡ āĻŽāĻžā§āĻšā§‡ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ. āĻāĻ•āĻ‡ āĻ¸āĻžāĻĨā§‡ āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ā§‡āĻ° āĻ•āĻžāĻœ āĻšāĻ˛āĻ›ā§‡ develop, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻ•ā§āĻ°āĻŽā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ release_1.1. āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧā§‡, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻ¸āĻ‚āĻ•āĻ˛āĻ¨ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§‡āĻœāĻŋāĻ‚āĻ¯āĻŧā§‡ āĻ†āĻĒāĻ˛ā§‹āĻĄ āĻ•āĻ°āĻŋ, āĻ¯āĻž āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻŽāĻ°āĻž āĻ–ā§āĻļāĻŋ (#c25).

āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻ°āĻŋāĻ˛āĻŋāĻœ āĻļāĻžāĻ–āĻžāĻ•ā§‡ (āĻĻā§āĻ°ā§āĻ¤-āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¸āĻš) āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻŋ (release_1.1) āĻŽāĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻ¤ā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻ— āĻ°ā§‡āĻ–ā§‡āĻ›āĻŋ (1.1) āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ‡ āĻ›āĻŦāĻŋāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻ‡ āĻāĻŸāĻŋ āĻ†āĻŦāĻžāĻ° āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž āĻ•ā§‡āĻŦāĻ˛ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ›āĻŦāĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻŸā§āĻ¯āĻžāĻ— āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻŋ (āĻāĻ–āĻ¨ āĻāĻŸāĻŋāĻ° āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻŸā§āĻ¯āĻžāĻ— āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ #c25 и 1.1) āĻāĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ āĻ‰āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ā§‡ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻŋāĨ¤

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

āĻ†āĻ¸āĻ˛ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻš'āĻ˛ āĻŽāĻžāĻ°ā§āĻœ āĻ•āĻŽāĻŋāĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻ¨āĻ“ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¨ā§‡āĻ‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĻā§āĻ°ā§āĻ¤-āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ†āĻŽāĻ°āĻž āĻ†āĻ°āĻ“ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ—āĻŋāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§ŒāĻļāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ... āĻ†āĻ¸ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§‡āĻ–āĻŋ:

FROM ruby:2.3 as assets
RUN mkdir -p /app
WORKDIR /app
COPY . ./
RUN gem install bundler && bundle install
RUN bundle exec rake assets:precompile
CMD bundle exec puma -C config/puma.rb

FROM nginx:alpine
COPY --from=assets /app/public /usr/share/nginx/www/public

āĻ†āĻ¸ā§āĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ¨ā§€āĻ¤āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻāĻŸāĻŋ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋ:

  • SHA256 āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻŋāĻ¤ā§āĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€ āĻĨā§‡āĻ•ā§‡ (ruby:2.3 и nginx:alpine), āĻ¯āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻšā§‡āĻ•āĻ¸āĻžāĻŽ;
  • āĻ¸āĻŦ āĻĻāĻ˛ (RUN, CMD āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡āĨ¤);
  • āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻĢāĻžāĻ‡āĻ˛ āĻĨā§‡āĻ•ā§‡ SHA256āĨ¤

... āĻāĻŦāĻ‚ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻĨā§‡āĻ•ā§‡ āĻšā§‡āĻ•āĻ¸āĻžāĻŽ (āĻ†āĻŦāĻžāĻ° SHA256) āĻ¨āĻŋāĻ¨āĨ¤ āĻāĻ‡ āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ° āĻĄāĻ•āĻžāĻ° āĻ‡āĻŽā§‡āĻœā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻāĻŽāĻ¨ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§āĨ¤

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

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

werf āĻŸā§āĻ¯āĻžāĻ—āĻŋāĻ‚

āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĢ-āĻ āĻ†āĻŽāĻ°āĻž āĻ†āĻ°āĻ“ āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻ—āĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻŦāĻŋāĻ˛ā§āĻĄ āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋ āĻ¨āĻŋāĻšā§āĻ›āĻŋ āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž... āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ†āĻŽāĻ°āĻž āĻĻā§āĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻĄāĻ•āĻžāĻ° āĻ‡āĻŽā§‡āĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ›āĻŋ, āĻ†āĻŽāĻ°āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻŦāĻ˛āĻŋ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧ и āĻ­āĻžāĻŦāĻŽā§‚āĻ°ā§āĻ¤āĻŋ.

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

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

āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ•ā§ŒāĻļāĻ˛ āĻ•āĻŋ?

  1. āĻ†āĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§ āĻ•āĻŋāĻ›ā§āĻ‡ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž. āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻŸā§āĻ¯āĻžāĻ—ā§‡āĻ° āĻŦāĻŋāĻļāĻžāĻ˛ āĻœāĻŸ āĻ–ā§‹āĻ˛āĻžāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻ…āĻ°ā§āĻĨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻž āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻ¸āĻšāĻœāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤
  2. āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§‡āĻŸ. āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ›āĻŦāĻŋ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛ā§‡āĻ¨ āĻāĻŦāĻ‚ CI āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§‡āĻ–āĻž āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻ§āĻžāĻ°āĻ•āĻŸāĻŋ āĻ‰āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ā§‡ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻšāĻŋāĻ¤ā§āĻ° āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻŦā§‡ - āĻ¯ā§‡āĻŸāĻŋ āĻāĻ–āĻ¨āĻ“ āĻ•ā§‡āĻ‰ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡āĻ¨āĻŋāĨ¤ āĻāĻŸāĻŋ āĻ…āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§€āĻ¯āĻŧ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹āĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻ•ā§‡ āĻšāĻ¤ā§āĻ¯āĻž āĻ•āĻ°ā§‡āĨ¤
  3. āĻ¨ā§€āĻ˛ āĻ¸āĻŦā§āĻœ. āĻāĻ•āĻŸāĻŋ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋ āĻ‰āĻĒāĻšā§‡ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡ - āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻ¯āĻŸāĻŋāĻ¤ā§‡ āĻ›āĻŦāĻŋ āĻ†āĻĒāĻ˛ā§‹āĻĄ āĻ•āĻ°āĻŋāĨ¤ āĻ†āĻ—ā§‡āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻŽāĻ¤ā§‹ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻ†āĻĒāĻ¨āĻŋ āĻ•ā§‹āĻ¨ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŸāĻŋ āĻ¸āĻžāĻĢ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¯āĻž āĻ“āĻ­āĻžāĻ°āĻĢā§āĻ˛ā§‹ āĻšāĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›ā§‡?
  4. āĻ¸āĻŽāĻ¯āĻŧāĻŽāĻ¤ā§‹. 1 āĻŽāĻžāĻ¸ā§‡āĻ° āĻŦā§‡āĻļāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ›āĻŦāĻŋ āĻŽā§āĻ›āĻŦā§‡āĻ¨? āĻ¤āĻŦā§‡ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻĨāĻžāĻ•āĻŦā§‡ āĻ¯āĻž āĻāĻ• āĻŽāĻžāĻ¸ āĻ§āĻ°ā§‡ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ ...
  5. āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻ•āĻŋ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°ā§āĻ¨āĨ¤

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

āĻ†āĻŽāĻ°āĻž āĻ•āĻŋ āĻāĻ¸ā§‡āĻ›āĻŋ werf? āĻ†āĻŽāĻ°āĻž āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻŋ:

  1. āĻ—āĻŋāĻŸ āĻšā§‡āĻĄ: āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŸā§āĻ¯āĻžāĻ—, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻļāĻžāĻ–āĻž - āĻ§āĻ°ā§‡ āĻ¨āĻŋāĻšā§āĻ›āĻŋ āĻ¯ā§‡ āĻšāĻŋāĻ¤ā§āĻ°āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ—āĻŋāĻŸā§‡ āĻŸā§āĻ¯āĻžāĻ— āĻ•āĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•āĻŋāĻ›ā§ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĻāĻ°āĻ•āĻžāĻ° (āĻāĻŦāĻ‚ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ—āĻŋāĻŸā§‡āĻ‡ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻ¤ā§‡ āĻšāĻŦā§‡);
  2. āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻļā§āĻāĻŸāĻŋ āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ āĻĒāĻžāĻŽā§āĻĒ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ;
  3. āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻ°ā§‡āĻĒā§āĻ˛āĻŋāĻ•āĻžāĻ¸ā§‡āĻŸ (āĻ¯āĻž āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¤āĻŋ āĻĒā§āĻ°āĻ•āĻžāĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡), āĻāĻŦāĻ‚ āĻ†āĻŽāĻ°āĻž āĻšā§‡āĻ˛āĻŽ āĻ°āĻŋāĻ˛āĻŋāĻœāĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻ•ā§āĻ¯āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ• āĻšāĻŋāĻ¤ā§āĻ°āĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻ•āĻ˛ā§āĻĒāĻ¨āĻž āĻ•āĻ°āĻ›āĻŋā§ˇ

... āĻāĻŦāĻ‚ āĻāĻ‡ āĻ¸ā§‡āĻŸ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻĻāĻž āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨ - āĻ›āĻŦāĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¯āĻž āĻ†āĻŽāĻ°āĻž āĻŽā§āĻ›āĻŦ āĻ¨āĻžāĨ¤ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻŋ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨āĻžāĻĨ āĻŽāĻžā§āĻšā§‡āĻ° āĻ›āĻŦāĻŋāĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ‡ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ“ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻŋāĨ¤

āĻŽāĻžā§āĻš āĻ¸ā§āĻĨāĻžāĻĒāĻ¨

āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ˜ā§‹āĻˇāĻŖāĻžāĻŽā§‚āĻ˛āĻ•āĻ¤āĻž

āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ°āĻĨāĻŽ āĻ¯ā§‡ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŸāĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋ āĻ†āĻŽāĻŋ āĻĻā§ƒāĻˇā§āĻŸāĻŋ āĻ†āĻ•āĻ°ā§āĻˇāĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¤āĻž āĻšāĻ˛ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ°ā§‹āĻ˛āĻ†āĻ‰āĻŸ, āĻ˜ā§‹āĻˇāĻŖāĻžāĻŽā§‚āĻ˛āĻ•āĻ­āĻžāĻŦā§‡ āĻ˜ā§‹āĻˇāĻŖāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻ†āĻ¸āĻ˛ YAML āĻ¨āĻĨāĻŋāĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ°ā§‡ āĻšāĻ˛āĻŽāĻžāĻ¨ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ–ā§āĻŦ āĻ†āĻ˛āĻžāĻĻāĻžāĨ¤ āĻ•āĻžāĻ°āĻŖ Kubernetes āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡:

  1. āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€;
  2. āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ¤āĻĨā§āĻ¯;
  3. āĻ…āĻ¨ā§‡āĻ• āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŽāĻžāĻ¨;
  4. āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻ¸āĻš āĻŦāĻŋāĻ­āĻžāĻ—;
  5. āĻ­āĻ°ā§āĻ¤āĻŋ āĻ“āĻ¯āĻŧā§‡āĻŦāĻšā§āĻ•ā§‡āĻ° āĻ…āĻ‚āĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ•āĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨;
  6. āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ•āĻ¨ā§āĻŸā§āĻ°ā§‹āĻ˛āĻžāĻ° (āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§‚āĻšā§€) āĻāĻ° āĻ•āĻžāĻœā§‡āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĨ¤

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

āĻāĻ‡ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ 2-āĻ“āĻ¯āĻŧā§‡ āĻŽāĻžāĻ°ā§āĻœ. āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻšā§‡āĻ˛āĻŽā§‡āĨ¤

āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻ†āĻ›ā§‡ 3-āĻ“āĻ¯āĻŧā§‡ āĻŽāĻžāĻ°ā§āĻœ, āĻ¯āĻž āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ­āĻŋāĻ¨ā§āĻ¨:

  • āĻ¤ā§āĻ˛āĻ¨āĻž āĻ¸āĻ°ā§āĻŦāĻļā§‡āĻˇ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ и āĻ¨āĻ¤ā§āĻ¨, āĻ†āĻŽāĻ°āĻž āĻ•āĻŋ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻžāĻ•āĻžāĻ¨;
  • āĻ¤ā§āĻ˛āĻ¨āĻž āĻ¨āĻ¤ā§āĻ¨ и āĻœā§€āĻŦāĻŋāĻ¤, āĻ†āĻŽāĻ°āĻž āĻ•ā§€ āĻ¯ā§‹āĻ— āĻŦāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻĻā§‡āĻ–āĻŋ;
  • āĻ¸āĻŽāĻˇā§āĻŸāĻŋ āĻĒā§āĻ¯āĻžāĻš āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻœā§€āĻŦāĻŋāĻ¤.

āĻ†āĻŽāĻ°āĻž āĻšā§‡āĻ˛āĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ 1000+ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŋ, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻ†āĻ¸āĻ˛ā§‡ 2-āĻ“āĻ¯āĻŧā§‡ āĻŽāĻžāĻ°ā§āĻœ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĨāĻžāĻ•āĻŋāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻ¤ā§‡ āĻŦā§‡āĻļ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž āĻ†āĻŽāĻ°āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ¯āĻžāĻš āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ¯āĻž āĻšā§‡āĻ˛āĻŽāĻ•ā§‡ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤

āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻ°ā§‹āĻ˛āĻ†āĻ‰āĻŸ āĻ…āĻŦāĻ¸ā§āĻĨāĻž

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

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ•āĻ°āĻ¤ā§‡, āĻāĻ‡ āĻ¸ā§āĻ•āĻŋāĻŽāĻŸāĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ˛āĻŋāĻ™ā§āĻ• āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ - āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§‡āĻˇ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ•āĻžāĻ° āĻ¯āĻž āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ API āĻĨā§‡āĻ•ā§‡ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻŦā§‡ āĻāĻŦāĻ‚ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻ†āĻ°āĻ“ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŸāĻŋ āĻĒā§āĻ°ā§‡āĻ°āĻŖ āĻ•āĻ°āĻŦā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ—ā§‹-āĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ“āĻĒā§‡āĻ¨ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĻ›āĻŋ - cubedog (āĻāĻ° āĻ˜ā§‹āĻˇāĻŖāĻž āĻĻā§‡āĻ–ā§āĻ¨ āĻāĻ–āĻžāĻ¨ā§‡), āĻ¯āĻž āĻāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ werf-āĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤āĨ¤

werf āĻ¸ā§āĻ¤āĻ°ā§‡ āĻāĻ‡ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ•āĻžāĻ°ā§‡āĻ° āĻ†āĻšāĻ°āĻŖ āĻĄāĻŋāĻĒā§āĻ˛ā§‹āĻ¯āĻŧāĻŽā§‡āĻ¨ā§āĻŸ āĻŦāĻž āĻ¸ā§āĻŸā§‡āĻŸāĻĢā§āĻ˛āĻ¸ā§‡āĻŸā§‡ āĻ°āĻžāĻ–āĻž āĻŸā§€āĻ•āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŽā§‚āĻ˛ āĻŸā§€āĻ•āĻž- fail-mode - āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻ…āĻ°ā§āĻĨ āĻŦā§‹āĻā§‡:

  • IgnoreAndContinueDeployProcess — āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ—ā§āĻ˛āĻŋ āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻšāĻžāĻ˛āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ‡;
  • FailWholeDeployProcessImmediately — āĻāĻ‡ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻā§‡āĻ¯āĻŧ;
  • HopeUntilEndOfDeployProcess — āĻ†āĻŽāĻ°āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻ¯ā§‡ āĻāĻ‡ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§‡āĻ° āĻļā§‡āĻˇā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻŦāĻ‚ āĻŸā§€āĻ•āĻž āĻŽāĻžāĻ¨ āĻāĻ‡ āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧ fail-mode:

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

āĻ¯āĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŋ, āĻ¤āĻ–āĻ¨ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ (MongoDB) āĻāĻ–āĻ¨āĻ“ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ¨āĻžāĻ“ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ - āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻŦā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻļā§āĻ°ā§ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻāĻŦāĻ‚ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻāĻ–āĻ¨āĻ“ āĻ¸āĻžā§āĻšāĻžāĻ˛āĻŋāĻ¤ āĻšāĻŦā§‡āĨ¤

werf-āĻ kubedog-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ°āĻ“ āĻĻā§āĻŸāĻŋ āĻŸā§€āĻ•āĻž āĻ†āĻ›ā§‡:

  • failures-allowed-per-replica - āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§‚āĻĒā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤ āĻĢāĻ˛āĻ¸ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž;
  • show-logs-until — āĻ¯āĻ¤āĻ•ā§āĻˇāĻŖ āĻ¨āĻž werf āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻĒāĻĄ āĻĨā§‡āĻ•ā§‡ āĻ˛āĻ— āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ (stdout-āĻ) āĻ¸ā§‡āĻ‡ āĻŽā§āĻšā§‚āĻ°ā§āĻ¤āĻŸāĻŋāĻ•ā§‡ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ•āĻ°ā§‡ā§ˇ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻšāĻ¯āĻŧ PodIsReady (āĻĒāĻĄā§‡ āĻŸā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ• āĻ†āĻ¸āĻ¤ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻ˛ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻšāĻžāĻ‡ āĻ¨āĻž āĻāĻŽāĻ¨ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯), āĻ¤āĻŦā§‡ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ“ āĻŦā§ˆāĻ§: ControllerIsReady и EndOfDeploy.

āĻ†āĻŽāĻ°āĻž āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻ†āĻ° āĻ•āĻŋ āĻšāĻžāĻ‡?

āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻĻā§āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ†āĻŽāĻ°āĻž āĻšāĻžāĻ‡:

  • āĻĻā§‡āĻ–āĻ¤ā§‡ āĻ˛āĻ— - āĻāĻŦāĻ‚ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ—ā§āĻ˛āĻŋ, āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°āĻŋāĻ¤ā§‡ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ¨āĻ¯āĻŧ;
  • āĻŸā§āĻ°ā§āĻ¯āĻžāĻ• āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ, āĻ•āĻžāĻ°āĻŖ āĻ¯āĻĻāĻŋ āĻ•āĻžāĻœāĻŸāĻŋ āĻ•āĻ¯āĻŧā§‡āĻ• āĻŽāĻŋāĻ¨āĻŋāĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ "āĻ¨āĻŋāĻƒāĻļāĻŦā§āĻĻā§‡" āĻā§āĻ˛ā§‡ āĻĨāĻžāĻ•ā§‡, āĻ¤āĻŦā§‡ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ•ā§€ āĻ˜āĻŸāĻ›ā§‡ āĻ¤āĻž āĻŦā§‹āĻāĻž āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ;
  • иĐŧĐĩŅ‚ŅŒ āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ°ā§‹āĻ˛āĻŦā§āĻ¯āĻžāĻ• āĻ¯āĻĻāĻŋ āĻ•āĻŋāĻ›ā§ āĻ­ā§āĻ˛ āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ (āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻœāĻžāĻ¨āĻž āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ)āĨ¤ āĻ°ā§‹āĻ˛āĻ†āĻ‰āĻŸāĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ• āĻšāĻ¤ā§‡ āĻšāĻŦā§‡: āĻšāĻ¯āĻŧ āĻāĻŸāĻŋ āĻļā§‡āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻž āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ¤āĻžāĻ° āĻ†āĻ—ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸ā§‡āĨ¤

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

āĻāĻ•āĻŸāĻŋ āĻ•ā§‹āĻŽā§āĻĒāĻžāĻ¨āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻĄā§‡āĻ˛āĻŋāĻ­āĻžāĻ°āĻŋāĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§‡ (āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ, āĻĒā§āĻ°āĻ•āĻžāĻļ, āĻ¸ā§āĻĨāĻžāĻĒāĻ¨) āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻ•āĻŸāĻŋ CI āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻŦāĻ‚ āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ āĻ¯āĻĨā§‡āĻˇā§āĻŸ werf.

āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°ā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡:

werf - Kubernetes-āĻ CI/CD-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ˛ (āĻ“āĻ­āĻžāĻ°āĻ­āĻŋāĻ‰ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĄāĻŋāĻ“ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ)

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

āĻ­āĻŋāĻĄāĻŋāĻ“ āĻāĻŦāĻ‚ āĻ¸ā§āĻ˛āĻžāĻ‡āĻĄ

āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻĨā§‡āĻ•ā§‡ āĻ­āĻŋāĻĄāĻŋāĻ“ (~47 āĻŽāĻŋāĻ¨āĻŋāĻŸ):

āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§‡āĻĻāĻ¨ā§‡āĻ° āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž:

āĻĻā§āĻ°āĻˇā§āĻŸāĻŦā§āĻ¯

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦā§āĻ˛āĻ—ā§‡ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§‡āĻĻāĻ¨:

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

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