1 Dokonano kompleksowej przebudowy skryptu, wprowadzając architekturę modularną v3.0. Ta fundamentalna zmiana przekształca
AutoScript z prostego narzędzia w elastyczną platformę do zarządzania cyklem życia serwera, kładąc podwaliny pod zaawansowane
funkcje DevOps.
2
3 Kluczowe zmiany w tej wersji:
4
5 - **Architektura oparta na komendach**: Wprowadzono w pełni modularny system, gdzie każda operacja (np. `install`, `validate`,
`deploy_monitoring`) jest osobną, precyzyjną komendą.
6
7 - **Walidacja Konfiguracji**: Nowa komenda `validate` wykonuje "pre-flight check", weryfikując poprawność pliku konfiguracyjnego
przed dokonaniem jakichkolwiek zmian w systemie, co drastycznie redukuje ryzyko błędów.
8
9 - **Mechanizm "Paragonów" (Receipts)**: Skrypt inteligentnie śledzi pomyślnie zakończone instalacje, co zapewnia idempotentność
operacji i umożliwia bezpieczne, wielokrotne uruchamianie oraz precyzyjną deinstalację.
10
11 - **Ulepszone Logowanie i Interfejs**: Wprowadzono kolorowe logi na konsoli z podziałem na poziomy (INFO, WARN, ERROR) oraz
ujednolicony zapis do pliku `/var/log/autoscript.log`.
12
13 - **Zarządzanie Skryptem i Sekretami**: Dodano wbudowane komendy do zarządzania cyklem życia samego skryptu (`self-update`) oraz
do uproszczonej obsługi sekretów (`secrets:edit`, `secrets:view`).
14
15 - **Fundamenty pod przyszły rozwój**: Stworzono solidne podstawy i puste funkcje (stubs) dla przyszłych, zaawansowanych modułów,
takich jak wdrożenie Mastodona, dynamiczne odkrywanie usług, centralne logowanie hosta, profile AppArmor i zaawansowane kopie
zapasowe.
16
17 Ta wersja stanowi kamień milowy, podnosząc projekt na profesjonalny poziom i otwierając drogę do dalszej, szybkiej rozbudowy.
|
||
|---|---|---|
| templates | ||
| .gitattributes | ||
| autoscript.conf.example | ||
| CHANGELOG.md | ||
| README.md | ||
| start.sh | ||
AutoScript v3 - Zautomatyzowana Platforma do Zarządzania Serwerem
1. Przegląd
AutoScript v3 to ewolucja prostego skryptu w kierunku w pełni modularnej platformy do automatyzacji i zarządzania cyklem życia serwera aplikacyjnego. Narzędzie jest zaprojektowane wokół architektury opartej na komendach, co pozwala na precyzyjne, bezpieczne i idempotentne operacje - od wstępnej konfiguracji po codzienne zarządzanie i deinstalację.
2. Kluczowe Koncepcje Architektoniczne
- Modularność i Komendy: Zamiast jednego, monolitycznego przebiegu, każdą operację wykonuje się dedykowaną komendą (np.
./start.sh deploy_traefik). - Idempotentność i Paragony (Receipts): Skrypt śledzi ukończone instalacje. Można go bezpiecznie uruchamiać wielokrotnie - zainstaluje tylko brakujące elementy.
- Walidacja "Pre-flight": Komenda
validatesprawdza poprawność konfiguracji przed dokonaniem jakichkolwiek zmian w systemie. - Bezpieczeństwo jako Priorytet: Wbudowane wzmacnianie zabezpieczeń, zarządzanie sekretami i przygotowanie pod zaawansowane techniki (AppArmor).
3. Dostępne Komendy
Wszystkie komendy należy uruchamiać z uprawnieniami roota, np. sudo ./start.sh <komenda>.
| Komenda | Opis |
|---|---|
install |
Główna instalacja. Uruchamia walidację i wdraża wszystkie podstawowe moduły. |
validate |
Sprawdza poprawność pliku autoscript.conf i połączeń z zewnętrznymi API. |
deploy_mastodon |
(W przygotowaniu) Wdraża i konfiguruje aplikację Mastodon. |
deploy_traefik |
Wdraża i konfiguruje reverse proxy Traefik. |
deploy_monitoring |
Wdraża stos monitoringu (Prometheus, Grafana, Alertmanager). |
secrets:edit <nazwa> |
Otwiera zaszyfrowany plik z sekretami dla danej usługi w edytorze. |
secrets:view <nazwa> |
Wyświetla odszyfrowaną zawartość pliku z sekretami. |
self-update |
Aktualizuje skrypt AutoScript do najnowszej wersji z repozytorium Git. |
uninstall |
Niebezpieczne! Usuwa wszystkie komponenty, dane i konfiguracje stworzone przez skrypt. |
help |
Wyświetla listę dostępnych komend. |
4. Instalacja Krok po Kroku
- Zaloguj się jako
rootna nowym serwerze (Debian/Ubuntu). - Zainstaluj
giti sklonuj repozytorium:apt update && apt install -y git git clone https://github.com/pawelorzech/autoscript.git cd autoscript - Skonfiguruj AutoScript:
cp autoscript.conf.example autoscript.conf nano autoscript.conf # Wypełnij wszystkie zmienne - Sprawdź poprawność konfiguracji:
sudo ./start.sh validate - Uruchom pełną instalację:
sudo ./start.sh install
5. Co dalej?
Po zakończeniu instalacji, Twój serwer jest w pełni skonfigurowany i zabezpieczony. Zapoznaj się z krokami opisanymi w poprzednich wersjach README (zmiana portu SSH, logowanie jako admin, konfiguracja 2FA), ponieważ te zasady wciąż obowiązują.
Możesz teraz zacząć wdrażać właściwą aplikację, np. używając (w przyszłości) komendy sudo ./start.sh deploy_mastodon.