Proces zveřejňování
Podrobný pracovní postup
Krok 1: Registrace vývojářského účtu
- Navštivte TOS Developer Platform: https://developer.terra-master.com
- Kliknutím na tlačítko [Registrace] přejdete na stránku registračních informací
- Použijte platnou e-mailovou adresu jako přihlašovací účet a vyplňte své jméno vývojáře (doporučuje se zachovat shodu s polem
publisherv konfiguračním souboru) - Přečtěte si podmínky služby a souhlaste s nimi, poté kliknutím na [Potvrdit] dokončete registraci
- Po registraci je vyžadováno ověření e-mailem; účet nabude účinnosti okamžitě, bez nutnosti ruční kontroly.
E-mail účtu se používá k příjmu oznámení o výsledcích kontroly, resetování hesel a dalších důležitých informací. Udržujte svůj e-mail platný.
Krok 2: Získání konfiguračních šablon a vývoj aplikace
- Řiďte se standardními šablonami v kapitole 8 (Specifikace vývoje a konfigurace aplikací Deb) tohoto dokumentu pro napsání config.ini, app.lang, souborů služeb systemd a dalších konfigurací, nebo použijte doporučené šablonové úložiště projektu na TOS Developer Platform pro rychlou inicializaci
- Dokončete vývoj a balení aplikace podle specifikací tohoto dokumentu
- Proveďte lokální testování a ověření (viz kapitola 13)
Krok 3: Vytvoření Release a nahrání souborů balíčku
-
Vytvořte veřejné úložiště na GitHubu nebo Gitee
-
Vytvořte Release a nahrajte soubory balíčku
Důležité:Platforma stahuje balíčky aplikací výhradně z Releases (GitHub Releases nebo Gitee Releases). Nenahrávejte soubory balíčků přímo do kořenového adresáře úložiště.
Krok za krokem:
- Přejděte na stránku "Releases" svého úložiště
- Klikněte na "Create a new release" (GitHub) nebo "新建发行版" (Gitee)
- Verze tagu: Musí přesně odpovídat poli
versionvconfig.ini(formát:xx.yy.zzz). Předponavje volitelná, ale doporučená (např.v1.0.0nebo1.0.0) - Název Release: Doporučuje se použít stejný řetězec verze (např.
v1.0.0) - Připojení binárek: Nahrajte soubor(y) balíčku jako soubory Release podle níže uvedených konvencí pojmenování
-
Požadavky na pojmenování a obsah souborů balíčku
Soubor balíčku musí dodržovat níže uvedené konvence pojmenování. Čísla verzí nejsou zahrnuta v názvu souboru — určují se prostřednictvím tagu Release.
Konvence pojmenování souborů balíčkuTyp aplikace Požadovaný formát souboru Konvence pojmenování Požadavky na obsah Deb (jeden balíček) soubor .deb<app_id>_<platform>.debJeden deb balíček obsahující všechny soubory aplikace, konfiguraci a metadata Deb (duální balíček) archiv .tar.gz<app_id>_<platform>.tar.gzMusí obsahovat <app_id>.deb(datový balíček) a<package>.deb(zdrojový balíček)Aplikace Docker archiv .tar.gz<app_id>.tar.gzMusí obsahovat docker-compose.yml,config.ini,app.langa soubory ikonDefinice polí:
<app_id>: Musí přesně odpovídat poliidvconfig.ini<platform>: Musí přesně odpovídat poliplatformvconfig.ini(x86_64neboaarch64)<package>: Musí odpovídat polipackagevconfig.ini(pro režim duálního balíčku)
Důležité- Čísla verzí nejsou zahrnuta v názvu souboru balíčku. Verze se určuje prostřednictvím tagu Release.
- Tag Release musí přesně odpovídat poli
versionvconfig.ini. - Platforma validuje konzistenci verzí mezi tagem Release a
config.ini.version. Neshody povedou k automatickému zamítnutí. - Platforma stahuje balíčky výhradně z Releases, nikoli z kořenového adresáře úložiště.
- Jsou podporovány pouze výše uvedené formáty a konvence pojmenování. Nevyhovující názvy povedou k automatickému zamítnutí.
-
Zahrňte soubory kontrolních součtů SHA-256
Pro každý nahraný soubor balíčku vygenerujte a připojte odpovídající soubor kontrolního součtu
.sha256:sha256sum <package_file> > <package_file>.sha256Příklad:
myapp_x86_64.deb→myapp_x86_64.deb.sha256
Krok 4: Vytvoření aplikace na vývojářské platformě
- Přihlaste se na Developer Platform, klikněte na [Moje aplikace] → [Přidat aplikaci]
- Vyplňte informace o aplikaci:
- ID aplikace: Musí přesně odpovídat poli
idv config.ini - Typ balíčku aplikace: Zvolte typ balíčku Docker nebo Deb
- URL úložiště: Uveďte URL veřejného úložiště (musí být veřejné, jinak kontrola nemůže pokračovat)
- ID aplikace: Musí přesně odpovídat poli
- Potvrďte a odešlete vytvoření
Krok 5: Přidání nové verze aplikace
- Najděte cílovou aplikaci pod [Moje aplikace] a klikněte na [Správa verzí]
- Klikněte na [Přidat verzi] a vyplňte číslo verze
- Formát čísla verze: přísně dodržujte
xx.yy.zzz(major.minor.patch) - Historická čísla verzí nelze znovu použít
- Musí odpovídat poli
versionv config.ini
- Formát čísla verze: přísně dodržujte
- Po odeslání verze začíná proces zveřejňování aplikace
Číslo verze, které zadáte v kroku 5, musí odpovídat:
- Poli
versionvconfig.ini - Verzi tagu Release vytvořeného v kroku 3
Všechna tři musí být identická. Neshody povedou k automatickému zamítnutí.
Krok 6: Automatizovaná validace platformou
Po podání platforma automaticky provede následující kontroly:
- Validace formátu souboru (syntaxe JSON v config.ini, formát app.lang)
- Validace úplnosti polí (žádná chybějící povinná pole)
- Validace jazykového pokrytí (všech 14 jazykových uzlů přítomno)
- Validace ikony (formát SVG, shoda cesty)
- Ověření kontrolních součtů (SHA-256 odpovídá nahraným souborům)
- Validace konzistence verzí (shoda verzí config.ini / DEBIAN/control / app.lang; u aplikací Docker se kontroluje pouze konzistence verzí config.ini a app.lang, kontrola DEBIAN/control není nutná)
- Validace konzistence tagu Release s config.ini.version
Běžné příčiny selhání automatizované validace:
- config.ini obsahuje komentáře nebo chyby syntaxe
- V app.lang chybí jazykové uzly
- Ikona nenalezena nebo má nesprávný formát
- Neshoda kontrolních součtů
- Tag Release neodpovídá config.ini.version
- Název souboru balíčku nedodržuje požadovanou konvenci pojmenování
Krok 7: Ruční kontrola
Kontrolní tým kontroluje ze čtyř rozměrů (podrobnosti viz kapitola 16):
- Úplnost konfigurace (váha 30%): Všechny požadované soubory přítomny, správný formát
- Funkční dostupnost (váha 35%): Instalace, spuštění, provoz a odinstalace fungují bez chyb
- Zabezpečení (váha 25%): Žádný škodlivý kód, žádná nadměrná autorizace, žádná pevně zakódovaná citlivá data
- Dodržování předpisů (váha 10%): Soulad obsahu, popis odpovídá funkcím
Pracovní postup kontroly: Úvodní kontrola (konzistence informací, shoda úložiště) → Bezpečnostní kontrola (pracovníci technické podpory) → Testování funkční kompatibility (pracovníci podpory testování) → Komplexní kontrola (vyhrazení pracovníci kontroly)
Krok 8: Oznámení výsledku kontroly
Výsledky kontroly jsou vývojářům doručovány dvěma kanály:
- Zprávy platformy: Přihlaste se na Developer Platform a zkontrolujte stav kontroly
- Registrovaný e-mail: Výsledky kontroly jsou zasílány na e-mail použitý při registraci
Popisy stavů kontroly:
- Probíhá kontrola: Aplikace je ve frontě kontroly
- Schváleno: Aplikace prošla kontrolou a vstoupila do procesu zveřejňování
- Zamítnuto: Aplikace má problémy, které je třeba opravit; musí být opravena a znovu podána do 30 dnů
- Dobrovolně staženo: Vývojář proaktivně stáhl žádost o kontrolu
Krok 9: Oficiální zveřejnění
Po úspěšném absolvování kontroly bude aplikace uvedena v TOS App Center do 1–2 pracovních dnů:
- Uživatelé mohou aplikaci v App Center vyhledat a nainstalovat
- Vývojáři mohou pod [Moje aplikace] zkontrolovat změnu stavu aplikace na "Published"
Statistiky: Řídicí panel vývojáře zobrazuje klíčová data, jako je počet zveřejněných aplikací, celkový počet stažení aplikací a kumulativní počet podání aplikací. Průběh 3 nejnovějších zveřejňovaných aplikací je aktualizován v reálném čase.
Požadavky na úložiště
- Musí to být veřejné úložiště (GitHub nebo Gitee). Soukromá úložiště nejsou podporována.
- Soubory balíčků musí být nahrávány jako soubory Release, nikoli do kořenového adresáře úložiště.
- Prostředky úložiště musí zůstat dlouhodobě dostupné. Zveřejněné prostředky nelze mazat.
- Struktura úložiště musí odpovídat určenému rozvržení adresářů.
- Všechny binární artefakty musí být doprovázeny soubory kontrolních součtů SHA-256.
Zásady přejmenování aplikace a změny ID:
idaplikace (v config.ini) nelze změnit po zveřejnění- Zobrazovaný název aplikace (v app.lang) lze aktualizovat v nových verzích
- Pokud je třeba změnit
idaplikace, musí být podána jako zcela nová aplikace (nové uvedení, nová kontrola) - Stará aplikace musí projít procesem stažení z nabídky (viz oddíl 17.4)