So veröffentlichen Sie effizient einen Monolithen, zu dem sich mehr als 150 Entwickler aus verschiedenen Büros verpflichten

Ich arbeite als Ingenieur für Miro im Team zur Verbesserung des Release-Prozesses.

Im vergangenen Jahr haben wir ein Entwicklungsbüro in Übersee eingerichtet, das Engineering-Team hat sich verdoppelt, und vor sechs Monaten hat das Unternehmen vorübergehend auf Remote-Arbeit umgestellt. Parallel dazu stieg die Anzahl der Nutzer unseres Produkts stetig um ein Vielfaches.

Vor dem Hintergrund dieser Änderungen war es uns wichtig, nicht an Qualität und Geschwindigkeit zu verlieren, daher haben wir den Server-Release-Prozess ernsthaft aktualisiert. Ich erzähle Ihnen von den Änderungen, die letztendlich den Anteil erfolgreicher Releases erhöht haben.

Server-Releases

backend — Java-, . backend AWS (CPU 4 , RAM 16 ). backend- – , - , Miro. Board- ( ). - API- API-.

(graceful deploy) . 60.000 - 50 board-.

, , . , , - , , , (time to market).

, .

— , , .

:

  1. - e2e . . . e2e- - , , -.

  2. . , . , .

  3. , Allure Enterprise Edition, false-positive Resolved.

:

  1. 100% , .

  2. .

  3. 4 .

  4. Approved Broken . Approve , Broken .

  5. API- board- . , 20%, .

  6. , .

.

, . . — .

Kanarischer Freisetzungsprozess

, . , , .

, . Sentry Grafana, . Bamboo: Approved Broken.

Bamboo , .

, . , : , .

, Feature Toggle, , .

Hot Fix

, , . , .

, . (Trunk-Based Development, GitFlow ..) GitLab Flow.

Hot Fix GitLab Flow:

  1. .

  2. .

  3. git cherry-pick .

  4. .

  5. .

, .

. .

changelog : . . changelog changelog, , .

Grafana , . Grafana Prometheus.

Jira Bamboo Looker, .

Fehlerdaten, Anzahl der erstellten und geschlossenen Aufgaben.
, .

, , . , , .

,

  1. 95%.

  2. changelog . , .

  3. .

  4. GitLab Flow hotfix , . .

  5. Looker .

— , . :

  1. . , , .

  2. . board- , API- — . .

  3. . hotfix, GitLab Flow . , . "Branch merging enabled", , .

  4. . 6 - .

  5. , , , .

  6. . .

, , .




All Articles