TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

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

HotFix āĻ•āĻ°āĻ¤ā§‡, āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ:

  1. āĻ†āĻĒāĻ¨āĻŋ āĻ¯ā§‡ āĻ°āĻŋāĻ˛āĻŋāĻœāĻŸāĻŋāĻ¤ā§‡ HotFix āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨ āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨ā§ˇ
  2. āĻ°āĻŋāĻ˛āĻŋāĻœā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻžāĻ— āĻ āĻŋāĻ• āĻ•āĻ°ā§āĻ¨
  3. āĻ°āĻŋāĻ˛āĻŋāĻœ āĻļāĻžāĻ–āĻžāĻ¯āĻŧ āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§āĻ¨
  4. āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻŸā§āĻ¯āĻžāĻ— āĻ°ā§‹āĻ˛ āĻ†āĻ‰āĻŸ āĻ•āĻ°ā§āĻ¨

āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ 1,3,4 āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŸāĻŋāĻ¤ā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ†āĻ—ā§‡, āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻāĻŦāĻ‚ āĻœāĻŸāĻŋāĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ¸ā§āĻĒāĻ°ā§āĻļ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡ - āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ¸āĻĢāĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°. āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨āĻļāĻŸāĻŸāĻŋāĻ¤ā§‡ āĻ¸ā§‡āĻŽāĻ­āĻžāĻ°āĻ•ā§‡ āĻ¸āĻ‚āĻ•ā§āĻˇā§‡āĻĒā§‡ āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨āĨ¤ TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ†āĻĒāĻ¨āĻŋ āĻ˛āĻŋāĻ™ā§āĻ•ā§‡ āĻ†āĻ°āĻ“ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨: 1.

āĻāĻ‡ āĻĒā§‹āĻ¸ā§āĻŸā§‡ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¸ā§‡āĻŽāĻ­āĻžāĻ° и āĻŸā§āĻ°āĻžāĻ™ā§āĻ•-āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ• āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨.

āĻŸā§āĻ°āĻžāĻ™ā§āĻ•-āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ• āĻŦāĻŋāĻ•āĻžāĻļā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒā§āĻ°āĻ•āĻžāĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻāĻ‡ āĻ°āĻŋāĻ˛āĻŋāĻœā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ (āĻšāĻŸāĻĢāĻŋāĻ•ā§āĻ¸) āĻāĻ‡ āĻļāĻžāĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻŦāĻĻā§āĻ§āĨ¤

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

  • āĻ¸āĻŋāĻ†āĻ‡ āĻŦāĻŋāĻ˛ā§āĻĄ

  • āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ°āĻŋāĻ˛āĻŋāĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

  • āĻāĻ•āĻŸāĻŋ āĻ°āĻŋāĻ˛āĻŋāĻœ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

  • āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž:

  • āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§‹āĻĄ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ Git āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛āĨ¤ āĻĒā§‹āĻ¸ā§āĻŸāĻŸāĻŋ āĻ­āĻžāĻ¨ā§āĻĄāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦā§‡ https://gitlab.com/anton_patsev/automation-maven-hotfix.
  • āĻŸāĻŋāĻŽāĻ¸āĻŋāĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻāĻŦāĻ‚ āĻāĻœā§‡āĻ¨ā§āĻŸāĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ Teamcity āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻāĻŦāĻ‚ āĻāĻœā§‡āĻ¨ā§āĻŸ āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ Docker-āĻ°āĻšāĻ¨āĻž
  • āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŸāĻŋāĻŽāĻ¸āĻŋāĻŸāĻŋ āĻāĻœā§‡āĻ¨ā§āĻŸ, java, maven, git āĻ‡āĻ¨ā§āĻ¸āĻŸāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡

āĻŸāĻŋāĻŽāĻ¸āĻŋāĻŸāĻŋāĻ¤ā§‡ "āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨ āĻŽāĻžāĻ­ā§‡āĻ¨ āĻšāĻŸāĻĢāĻŋāĻ•ā§āĻ¸" āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ 4āĻŸāĻŋ āĻ•āĻžāĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤

  • āĻ¸āĻŋāĻ†āĻ‡ āĻŦāĻŋāĻ˛ā§āĻĄ

  • āĻĒā§āĻ°āĻ•āĻžāĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨

  • āĻŽāĻžāĻ­ā§‡āĻ¨ āĻ‡āĻ¨āĻ•ā§āĻ°āĻŋāĻŽā§‡āĻ¨ā§āĻŸ āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ (āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§āĻ¨))

  • āĻŽāĻžāĻ­ā§‡āĻ¨ āĻ°āĻŋāĻ˛āĻŋāĻœ (āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ°āĻŋāĻ˛āĻŋāĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡)

āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡āĻ° āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨āĻļāĻŸ:

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸

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

āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• VCS āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋāĨ¤ VCS āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ˛āĻžāĻ˛ āĻŦā§ƒāĻ¤ā§āĻ¤āĻžāĻ•āĻžāĻ° āĻšāĻ¯āĻŧ.

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ­āĻŋāĻ¸āĻŋāĻāĻ¸āĻ—ā§āĻ˛āĻŋ HTTPS āĻ¸ā§āĻ•āĻŋāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤ āĻ­āĻŋāĻ¤āĻ°ā§‡ āĻļāĻžāĻ–āĻž āĻ¸ā§āĻĒā§‡āĻ¸āĻŋāĻĢāĻŋāĻ•ā§‡āĻļāĻ¨: āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŸā§āĻ¯āĻžāĻ— āĻĻā§‡āĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ¤:

+:refs/heads/*
+:refs/tags/*

4āĻŸāĻŋ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

  • BRANCH_FOR_INCREMENT
  • TAG_FROM_VERSION
  • TEAM_USER
  • TEAM_USER_EMAIL

BRANCH_FOR_INCREMENT āĻāĻŦāĻ‚ TAG_FROM_VERSION-āĻāĻ° āĻŽāĻžāĻ¨ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°āĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ–āĻžāĻ˛āĻŋ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ•ā§€ āĻ†āĻĒāĻ˛ā§‹āĻĄ/āĻ¯ā§‹āĻ— āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ CI āĻŦāĻŋāĻ˛ā§āĻĄ āĻŦā§āĻ¯āĻ¤ā§€āĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ•ā§€ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

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

āĻœāĻ¨ā§āĻ¯ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŽāĻžāĻ­ā§‡āĻ¨ āĻŽā§āĻ•ā§āĻ¤āĻŋ

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ¸āĻŋāĻ†āĻ‡ āĻŦāĻŋāĻ˛ā§āĻĄ**āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻœā§‡ āĻ¸āĻŋāĻ†āĻ‡ āĻŦāĻŋāĻ˛ā§āĻĄ āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ• āĻ§āĻžāĻĒ āĻāĻŽāĻ­āĻŋāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻŽāĻžāĻ­ā§‡āĻ¨ āĻŽā§āĻ•ā§āĻ¤āĻŋ

āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻœā§‡ āĻŽāĻžāĻ­ā§‡āĻ¨ āĻŽā§āĻ•ā§āĻ¤āĻŋ 2āĻŸāĻŋ āĻ§āĻžāĻĒāĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ§āĻžāĻĒ āĻšāĻ˛ āĻ¯ā§‡ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻšā§‡āĻ• āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻŽāĻžāĻ˛āĻŋāĻ•. āĻ¯āĻĻāĻŋ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻ¨āĻž āĻšāĻ¯āĻŧ āĻŽāĻžāĻ˛āĻŋāĻ•, āĻ¤āĻžāĻ°āĻĒāĻ° āĻŸāĻžāĻ¸ā§āĻ• āĻĒāĻĄāĻŧā§‡āĨ¤

BRANCH=$(git branch | grep * | cut -d ' ' -f2)
echo "$BRANCH"
if [[ "$BRANCH" != "master" ]]; then
  echo 'Branch is not master';
  echo 'Aborting';
  exit 1;
fi

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻ§āĻžāĻĒāĻŸāĻŋ āĻŽāĻžāĻ¨āĻ• mvn āĻĒā§āĻ°āĻ•āĻžāĻļ: āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°ā§āĻ¨ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ¸āĻš --āĻŦā§āĻ¯āĻžāĻš-āĻŽā§‹āĻĄ

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻĒā§āĻ°āĻ•āĻžāĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨

āĻāĻ•āĻŸāĻŋ āĻ°āĻŋāĻ˛āĻŋāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻšāĻŸāĻĢāĻŋāĻ•ā§āĻ¸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻŸāĻžāĻ¸ā§āĻ•āĻž āĻāĻŸāĻž āĻ•āĻ°ā§‡ āĻĒā§āĻ°āĻ•āĻžāĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻļāĻžāĻ–āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨. āĻ¤āĻžāĻ° 2āĻŸāĻŋ āĻ§āĻžāĻĒ āĻ†āĻ›ā§‡āĨ¤

āĻĒā§āĻ°āĻĨāĻŽ āĻ§āĻžāĻĒ āĻšā§‡āĻ• āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻ¨āĻ¯āĻŧ āĻŽāĻžāĻ˛āĻŋāĻ•, āĻāĻŦāĻ‚ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻŸāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖāĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋāĻ¤ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ pom.xML āĻļāĻŦā§āĻĻāĻŸāĻŋ āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°ā§‡āĻ¨āĻŋ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ

BRANCH=$(git branch | grep * | cut -d ' ' -f2)
echo "$BRANCH"
if [[ "$BRANCH" == "master" ]]; then
  echo 'Branch is master';
  echo 'Aborting';
  exit 1;
fi

echo "Get version package from pom.xml"
version=`python -c "import xml.etree.ElementTree as ET; print(ET.parse(open('pom.xml')).getroot().find('{http://maven.apache.org/POM/4.0.0}version').text)"`

echo "Check SNAPSHOT"
if [[ $version == "*SNAPSHOT*" ]]; then
    echo "******************* W A R N I N G *************************"
    echo "************ You are create branch for SNAPSHOTS ******************"
    echo "***********************************************************"
    exit 1
fi

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

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

# ЗдĐĩŅŅŒ ĐŋĐžĐģŅƒŅ‡Đ°ĐĩĐŧ developerConnection иС Ņ„Đ°ĐšĐģĐ° pom.xml
developerConnection=$(xmllint -xpath "/*[local-name() = 'project' ]//*[local-name() = 'developerConnection']/text()" pom.xml | sed  's|scm:git:ssh://||')
echo developerConnection
echo $developerConnection
# ЗдĐĩŅŅŒ ĐŧĐĩĐŊŅĐĩĐŧ / ĐŊĐ° : в URL Đ´ĐģŅ git_remote_url
git_remote_url=$(echo $developerConnection| sed 's/gitlab.com//gitlab.com:/g')
echo git_remote_url
echo $git_remote_url

git remote set-url origin $git_remote_url

# ЕŅĐģи вŅ‹ ĐŊĐĩ иŅĐŋĐžĐģŅŒĐˇŅƒĐĩŅ‚Đĩ ввŅŅ‚Ņ€ĐžĐĩĐŊĐŊŅƒŅŽ вОСĐŧĐžĐļĐŊĐžŅŅ‚ŅŒ Teamcity ĐŋĐžĐģŅƒŅ‡ĐĩĐŊиŅ user и email иС ~/.gitconfig, Ņ‚Đž ĐŧĐžĐļĐŊĐž ŅƒĐēаСаŅ‚ŅŒ иŅ… СдĐĩŅŅŒ
echo 'git config user.name %TEAM_USER%'
git config user.name %TEAM_USER%
echo 'git config user.email %TEAM_USER_EMAIL%'
git config user.email %TEAM_USER_EMAIL%

# ЗдĐĩŅŅŒ ĐŋĐžĐģŅƒŅ‡Đ°ĐĩĐŧ вĐĩŅ€ŅĐ¸ŅŽ иС Ņ„Đ°ĐšĐģĐ° pom.xml
echo "Get version package from pom.xml"
version=`python -c "import xml.etree.ElementTree as ET; print(ET.parse(open('pom.xml')).getroot().find('{http://maven.apache.org/POM/4.0.0}version').text)"`
echo $version

# ПоŅ‡ĐĩĐŧŅƒ-Ņ‚Đž ĐąĐĩС fetch вŅ‹Đ´Đ°Đ˛Đ°ĐģĐž ĐžŅˆĐ¸ĐąĐēŅƒ.
git fetch

if [ `git branch -a | egrep "${version}$"` ]
then
    echo "Branch exists"
    exit 1
fi

# ХОСдаĐĩĐŧ ĐąŅ€Đ°ĐŊŅ‡ Ņ‚ОК вĐĩŅ€ŅĐ¸Đ¸, ĐēĐžŅ‚ĐžŅ€Ņ‹Đš ĐąŅ‹Đģ в Ņ„Đ°ĐšĐģĐĩ pom.xml
echo "Create branch"
git checkout -b $version

# ЧиŅŅ‚Ņ‹Đš git вŅĐĩĐŗĐ´Đ° ĐŋŅ€ĐĩĐ´ĐģĐ°ĐŗĐ°ĐĩŅ‚ ĐŊĐ°ŅŅ‚Ņ€ĐžĐ¸Ņ‚ŅŒ ĐŋĐžĐģиŅ‚иĐēŅƒ ĐžŅ‚ĐŋŅ€Đ°Đ˛Đēи.
git config --global push.default simple

# ПŅƒŅˆĐ¸Đŧ в вĐĩŅ‚ĐēŅƒ ŅĐžĐ˛ĐŋĐ°Đ´Đ°ŅŽŅ‰ŅƒŅŽ Ņ вĐĩŅ€ŅĐ¸ĐĩĐš в pom.xml
echo "Push release branch"
git push --set-upstream origin $version

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻŽāĻžāĻ­ā§‡āĻ¨ āĻ‡āĻ¨āĻ•ā§āĻ°āĻŋāĻŽā§‡āĻ¨ā§āĻŸ āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸

āĻŸāĻžāĻ¸ā§āĻ•āĻŸāĻŋ 6 āĻŸāĻŋ āĻ…āĻ‚āĻļ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ—āĻ āĻŋāĻ¤āĨ¤ āĻāĻŸāĻŋ āĻ°āĻŋāĻĢā§āĻ¯āĻžāĻ•ā§āĻŸāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻāĻ–āĻ¨āĻ“ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤

āĻĒā§āĻ°āĻĨāĻŽ āĻ§āĻžāĻĒ āĻšāĻ˛ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻ¨āĻ¯āĻŧ āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻŽāĻžāĻ˛āĻŋāĻ•. āĻ¯āĻĻāĻŋ āĻŦā§āĻ°āĻžāĻžā§āĻš āĻŽāĻžāĻ˛āĻŋāĻ• āĻŸāĻžāĻ¸ā§āĻ• āĻĒāĻĄāĻŧā§‡

BRANCH=$(git branch | grep * | cut -d ' ' -f2)
echo "$BRANCH"
if [[ "$BRANCH" == "master" ]]; then
  echo 'Branch is master';
  echo 'Aborting';
  exit 1;
fi

# ЗдĐĩŅŅŒ ĐŋĐžĐģŅƒŅ‡Đ°ĐĩĐŧ вĐĩŅ€ŅĐ¸ŅŽ иС Ņ„Đ°ĐšĐģĐ° pom.xml
echo "Get version package from pom.xml"
BRANCH=`python -c "import xml.etree.ElementTree as ET; print(ET.parse(open('pom.xml')).getroot().find('{http://maven.apache.org/POM/4.0.0}version').text)"`
# ПŅ€Đ¸Ņ…ОдиŅ‚ŅŅ Đ´ĐĩĐģĐ°Ņ‚ŅŒ checkout ĐŊĐ° ĐŊŅƒĐļĐŊŅ‹Đš ĐąŅ€Đ°ĐŊŅ‡.
# ИĐŊĐ°Ņ‡Đĩ git status ĐŋĐžĐēаСŅ‹Đ˛Đ°ĐĩŅ‚ detached Đē ĐŊŅƒĐļĐŊĐžĐŧŅƒ ĐąŅ€Đ°ĐŊŅ‡Ņƒ.
# НŅƒĐļĐŊĐž Ņ‡Ņ‚ОйŅ‹ git status ĐŋĐžĐēаСŅ‹Đ˛Đ°Đģ ĐŋŅ€ĐžŅŅ‚Đž ĐąŅ€Đ°ĐŊŅ‡
git checkout $BRANCH
# Đ­ĐēŅĐŋĐžŅ€Ņ‚иŅ€ŅƒĐĩĐŧ ĐŋĐĩŅ€ĐĩĐŧĐĩĐŊĐŊŅƒŅŽ bash в ĐŋĐĩŅ€ĐĩĐŧĐĩĐŊĐŊŅƒŅŽ Teamcity Đ´ĐģŅ Đ´Đ°ĐģŅŒĐŊĐĩĐšŅˆĐĩĐŗĐž иŅĐŋĐžĐģŅŒĐˇĐžĐ˛Đ°ĐŊиŅ.
echo "##teamcity[setParameter name='BRANCH_FOR_INCREMENT' value='$BRANCH']"

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ Maven āĻ§āĻžāĻĒāĻŸāĻŋ pom.xml āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻŦāĻžāĻ—āĻĢāĻŋāĻ•ā§āĻ¸ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ›ā§‡āĨ¤

āĻ—ā§‹āĻ˛: āĻŽāĻžāĻ­ā§‡āĻ¨ā§‡āĻ° āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻāĻ• āĻ˛āĻžāĻ‡āĻ¨ā§‡ āĻ†āĻ›ā§‡

build-helper:parse-version versions:set -DnewVersion=${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.nextIncrementalVersion} versions:commit

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ§āĻžāĻĒ āĻšāĻ˛ āĻ—āĻŋāĻŸ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻžāĻ¸ āĻ¤āĻĨā§āĻ¯ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻ•āĻ°āĻž:

echo 'cat pom.xml'
cat pom.xml
echo 'git status'
git status
echo 'git remote -v'
git remote -v
echo 'git branch'
git branch

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

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

āĻāĻŦāĻ‚ %BRANCH_FOR_INCREMENT% āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž Teamcity-āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻļāĻžāĻ–āĻžāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻļ āĻ•āĻ°ā§‡

# ЗдĐĩŅŅŒ ĐŋĐžĐģŅƒŅ‡Đ°ĐĩĐŧ developerConnection иС Ņ„Đ°ĐšĐģĐ° pom.xml
developerConnection=$(xmllint -xpath "/*[local-name() = 'project' ]//*[local-name() = 'developerConnection']/text()" pom.xml | sed  's|scm:git:ssh://||')
echo developerConnection
# ЗдĐĩŅŅŒ ĐŧĐĩĐŊŅĐĩĐŧ / ĐŊĐ° : в URL Đ´ĐģŅ git_remote_url
git_remote_url=$(echo $developerConnection| sed 's/gitlab.com//gitlab.com:/g')
echo git_remote_url
echo $git_remote_url

git remote set-url origin $git_remote_url

# ЕŅĐģи вŅ‹ ĐŊĐĩ иŅĐŋĐžĐģŅŒĐˇŅƒĐĩŅ‚Đĩ ввŅŅ‚Ņ€ĐžĐĩĐŊĐŊŅƒŅŽ вОСĐŧĐžĐļĐŊĐžŅŅ‚ŅŒ Teamcity ĐŋĐžĐģŅƒŅ‡ĐĩĐŊиŅ user и email иС ~/.gitconfig, Ņ‚Đž ĐŧĐžĐļĐŊĐž ŅƒĐēаСаŅ‚ŅŒ иŅ… СдĐĩŅŅŒ
echo 'git config user.name %TEAM_USER%'
git config user.name %TEAM_USER%
echo 'git config user.email %TEAM_USER_EMAIL%'
git config user.email %TEAM_USER_EMAIL%
echo 'git add .'
git add .
echo 'git commit -m "Increment bugfix"'
git commit -m "Increment bugfix"

git push --set-upstream origin %BRANCH_FOR_INCREMENT%

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻĒāĻžā§āĻšāĻŽ āĻ§āĻžāĻĒ āĻĢāĻžāĻ‡āĻ˛ āĻĨā§‡āĻ•ā§‡ āĻĒā§‡āĻ¯āĻŧā§‡ pom.xML āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§āĻ¨ āĻŸāĻŋāĻŽāĻ¸āĻŋāĻŸāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ TAG_FROM_VERSION. āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–ā§āĻ¯ āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ pom.xML āĻ¸āĻžāĻŽāĻ¨ā§‡ v āĻ…āĻ•ā§āĻˇāĻ° āĻ›āĻžāĻĄāĻŧāĻžāĨ¤ āĻāĻŦāĻ‚ āĻŸā§āĻ¯āĻžāĻ—, āĻāĻ‡ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡āĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡, āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻļā§āĻ°ā§āĻ¤ā§‡ āĻ…āĻ•ā§āĻˇāĻ° v āĻ†āĻ›ā§‡āĨ¤

echo "Get version package from pom.xml"
VERSION_AFTER_CHANGE=`python -c "import xml.etree.ElementTree as ET; print(ET.parse(open('pom.xml')).getroot().find('{http://maven.apache.org/POM/4.0.0}version').text)"`
echo $VERSION_AFTER_CHANGE
echo "##teamcity[setParameter name='TAG_FROM_VERSION' value='v$VERSION_AFTER_CHANGE']"

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

āĻˇāĻˇā§āĻ  āĻ§āĻžāĻĒ - āĻŸā§āĻ¯āĻžāĻ—āĻŋāĻ‚ bugfix āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻŽā§āĻ¯āĻžāĻ­ā§‡āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ¸āĻš āĻ˛āĻ•ā§āĻˇā§āĻ¯.

āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ—ā§‹āĻ˛:

-Dtag=%TAG_FROM_VERSION% scm:tag

TeamCity āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ Maven āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ HotFix-āĻāĻ° āĻ…āĻŸā§‹āĻŽā§‡āĻļāĻ¨

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

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