aws codebuild tutorial
AWS CodeBuild DevOps инструмент:
деклариране на статични променливи в c ++
В Част 1 от инструментите AWS DevOps , видяхме как Услуга CodeCommit е бил използван за съхраняване на изходния код в защитена онлайн услуга за контрол на версиите, което е предпоставка за всяко внедряване на DevOps.
В Част 2 от поредицата , ще научим повече за това как кодът от хранилището на CodeCommit може да бъде компилиран в облака с помощта на услугата CodeBuild и помощната програма за изграждане ANT или Maven.
Предложено четене => Absolute DevOps Training Series
Най-важното е, че не е необходимо да се предоставя сървър за изграждане. След това произведените артефакти се съхраняват в кофата на AWS S3, която е проста услуга за съхранение за съхранение и извличане на всяко количество данни в интернет. Тези 2 дейности в двата урока формират част от Непрекъснатата интеграция.
В този урок ще видим също как Дженкинс може да бъде интегриран с CodeBuild.
Предварително условие:
- Сметка в AWS за предпочитане безплатно ниво.
- Добра и бърза интернет връзка.
- Използван регион AWS - Азиатско-Тихоокеанския регион (Сингапур).
Забележка: Ако сте използвали AWS регион (Мумбай) за услугата CodeCommit, този регион не се поддържа в CodeBuild. Трябва да използвате съответния поддържан регион и следователно тук се използва Сингапурски регион.
Какво ще научите:
- Процес на изграждане в CodeBuild
- Създаване на проект за изграждане
- Интеграция на Дженкинс с AWS CodeBuild
- Обобщение
- Препоръчително четене
Процес на изграждане в CodeBuild
Следва процесът, който се следва в компилацията при използване на услугата CodeBuild:
- Изходният код се извлича от хранилището CodeCommit. Изходният код може също да се съхранява в GitHub или дори в кофа S3.
- Услугата CodeBuild разчита на файл, наречен buildspec.yml който съдържа някои команди за изпълнение по време на фазите на изграждане като Инсталиране, Предварително изграждане, Изграждане и След изграждане. Този файл трябва да е в ROOT на папката на проекта и трябва да бъде ангажиран в хранилището.
- Ако в случай, че не искате да използвате buildspec.yml за да извършите компилацията, командите на maven също могат да се използват директно.
- И накрая, генерираните артефакти като J2EE JAR / WAR / EAR файл се съхраняват в кофата S3.
- Известията, използващи AWS Simple Notification Service (SNS), също могат да бъдат конфигурирани да изпращат резултатите от компилирането по имейл на съответните потребители.
Тук ще видим как да използваме хранилището CodeCommit (вижте част 1) и командата maven, за да изградим нашия проект и да съхраним артефакта в кофата S3.
Създаване на проект за изграждане
Влезте в AWS и стартирайте услугата CodeBuild. Щракнете, за да създадете нов проект за изграждане.
Въведете подробностите, както следва:
Име на проекта: AWS-HelloWorld
Доставчик на източника: AWS CodeCommit
Хранилище: AWS-HelloWorld
приложение за времева карта за iphone и android
Операционна система: Ubuntu
Времетраене: Java
Версия за изпълнение: openjdk-8
Спецификация на компилация: Вмъкване на команди за изграждане
Команди за изграждане: mvn чиста инсталация
Изходни файлове: Target / AWS-HelloWorld-1.0.0.war (Това е във формат на Artifact ID-Version, взета от POM файла).
Артефакти: Къде да поставите артефактите от този проект за изграждане.
Тип: Amazon S3
Име: HWJavaWebTarget (Това ще бъде папката в кофата).
Име на кофа: hwcodebuildbucket (Кофата трябва да бъде създадена първоначално преди стартиране на компилацията и трябва да бъде с малки букви според конвенциите).
Следните 3 скрийншота са от една форма за конфигуриране на проекта за изграждане:
Щракнете Продължете и след това Запазете. Компилацията вече може да се задейства, като щракнете върху Започнете да изграждате бутон.
Щракнете отново върху Започнете да изграждате за да видите напредъка на изпълнението.
Компилацията вече е завършена успешно и артефактите се качват в кофата S3.
Изглед на кофата S3
Файлът WAR вече може да се използва за разполагане на подходящите сървъри на приложения.
Интеграция на Дженкинс с AWS CodeBuild
Както видяхме в урок № 1 от тази поредица за това как Дженкинс е конфигуриран с хранилището CodeCommit за активиране на активността на непрекъснатата интеграция. Тъй като хранилището за контрол на версиите е конфигурирано, вече можете да задействате компилация, като интегрирате CodeBuild със същата задача за изграждане на Jenkins.
Приставката AWS CodeBuild към Jenkins трябва да бъде инсталирана за интеграция. Можете да го изтеглите и инсталирате от тук .
Използвайте Jenkins => Управление на приставки, за да инсталирате приставката.
Изберете AWS CodeBuild като среда за изграждане и изберете подходящия проект CodeBuild, конфигуриран в AWS, както е показано по-долу. Ключовете за достъп на IAM и Тайните ключове също ще трябва да бъдат въведени като част от конфигурацията.
Ключовият момент, който трябва да се запомни тук, е, че компилацията не е задействана в локалната среда, а се извършва в облака. Така че няма нужда да се предоставят сървъри за изграждане.
Обобщение
Чрез този урок ние разбрахме как хранилището CodeCommit може да се използва за изтегляне на кода и изпълнение на компилация на Maven с помощта на услугата CodeBuild.
Изграждането може да се задейства и от Дженкинс. След това генерираният артефакт, който е предимно WAR файл, се съхранява в кофа AWS S3.
В нашия предстоящ урок ще видим как WAR файлът от сегмента S3 може да се използва за разполагане на сървъра за приложения Tomcat с помощта на услугата AWS CodeDeploy.
най-доброто безплатно приложение за изтегляне на музика за android
Препоръчително четене
- Уроци за задълбочено затъмнение за начинаещи
- Използване на инструмента за автоматизация на изграждането на Maven и настройката на проекта на Maven за селен - селен урок # 24
- Урок за SVN: Управление на изходния код с помощта на Subversion
- Tortoise SVN Tutorial: Ревизии в кодовото хранилище
- Най-добрите инструменти за разработка на AWS за разработка и внедряване в облак
- Урок за AWS Elastic Beanstalk за внедряване на .NET уеб приложение
- AWS CodeCommit Урок за внедряване на DevOps в облак
- Изграждане на приложение за една страница с помощта на AngularJS (Урок с пример)