eSoul docs Help

Composer knihovny

Naše interní knihovny jsou dostupné přes vlastní composer repozitář na adrese packages.esoul.cz.

Sestavení repozitáře probíhá automaticky v Jenkins pipeline přes Satis. Definice repozitáře se nachází na Githubu v repozitáři eSoul-cz/packages-repository.

Přidání balíčku do repozitáře

  1. Vytvořte nový repozitář na Githubu pro vaši knihovnu. (balíčky můžou být veřejné nebo privátní podle potřeby)

  2. V kořenovém adresáři repozitáře vytvořte validní composer.json s následujícím vzorovým obsahem:

    { "name": "esoul/nazev-knihovny", "description": "Stručný popis knihovny", "version": "1.0.0", "type": "library", "license": "GPL-3.0", "authors": [ { "name": "Vaše Jméno", "email": "email@esoul.cz", "role": "Developer" } ], "require": { "php": ">=8.5" } }

    - `name` musí být ve formátu `esoul/nazev-knihovny`. - `license` může být `GPL-3.0`, `MIT` nebo `proprietary` podle potřeby. - `require` by měl obsahovat minimální požadavky na PHP verzi a případné závislosti. - `version` je potřeba, aby prošla striktní validace `composer.json` + není špatné jí udržovat pro přehlednost podle [semver](https://semver.org/).

  3. V kořenovém adresáři repozitáře vytvořte Jenkinsfile s následujícím vzorovým obsahem:

    pipeline { agent any environment { } stages { // Add your build/test stages here stage('Trigger Satis rebuild') { steps { build job: 'internal/eSoul Internal/packages-repository/master', wait: false } } } }

    - Jenkinsfile by měl obsahovat i stage pro automatické testy a až potom samotný stage, který spustí rebuild Satis repozitáře (spustí jinou Jenkins pipeline).

  4. V eSoul-cz/packages-repository upravte satis.json a přidejte nový balíček do sekce repositories:

    { "repositories": [ { "type": "vcs", "url": "https://github.com/eSoul-cz/nazev-knihovny" } ] }
  5. Nyní se při každém pushi do vašeho repozitáře spustí Jenkins pipeline, která po úspěšném dokončení spustí rebuild Satis repozitáře a váš balíček bude dostupný na packages.esoul.cz.

Použití balíčku v projektu

Chcete-li použít interní balíček ve svém projektu, přidejte do composer.json vašeho projektu následující sekci repositories, pokud tam ještě není:

{ "repositories": [ { "type": "composer", "url": "https://packages.esoul.cz" } ] }
26 January 2026