← wróć do projektów
devopsdziała
Własny pipeline publikacji tej strony
#devops#automation#ci-cd#linkedin
Merge posta w Markdown do main uruchamia deploy, a strona sama publikuje się na LinkedIn z linkiem zwrotnym — bez ręcznego kopiowania i wklejania.
- ›GitHub Actions ogarnia cały flow: build, deploy, czekanie na żywy URL, a potem publikację na LinkedIn przez oficjalne REST API.
- ›Sprawdzanie deployu wcześniej tylko odpytywało o status 200 — co przechodziłoby nawet dla nieodświeżonego cache'a. Teraz dodatkowo potwierdza, że tytuł posta faktycznie pojawia się w treści odpowiedzi, zanim publikacja ruszy dalej, z testami jednostkowymi pilnującymi tej logiki.
- ›Wszystko jest wersjonowane i przechodzi normalny pull request, tak jak każda inna zmiana na tej stronie — CI odpala typecheck, pełny zestaw testów jednostkowych i produkcyjny build przy każdym pushu.
- ›Cotygodniowe zadanie pobiera kilka kanałów RSS, tworzy dwujęzycznego draft posta modelem LLM według ustalonego promptu stylu/głosu i otwiera PR — nic nie publikuje się bez wcześniejszego przeczytania przez człowieka.
- ›Panel administracyjny, zablokowany logowaniem przez GitHub OAuth, daje ręczną ścieżkę obok automatycznej — pisanie i edytowanie postów wprost, a także moderację komentarzy — bez PR-a przy każdej drobnej poprawce.
- ›Sama strona jest teraz porządnie wykrywalna: dane strukturalne JSON-LD, dynamicznie generowane obrazki OG dla każdego posta, sitemap.xml/robots.txt oraz tagi canonical/hreflang w obu językach; publiczny kanał RSS i Vercel Web Analytics pokazują, kto faktycznie czyta.
- ›Udogodnienia dla czytelników poszły tą samą ścieżką co reszta pipeline'u — jasny/ciemny motyw (przekolorowany przez zmienne CSS, nie komponent po komponencie), pasek postępu czytania, powiązane wpisy dobierane po wspólnych tagach i pełny indeks tagów — wszystko wdrożone przez ten sam PR + CI, co każda inna zmiana na stronie.
- ›Sentry pilnuje teraz błędów po stronie klienta, serwera i edge runtime — samo wyłapywanie błędów, bez tracingu i session replay, bo żadne z nich nie zwraca kosztu w rozmiarze bundle'a przy ruchu, jaki ma ta strona. Bezpiecznie nie robi nic, jeśli DSN nie jest ustawiony, więc nigdy nie psuje builda.
Zrzuty ekranu
Desktop
Telefon
Pracujesz nad czymś podobnym? Chętnie posłucham
kontakt →