Andrey
Dmytro
для большой компании - там уже наверняка есть какой-то convention и прочее
Andor
для 90% применений, где его пихают - оверкил
Дмитрий
А как правильно настроить исполнение миграции схемы базы после билда и деплоя веб контейнера, например, джанго?
Dmytro
а так - git crypt или от силы aws secrets для 90% стартапов
Andrey
Dmytro
мне нравится идея заландо ещё - тупо kms ключем шифровать и пихать в куб секрет этот блоб
Rainbow
для 90% можно и пароли в исходниках. Ну ладно, просто в env у ci
Дмитрий
Rainbow
У меня секреты в gitlab ci runner variables хранятся на основном проекте 🙈 но к кубу только я имею доступ, пофиг.
Dmytro
никаких лишних зависимостей, секреты нигде не торчат в открытом виде (как в том же git crypt на каждом ноуте или в CI любому с доступом в CI или на сам инстанс с CI)
Rainbow
George
George
но при необходимости тима может эти переменные спиздить через раннера
George
или скомпрометировать gitlab-ci.yaml
George
но это все будет видно )
Rainbow
если может пушить в protected ветки
Rainbow
у меня не может 😂
Dmytro
Dmytro
секрет полишинеля же
Dmytro
умный Вася сделает base64 | echo и вуаля
Dmytro
камон
Rainbow
откуда?
Rainbow
> но к кубу только я имею доступ, пофиг.
Dmytro
в gitlab-ci.yaml башнянке
Dmytro
ну и?
George
George
ну, а на гитлаб сиай файл - изменения только через мерж реквест, иначе нахер
Dmytro
если конечно у вас один человек мерджит в протектед ветки то у вас там 3 человека на проекте
Andor
левые люди не могут пушить в протектед ветки и запускать джобы на протектед раннерах
Dmytro
и там вообще можно без CI
Andor
без CI нельзя даже если один
Dmytro
а если у вас действительно CI/CD то это значит что либо вообще trunk based development либо все могут в мастер мерджить и лить на прод
Dmytro
и значит читай выше про любой Вася
Dmytro
Andor
функциональность
Dmytro
упростить код = ввести протектед бранчи и раннеры? оок
Rainbow
Из самых ярких примеров
- нам нужна синхронизация между корзинами на всех устройствам
- зачем?
- чтобы отправлять email с забытыми корзинами
- нет, вам не нужна синхронизация. Вам нужно генерировать в email ссылки вида site.com/cart?restore=id&quantity
Rainbow
А люди пол года отлаживали синхронизацию корзин между устройствами и она так и не заработала адекватно.
Oleg
У яндекса вроде номад?
Andor
Rainbow
у них там наркоманское что-то
Andor
Andor
у яндекса дохрена чего, не удивлюсь если и номад где-то есть
Dmytro
синхронизация корзин это вообще антипаттерн, я понимаю ещё при логине мерджить сохраненную корзину и ту что в текущей сессии
Dmytro
и то я бы сказал это плохо
Rainbow
Dmytro
тут лучше на самом деле было взять e-commerce patterns/best practices
Dmytro
там есть свои ньюансы при поиске например
Dmytro
(типа не показывать пустую страницу результатов а всегда показать хоть что-то типа может быть релевантно)
Dmytro
и т.д. и т.п.
Vadim
Rainbow
Мы говорили, про то что в большей части компаний достаточно иметь малькую команду. А там где была большая - есть раздутие и боязнь резать фичи ради простоты часто.
Dmytro
Dmytro
либо раздутие штата чтобы менеджер мог потом в линкедине обновить профиль что менеджил ХХ чел найти покруче работу
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
Dmytro
прекрасен ровно до момента когда кто-то уходит из компании
𝚔𝚟𝚊𝚙𝚜
local secrets = import 'secrets.libsonnet';
Dmytro
а потом появляется много вопросов - а что делать
Andor
@zuzzas я тут пытаюсь на старого прометея натравить через сервисмонитор
Andrey
Andor
нет, просто прометей, без оператора
Dmytro
ну хорошо, я могу поменять свои секреты (база там и т.п.)
а вот например нью релик license code - как быть с ним? Ушедший человек может нагенерить костов нам в нью релике на сотни тысяч
Andor
в смысле на тот который у меня давно уже
Dmytro
и т.д. и т.п.
Andrey
Andor
не, он у меня в другом неймспейсе
Andor
сервисмонитор в котором неймспейсе надо создавать?
Andrey
В Namespace Prometheus, который operator менеджит.
𝚔𝚟𝚊𝚙𝚜
а потом появляется много вопросов - а что делать
бежать менять пароли ага. Использование Vault в этом плане более логично, но все равно имеет смысл только когда ты этим действительно этим заморочишься, выстроишь все доступы и не разрешишь девелоперам читать пароли из него
Даня
- image: {{ .Values.image.repository }}/dev-{{ .Values.application.name }}:{{ .Values.image.tag }}
name: {{ .Values.application.name }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
{{- if .Values.resources }}
resources:
{{ toYaml .Values.resources | indent 10 }}
{{- end -}}
ports:
- name: {{ .Values.service.access.name }}
containerPort: {{ .Values.service.access.port }}
Даня
подскажите плз/, почему разъезжаются строки при верстке хельм теймплейта