Governance as a code: как соблюдать стандарты разработки и не тормозить доставку фич Выбор и внедрение инженерных практик в зависимости от проблематики
При разработке крупных программных продуктов, даже применяя Agile-подход, надо обеспечить соблюдение архитектурных принципов как в части конфигураций инфраструктуры, так и в части программного кода. Оптимальным способом решения данной задачи является подход governance as a code. При данном подходе правила проверки каждого артефакта — будь то конфигурация k8s, список библиотек или даже описание сценария CI/CD — описаны специальным кодом проверки правил, имеют свой жизненный цикл, подвержены тестированию и ничем не отличаются от обычного программного продукта.
Мы расскажем, как и что можно проверять в процессе разработки программного обеспечения, как данный подход позволяет разрабатывать более безопасные и качественные приложения и почему было решено не использовать такие очевидные решения, как SonarCube, а разработать собственное решение на базе Open Policy Agent без дополнительных пакетов над ним.