Ответы пользователя по тегу DevOps
  • Российское (реестровое) ПО для мониторинга инфраструктуры?

    @d-stream
    Готовые решения - не подаю, но...
    А взять и в реестр заглянуть - мешают религиозные убеждения?
    Я там увидел по 02.08 - 1350 записей
    Но мне это не нужно и подробнее я копать не буду)
    Ответ написан
    1 комментарий
  • Как расшарить wildcard ssl сертификат по разным VDS?

    @d-stream
    Готовые решения - не подаю, но...
    И если что-то пошло не так - раздеплой на 100500 серверов положит их все...
    По-моему вариант индивидуального certbot на каждом сервере будет несколько получше
    Ответ написан
    Комментировать
  • Как правильно использовать SonarQube c SVN?

    @d-stream
    Готовые решения - не подаю, но...
    Сканеров может быть много и разных и не все они, скажем так, вполне шустры.
    Поэтому зачастую разносят процесс скана и проверку результатов. Например в CI - только асинхронный пинок "а ну-ка отскань вон ту репу с хэшем коммита xxx", а где-то в CD - уже проверка "каковы результаты скана по хэшу коммита xxx". Совсем "взрослые" с достаточно бюрократичным процессом приёмки и отправки в эксплуатацию - так или иначе контролируют флаги скана в бюрократической системе (например jira) где по флоу будущий дистрибутив начнёт рассматриваться как кандидат при условии наличия флагов успешного сканирования и прочих согласований.
    В такой цепочке минута-час-день на сканировании - не критичны, т.к. другие процедуры занимают дни)

    А так для более-менее больших проектов - наверное не стоит прям на каждый коммит травить SQ, можно на pull/merge request - там и запаса по времени побольше (ну если реально ревьюит народ реквесты)). Ну или на коммиты не ждать результата, а только давать пинок на скан - нехай SQ шлёт репорт скана автору коммита по почте.
    Ответ написан
    Комментировать
  • Как исправить ошибку 503 при запросе через haproxy?

    @d-stream
    Готовые решения - не подаю, но...
    А почему бы не научить haproxy проверять живость бэкэнда для начала?
    А потом ещё и показывать красивую статистику.
    Ответ написан
  • Развертывание приложения для тестирования?

    @d-stream
    Готовые решения - не подаю, но...
    Собственно вокруг любых систем контроля версий существуют и "системы сборки" - то есть как раз то что может по прописанному в репозитории что-то соберет и например отправит (на хосты/стенды или в хранилище артефактов).

    Как пример - тот же gitlab и gitlab runners - то есть по коммиту/пендалю будет интерпретироваться .gitlab-ci.yml в котором могут быть прописаны нужные шаги (build, test, deploy и т.п.)

    Ну или jenkins, по сути так же интерпретирующий jenkinsfile

    Обычно инструкции по последовательности сборки-тестов-деплоя могут ветвиться в зависимости от того что за коммит или пул реквест и делать разное. К примеру при коммите в фичаветку - билд и тесты, при пулл реквесте - доппроверки, при успешном мерже в dev и успешной сборке - слив полученного в хранилище (а потом отдельной линией разлив этого из хранилища на тестовые стенды или прод)

    p.s. по сути всё это повторяет ручные операции, если их хорошо описать aka автоматизирует
    При желании это можно и навелосипедить, но задача типовая и поэтому есть 100500 решений почти от каждого крупняка... правда почти все они на начальном этапе несколько избыточны, но тем и хороши
    Ответ написан
    4 комментария
  • GITLAB ci, проблема в последовательности джобов, как лучше сделать?

    @d-stream
    Готовые решения - не подаю, но...
    Можно конечно наплодить нотификаторов для каждого задания... Но как мне кажется проще "врезать" нотификацию в сами задания шага test

    ps. Успех/неуспех проще всего ловить взводя флаг в before_script/script и обрабатывать в after_script
    Ответ написан
    Комментировать
  • Как использовать Gitlab runner SaaS на самом gitlab.com?

    @d-stream
    Готовые решения - не подаю, но...
    А чего бы не попробовать?
    То есть тупо нарисовать простейший .gitlab-ci.yml из одного стейджа:

    image: alpine:latest 
    stages:
      - Build
    Build:
      stage: Build
      script:
        - echo Worked!

    и потом полюбоваться на лог

    По крайней мере по ссылке пишут про своего рода "продуктовые" (стартапы, opensource) linux раннеры на гугловых машинках со свежим докером
    Ответ написан
  • Как загрузить файлы при запуске сайта на сервере?

    @d-stream
    Готовые решения - не подаю, но...
    Ну вообще хранить бинарники в системе контроля версий - ненормально. Поэтому верный путь состоит из нескольких направлений:
    - чужие исходники - в отдельные репозитории
    - бинарные артефакты - в хранилище артефактов (зависимостей)

    Ну а в процессе сборки своего проекта - тянуть из первого и второго необходимые зависимости и из всего этого собирать то что будет деплоится на сервер.
    Ответ написан
    Комментировать