Jaki powinien wyglądać projekt by do repo nie trafiały złe kody?

0

No dobrze, Panie Seniorki i Panowie Seniorzy (tak z 10+)

Co byście robili, konkretnie, żeby powiedzmy do lipca, sierpnia poprawić sytuację?

@NamingException zbiera to, w poniedziałek na standupie przekazuje propozycje i nakreśla plan, co czelendżujemy do końca lata.

Zaczynamy w marcu od i mamy do kwietnia to. Bez tego nie ruszymy.
Dalej robimy tamto.

1

@NamingException: problemem nie jest sama aplikacja, ale wkładka mięsna dookoła.
Pytania:

  1. Czy zewnętrzne zasoby (chmury) są konfigurowalne czy zaszyte?
  2. Czy istnieje CI?
  3. Czy usługi są w jakiś sposób izolowane np. w kontenerach?

ps. uciekaj.

2

@BraVolt

  1. Wrzucamy buildy do CI
  2. Blokujemy mergowanie jeśli build failuje
  3. Dodajemy sanity-check test w kodzie, który sprawdza przynajmniej czy aplikacja w ogóle wstaje

To można zrobić w 1 osobo-dzień, nie trzeba całego zespołu blokować na wakacje, a już te 3 punkty załatwią 90% problemów.

Pisanie testów, jeśli ich nie ma, to juz niestety żmudna praca i tego się nie uniknie.

0

Nie wiem czemu wszyscy założyli, że CI u nich w firmie jest i ma resourcy aby apke z 63 budować za kazdym PR :p

2
Schadoow napisał(a):

Nie wiem czemu wszyscy założyli, że CI u nich w firmie jest i ma resourcy aby apke z 63 budować za kazdym PR :p

Jeśli przy mikroserwisach liczonych w dziesiątkach nie mają żadnego CI - a brzmi, jakby nie mieli, więc nie wiem skąd założenie, że zakładamy, że mają - to nawet sobie nie wyobrażam ile czasu muszą tracić na kulanie tego i ręczne zarządzanie, rozwiązywanie problemów itd. I ogólnie brzmi to, jakby zespół dzielił się na tych, którzy już się uzależnili od Stoperanu i na tych, którzy mają to wszystko głęboko w d....

Nie zdziwię się nawet, gdyby próba wprowadzenia CI, testów, CR, zablokowania mastera itd. skończyła się niesamowitym oporem ze strony tych drugich, bo

  • a po co
  • a na co
  • przecież działa, tylko nie umiesz z tym pracować
  • ile z tym roboty będzie? komu to potrzebne?
  • kto będzie pisał te testy? ja nie jestem testerem!
  • no co że się wywala, musi się wywalać, tak to już jest i wtedy robisz fixa i klepiesz dalej, taka kolej rzeczy, naucz się młody

:]

0

@superdurszlak:
Nie chodzi mi czy maja skonfigurowane samo CI. Tylko fizycznie czy mają postawionego(albo wykupiona usługę) jakiegoś gitlaba, jenkinsa itd który to udźwignie.
@Shalom napisał porady zaczynając od "Wrzucamy buildy do CI". I do tego sie odniosłem ;p.

2

Tak jak zostało powiedziane - CI. Rozwiąże to 90% twoich problemów. Ja trafiłem do projektu z mikroserwisami, mamy CI od początku i szczerze mówiąc do dzisiaj nie wiedziałem, że istnieją firmy które pracują w mikroserwisach, pushując na mastera jak im się podoba bez jakiegokolwiek CI.

0

Nie no, Continnouse Integration chyba jest, konfiguracje rozbudowane, Kubernetesy i lasery tylko jak rozumiem brakuje 2 rzeczy: testów automatycznych na wszystkich branczach po wychnieciu kodu (są tylko jednostkowe a automatyczne działają na głównym z opóźnieniem) oraz środowiska na którym można odpalić wybrany brancz.

0

A to te wszystkie mikroserwajsy są tak ze sobą zżyte, że testy automatyczne muszą się odpalać dla nich wszystkich? Nie lepiej podzielić je wg. jakiejś domeny? Zdefiniujcie po prostu w jakimś planie bamboo czy co tam macie żeby odpalało taska mavenowego/gradlowego z testami integracyjnymi/unitami. Poproście o jakieś środowisko devove, na które można tylko snapshoty wgrać (np. z brancza) a na prodzie ustawcie żeby mógł leciec deploy tylko pełnoprawnego release

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0