Jak nahrát svoji aplikaci na náš server

28. 10. 2024 | Matyáš Caras | Vzdělávací materiály

Nejdůležitější část soutěže je rozhodně odevzdání aplikace. Někomu se to může zdát těžké, a tak se ti v tomhle článku pokusíme shrnout, jak svou aplikaci úspěšně zabalit a odevzdat. A pokud nerad čteš články, mrkni na náš první webinář, kde celý tento proces procházíme.

K úspěšnému odevzdání aplikace je potřeba, abys nahrál Docker image tvé aplikace na naše servery. Pro zjednodušení a automatizaci celého procesu jsme pro tebe vytvořili GitHub akci upload-app a šablony pro nejpoužívanější programovací jazyky a frameworky.

Jak využít šablony?

1. Vytvoření účtu na GitHub

Zaregistruj se na GitHubu. Jako student si můžeš zažádat o GitHub Student Developer Pack, díky kterému získáš přístup k vývojovým nástrojům od JetBrains, vzdělávacím kurzům na Educative, vlastní server na DigitalOcean a mnoho dalších výhod (není potřeba k odevzdání).

2. Zvol si šablonu

Pokud jsme se zrovna netrefili do tvého tech stacku, můžeš využít generickou šablonu, ve které je pouze GitHub akce. Implementace Dockerfile tak bude jen na tobě. Pokud ses s Dockerem ještě nesetkal/a, není se čeho bát, to nejdůležitější si probereme na našem prvním webináři.

3. Využití šablony

Pokud chceš použít jednu ze šablon, stačí si ji otevřít a kliknout na tlačítko „Use this template“ a „Create new repository“.

Dále vyplníš název repozitáře ve tvaru „TdA25-jméno-týmu”, například tým QWERTZ by si vytvořil repozitář s názvem „TdA25-QWERTZ“. Zvažte v týmu, zda chcete, aby byl váš kód veřejný, či nikoliv – na základě toho zaškrtněte „Public“ či „Private“.

Repozitář vytvoříš kliknutím na tlačítko “Create repository”

4. Přidání Tour-de-App-user

Abyste mohli všichni upravovat kód v repozitáři, nezapomeň přidat ostatní členy svého týmu jako přispěvatele („collaborator“). Kromě toho je třeba přidat uživatele „Tour-de-App-user“, který je potřeba ke správnému odevzdání tvé aplikace.

5. Nastavení `TEAM_TOKEN`

Abys mohl/a aplikaci odevzdat, je třeba zadat speciální token, který od nás dostaneš, abychom věděli, že daná aplikace patří k tvému týmu. Tento kód by však neměl nikdo mimo tvůj tým vědět, takže je třeba ho vložit na speciální místo, kam se ukládají tzv. tajemství („secrets“).

V repozitáři přejdi do Settings → Secrets → Actions a klikni na „New repository secret“. Svůj secret pojmenuj „TEAM_TOKEN“ (bez uvozovek) a jako hodnotu vlož token, který si vygeneruješ na této stránce. Nezapomeň uložit kliknutím na „Add secret“.

6. Lokální spuštění – než začneš

Nyní jsi připraven/a kód naší šablony stáhnout k sobě na počítač, pozměnit a nahrát zpět na GitHub.

Pro lokální spuštění a následný vývoj aplikace dle jedné z našich šablon potřebuješ mít nainstalovaný Docker a GitHub Desktop, na operačním systému Windows navíc zprovozněný WSL2.

Pokud narazíš na nějaký problém, klidně se ozvi na Discordu, vždy se najde někdo, kdo ti pomůže.

7. Lokální spuštění

Nejdříve je třeba dostat tvůj nový repozitář z GitHubu na počítač. K tomu využijeme GitHub Desktop.

Aplikaci si stáhni a přihlas se do ní skrz svůj GitHub účet. Klikni na tlačítko “Clone a repository from the internet”, zvol svůj TdA repozitář a vyber místo, kam ho chceš stáhnout. Nyní si můžeš repozitář otevřít ve svém oblíbeném editoru. V souboru README.md najdeš informace o tom, jak projekt sestavit a spustit. Vyzkoušej, jestli se tvoje aplikace v pořádku spustí. Poté zkus sestavit a spustit Docker image (Návod, jak na to, opět najdeš v README.md). Ověř, že tvoje aplikace stále funguje, jak má.

8. Lokální změny a jejich nahrání na GitHub

Ke (skoro) kompletnímu procesu vývoje chybí poslední krok: Odeslání (v git terminologii „push“) na GitHub.

Abys tento krok provedl, otevři si aplikaci GitHub Desktop. Měla by se ti zobrazit podobná obrazovka:

  1. Porovnání změn v kódu

  2. Textové pole pro vytvoření zprávy pro commit

  3. Textové pole pro detailnější popis tvého commitu. Pokud se ti podaří shrnout změny v předcházejícím poli, můžeš ponechat prázdné.

  4. Tlačítko, kterým commit vytvoříš

Vytvořením commitu jsi pouze zachytil momentální stav tvého repozitáře do Git historie. Abys změny nahrál, musíš ještě kliknout na tlačítko “Push origin”

Tímto jsi změnu nahrál na GitHub do větve main. Když navštívíš záložku Actions ve tvém GitHub repozitáři, měl bys vidět spuštěnou GitHub akci, která nahraje tvou aplikaci na naše servery. Pokud by nastala nějaká chyba, můžeš si průběh akce rozkliknout a podívat se do záznamu průběhu.

9. Spuštění tvé aplikace

Pokud se aplikace v pořádku nahrála, stačí se přihlasít do odevzdávacího systému a kliknout na tlačítko Spustit. Po chvíli se tvá aplikace spustí na našem serveru a ty si můžeš ověřit, že funguje.