Sobes.tech
Junior

Билд аз куҷо меояд?

sobes.tech AI

Ҷавоб аз AI

Сохтани (билд) нармафзори натиҷаи раванди компилятсия, пайвасткунӣ ва бастабандии коди манбаи лоиҳа бо захираҳои зарурӣ (китобхонаҳо, файлҳои конфигуратсия, тасвирҳо ва ғайра) дар як бастаи иҷрошаванда ё тақсимшаванда мебошад.

Дар сохтани дастӣ, таҳиягар ин қадамҳоро дастӣ ё бо скриптҳо дар компютери маҳаллии худ иҷро мекунад. Дар сохтани автоматӣ, системаҳои пайвастаи муттаҳидсозӣ (CI) мисли Jenkins, GitLab CI, GitHub Actions, TeamCity ва дигарҳо истифода мешаванд.

Раванди сохтани автоматӣ тақрибан чунин менамояд:

  1. Триггер: Тағйирот дар анбор (масалан, commit дар шохи муайян) ё иҷрои сохтани нақшакашӣ пайплайни сохтаниро оғоз мекунад.
  2. Гирифтани код: Системаи CI версияи ҳозираи коди манбаъро аз системаи назорати версия (Git, SVN ва ғайра) мегирад.
  3. Сохтани: Командҳои сохтани мувофиқи конфигуратсияи лоиҳа (масалан, mvn clean package, npm build, dotnet publish) иҷро мешаванд. Ин марҳила дохил мекунад, ки коди манбаъро компилятсия кунад, тестҳои ягона иҷро кунад ва артефактҳои сохтаниро созад.
  4. Тест: Мумкин аст, ки намудҳои гуногуни тестҳои автоматӣ (интегратсионӣ, e2e ва ғайра) иҷро шаванд.
  5. Бастабандӣ: Артефактҳои сохтани ба формати мувофиқ (WAR/JAR барои Java, тасвири Docker, бастаҳои NPM, msi ва ғайра) бастабандӣ мешаванд.
  6. Пабликӣ: Артефакти тайёр (сохт) дар анбори артефактҳо (Nexus, Artifactory, Docker Registry) нашр мешавад, ки аз он барои паҳнкунӣ ё тестҳои минбаъда гирифта мешавад.

Тавре ки ин, сохтани аз раванди автоматӣ ё дастӣ, ки одатан аз ҷониби системаи CI пас аз тағйирот дар анбор иҷро мешавад, пайдо мешавад.