Архив рубрики: HOWTO’s

Вопросы, касаюшиеся установки и настройки различных приложений.

Linux: монтирование внешнего HDD

3 октября 2018
 

 Наконец-то прикупил себе внешний HDD (Western Digital My Passport 1TB), который планируется использовать для бекапов с помощью timeshift (ну или напишу свой велосипед). Сейчас он определяется как: [simterm] … Oct 02 17:38:10 setevoy-arch-home kernel: usb 2-1.2: new high-speed USB device number 53 using ehci-pci Oct 02 17:38:10 setevoy-arch-home kernel: usb 2-1.2: New USB device found,… Читать далее »

Nexus: установка, запуск, деплой в репозиторий + NGINX и SSL

27 сентября 2018
 

 У Android-команды поломался «деплой» через отправку письма с вложением на Gmail (было сделано ещё до меня), и появилась необходимость быстренько «накостылить» репозиторий. Планировался он давно, но сейчас будет без всякой автоматизации — просто руками поднять, запустить, что бы они могли деплоить. Использовать будем free-версию Sonatype Nexus, запускать будем на AWS EC2, из Docker-образа, бекенд будет… Читать далее »

Jenkins: Allure reports plugin в Scripted pipeline

26 сентября 2018
 

 Allure — фреймворк для создания репортов о результатах выполнения тестов. Для Jenkins имеется плагин allure-jenkins-plugin, который сегодня и будем подключать в Scripted Pipeline Jenkins-а. Документация тут>>> и тут>>>. Устанавливаем плагин: Переходим в http://jenkinsurl/configureTools/, настраиваем Allure Commandline: Переходим в http://jenkinsurl/pipeline-syntax/, и генерируем скрипт: В результате весь скрипт наших автотестов выглядит сейчас так: #!/usr/bin/env groovy node { stage(‘Run tests’) { dir (‘ciscripts’)… Читать далее »

Python: скрипт добавления комментария в Jira из Jenkins

25 сентября 2018
 

 В продолжение поста Jenkins: добавление комментария в Jira-тикет после билда — напишем свой костыль, который будет добавлять комментарии в Jira-тикеты. Скрипт будет парсить заголовок коммита, в котором будет указан Jira-тикет, а потом через Jira API добавлять комментарий. Писать будем на Python — полгода не писал на нём, наконец-то появился повод. Парсинг git-коммита Для того, что бы… Читать далее »

Jenkins: добавление комментария в Jira-тикет после билда

21 сентября 2018
 

 Задача — добавлять комментарий в Jira-тикет после выполнения Jenkins-билда в scripted pipeline job. Используем JIRA Pipeline Steps. Докмументация и примеры — тут>>>. Устанавливаем его — Manage Jenkins > Manage Plugins: Настраиваем доступ к Jira — переходим в Manage Jenkins > Configure system, в JIRA Steps добавляем сайт: Добавляем тестовую задачу: node { echo «Run job» jiraAddComment idOrKey: ‘BMEDIOS-198’, comment: ‘Test’,… Читать далее »

Ansible: with_fileglob — копирование нескольких шаблонов из директории

10 сентября 2018
 

 Необходимо скопировать пачку файлов — задач для supervisord. В Ansible используем with_fileblob: … — name: «Copy supervisor tasks» template: src: «{{ item }}» dest: «/etc/supervisor/conf.d/{{ item | basename | regex_replace(‘.j2’,») }}» owner: «root» group: «root» mode: 0644 with_fileglob: — templates/*.j2 … С помощью фильтра basename — получаем имя файла из {{ item }}, а с… Читать далее »

AWS: CloudFormation — создание S3 Website hosting и CloudFront distribution

5 сентября 2018
 

 Пример создания хостинга статического сайта в AWS S3 и подключении к нему AWS CloudFront CDN, к которому подключается SSL сертификат из AWS ACM. Для сайта используем домен site.azinchenko.com. Получившийся шаблон доступен в репозитории тут>>>. AWS::S3::Bucket Начнём с создания корзины, используем ресурс AWS::S3::Bucket: { «AWSTemplateFormatVersion»: «2010-09-09», «Description»: «AWS CloudFormation S3 website hosting with CloudFront CND stack»,… Читать далее »

AWS: Application Load Balancer — HTTP => HTTPS и host-header редиректы

30 августа 2018
 

 Имеется Application Load Balancer, за которым находятся три хоста: два фронтенда, и один master. Задачи следующие: добавить редиректы HTTP => HTTPS добавить редиректы доменов dev.admin.dme.example.com на master-хост, а остальных — на frontend-хосты добавить редиректы www <=> non-www Редирект HTTP на HTTPS Тут столкнулся с очередным «подарком» от AWS CloudFormation: After checking our internal information, the newly… Читать далее »

AWS: миграция RTFM 3.0 (final) — CloudFormation и Ansible роли

25 августа 2018
 

 Прошёл почти год, как я начал миграцию v2, закончил на посте Ansible: миграция RTFM 2.11 – хост Services – установка PHP, PHP-FPM. Основной её идеей на тот момент было максимально использовать возможности AWS и Ansible — чисто из интереса и для практики, т.к. на предыдущем месте работы её было совсем мало (там в основном был Azure… Читать далее »

Jenkins: Scripted Pipeline — подтверждение выполнения для Production окружения

16 августа 2018
 

 Есть несколько задач, которые выполняются в Scripted Pipeline. В задачах выполняется провижен CloudFormation и запуск Ansible плейбука на Dev и Production. Что бы исключить случайный запуск Production задачи — хочется добавить шаг подтверждения действия. Используем pipeline-input-step и класс BooleanParameterDefinition. Добавляем функцию verify(): def verify() { stage(‘Verify’) { def userInput = input( id: ‘userInput’, message: ‘This… Читать далее »