Моя організація переживає вибух мікросервісів. Наразі у нас немає формалізованого способу завантаження нових проектів. Я виявляю, що команда прийде до мене з помилкою в процесі їх розгортання або збирання, і я витрачу час на це лише для того, щоб зрозуміти, що вже вирішив це в іншому проекті. Між проектами також існує велика невідповідність, яку я б хотів бачити стандартизованою.
Зміни часто включають один файл (наприклад, serverless.yml або Makefile), тому рішення, що включає спільні бібліотеки, наприклад, підмодулі git, не здається життєздатним. Кожен проект матиме власний набір конфігурацій, який потрібно підтримувати, наприклад Dockerfiles або serverless.yml, тому рішення централізованого управління конфігурацією для віртуальних машин насправді не застосовуються.
Як я можу гарантувати, що нові мікросервіси відповідають стандартам організації та включають виправлення / функції з існуючих проектів таким чином, що це легко та інтуїтивно зрозуміло для розробників, які хочуть розпочати нові проекти? Які є найкращі практики щодо вирішення цих питань?
Поточний робочий процес, який ми маємо, - запитати у людини поруч із вами "який проект я повинен клонувати, щоб використовувати як шаблон?" а потім видаліть усі речі, які не потрібні для цього проекту.