Skip to content

Vývojová prostředí

Standartní development instance aplikace sloužící pro testování vydávaných změn.

Instance která seeduje čistá testovací data při každé kompilaci/nasazení konkrétní funkcionality. Do této instance může být nasazena jakákolio funkcionalita z větví feature/… pouhým ručním potvrzením nasazení v gitlab pipelines jobem deploy-experimental.


Obě vývojová prostředí jsou trvale v maintenance mode. Nikdy se nevolá artisan up. Secret bypass je jediný způsob přístupu.

Navštivte URL se secretem — Laravel nastaví cookie a budete mít přístup:

Prostředí URL
Development https://dev.chytrykviz.cz/worksonmymachine
Experimental https://lepsi.kviz.cz/worksonmymachine
Terminal window
# Zapnutí (s bypass secretem)
ssh chytrykviz-dev 'cd /var/www/lepsi.kviz.cz && php artisan down --secret="worksonmymachine"'
ssh chytrykviz-dev 'cd /var/www/dev.chytrykviz.cz && php artisan down --secret="worksonmymachine"'

Pro testování nepoužíváme žádná živá data. V případě obou instancí aplikace používáme testovací účty vytvořené pomocí seederu UserRoleCompanySeeder.

Všechny testovací účty používají stejné heslo: password

Email Jméno Role Měna Heslo
[email protected] IntelliRascals s.r.o. admin CZK password
[email protected] Rascal #1 moderator CZK password
[email protected] Rascal #2 moderator EUR password
[email protected] Mgr. Rascal Manager manager CZK password
[email protected] Ready player #1 - CZK password
[email protected] Karel Kvízmistr moderator CZK password
[email protected] Jana Moderátorová moderator CZK password
[email protected] Peter Slovenský moderator EUR password
[email protected] QA admin CZK qa-testing

Kromě účtů výše seeduje UserRoleCompanySeeder (konstanta PROD_ADMINS) účet pro každého uživatele s rolí admin na produkci — stejný e-mail a jméno, ale vždy heslo password. Kdokoli z týmu se tak na seednuté prostředí přihlásí „sám za sebe”. Snapshot se pořizuje ručně z produkční DB (bez hesel a ID); při změně adminů na produkci aktualizujte konstantu.

Pozn.: users:ensure-qa (poslední krok deployů) vyžaduje existenci role admin — příkaz si ji nově založí sám (Role::firstOrCreate), takže funguje i na čerstvé migrate-only databázi.

V systému jsou definovány následující role:

  • admin - Administrátor
  • kvizAdmin - Kvíz administrátor
  • creator - Tvůrce
  • superCreator - Super tvůrce
  • auditor - Auditor
  • superAuditor - Super auditor
  • moderator - Moderátor
  • manager - Manažer
  • finance - Finance
  • spravce-roli - Správce rolí
  • pr-manazer - PR manažer
  • systemadmin - Systémový administrátor

Uživatel [email protected] není součástí seederu — vytváří se automaticky po každém deployi příkazem users:ensure-qa. Command je idempotentní a spouští se jako poslední krok CI pipeline pro experimental i dev.

Ruční spuštění:

Terminal window
# Na serveru
ssh chytrykviz-dev 'cd /var/www/lepsi.kviz.cz && php artisan users:ensure-qa'
# Přes Docker (lokálně)
docker-compose exec fpm php artisan users:ensure-qa

Command vytvoří uživatele pokud neexistuje, přiřadí roli admin a ověří email. Pokud uživatel existuje (i soft-deleted), pouze zajistí přiřazení role.

Pomocí seederů se vytváří základní testovací data:

  • Země (2): Česká republika, Slovensko
  • Regiony (14): Všechny české kraje vč. Prahy
  • Města: Generováno pomocí factory (5–30 měst na region)
  • Puby (20): Generováno pomocí factory
  • Společnosti (2): ChytryKviz CZ s.r.o. (CZK), ChytryKviz SK s.r.o. (EUR)