Sobes.tech
Junior

Откъде идва сборката (build)?

sobes.tech AI

Отговор от AI

Сглобяването (build) на софтуера се извършва като резултат от процеса на компилиране, свързване и опаковане на изходния код на проекта заедно с необходимите ресурси (библиотеки, конфигурационни файлове, изображения и др.) в единен изпълним или разпространим пакет.

При ръчно сглобяване, разработчикът изпълнява тези стъпки ръчно или с помощта на скриптове на своя локален компютър. При автоматизирано сглобяване се използват системи за непрекъсната интеграция (CI), като Jenkins, GitLab CI, GitHub Actions, TeamCity и други.

Процесът на автоматизирано сглобяване изглежда приблизително така:

  1. Тригър: Промяна в репозитория (например, комит в определена клонка) или изпълнение на планирано сглобяване стартира pipeline за сглобяване.
  2. Получаване на кода: CI системата взема актуалната версия на изходния код от системата за контрол на версиите (Git, SVN и др.).
  3. Сглобяване: Изпълняват се команди за сглобяване според конфигурацията на проекта (например, mvn clean package, npm build, dotnet publish). Този етап включва компилиране на изходния код, изпълнение на модулни тестове и създаване на артефакти за сглобяване.
  4. Тестване: Могат да бъдат стартирани различни видове автоматизирани тестове (интеграционни, e2e и др.).
  5. Опаковане: Артефактите за сглобяване се опаковат във съответния формат (WAR/JAR за Java, Docker образ, NPM пакет, msi и др.).
  6. Публикуване: Готовият артефакт (build) се публикува в хранилище за артефакти (Nexus, Artifactory, Docker Registry), откъдето може да бъде взет за разгръщане или допълнително тестване.

По този начин, сглобяването произхожда от автоматизиран или ръчен процес на компилиране, свързване и опаковане на изходния код, обикновено изпълняван от системата CI след промени в репозитория.