Přeskočit na hlavní obsah

Built-in Modules

Repozitář už dnes obsahuje menší sadu built-in modulů zaměřených hlavně na packaging a publishing.

Tyto moduly jsou užitečné jako referenční implementace a jako základ pro další projektové nebo doménově specifické moduly.

Built-in joby

Packaging joby

V repozitáři jsou přítomné tyto built-in packaging joby:

  • ZipPackageFile
  • ZipPackageDirectory
  • RarPackageFile
  • RarPackageDirectory

Tyto joby přijímají buď kategorii souboru, nebo adresáře a produkují item typu archive.

Jejich role je zabalit výstupy před přenosem, releasem nebo downstream spotřebou.

Publishing joby

V repozitáři jsou přítomné tyto built-in publishing joby:

  • PublishHttpPostFile
  • PublishHttpPostDirectory
  • PublishScpFile
  • PublishScpDirectory

Tyto joby publikují artefakty přes HTTP POST nebo SCP přenos.

HTTP publishing joby používají PublishHttpPostConf, která v aktuálním stavu obsahuje parametr pro server URL.

SCP publishing joby používají PublishScpConf, která aktuálně obsahuje:

  • IP adresu serveru
  • uživatele
  • heslo

Built-in item typy

Built-in modulový balíček definuje i několik typů artefaktů, se kterými APIS umí pracovat.

Příklady, které jsou dnes v kódu přítomné:

  • archive
  • post
  • scp
  • executable
  • model-3D
  • documentation
  • schema-pcb
  • bom-pcb
  • cpl-pcb
  • gerber-pcb
  • image

Tyto item typy mapují doménové výstupy do kategorií, které APIS umí propojit uvnitř grafu závislostí.

Co to znamená v praxi

Už i tato ranější sada built-in modulů dobře ukazuje zamýšlený APIS pattern:

  1. definovat typy artefaktů
  2. definovat joby, které je transformují nebo publikují
  3. propojit tyto joby do projektového flow
  4. nechat APIS udržovat downstream repozitáře synchronizované s aktuálními výstupy

Pro mnoho projektů bude dalším krokem doplnit vlastní moduly pro firemní build kroky, validační joby, CAD exporty, hardware deliverables nebo release pipeline.