Jak zefektivnit vývoj software

components / microservices

Mergado

API

Přegenerování

Výběry

Pravidla

Statistiky

Audit

CI

Statistiky

Výběry

API

Výběry

Audity

Build

PEP8

Selenium

Testy

Deploy

Project CI pipeline Deploy pipeline

Release

GitLab CI

  • OpenSource
  • podobné Circle CI

Microservices

+

CI

+

Kubernetes

=

Výhody

  • větší rozdělení odpovědnosti mezi vývojáři
  • jednoduchý deployment
  • možnost releasovat služby nezávisle
  • škálovatelnost a udržovatelnost

Jak releasovat knihovny?

  • např. Rotten Parser
  • rozjet vlastní PyPi server
    • $ pip install pypiserver
  • deployment na PyPi server
  • update requirements.txt

Multi-stage builds

Python nástroje

  • black
  • coala
  • bandit
  • pip-compile
  • docker compose
    • na sestavení celého Mergada na localhostu
  • CI templates
    • např. na testy - abychom se mezi službami neopakovali
    • include

Další tipy

  • rotace
  • plánovat schůzky přes google calendar
    • nepřesahovat stanovený čas
  • povinné code review
  • přejít na python 3
    • python 2 končí s podporou
  • smazat hesla z repozitářů (git tree)
    • používat vaults
  • 1password na hesla a sdílení hesel
    • není potřeba keepassx
    • není potřeba PASSION

deck

By Pavel Dedík

deck

  • 21