Struttura del corso
Sovranità sul codice sorgente
- Perché le piattaforme Git cloud-based mettono a rischio codice proprietario e segreti commerciali.
- Architettura di Gitea e confronto con GitHub, GitLab e Forgejo.
- Considerazioni riguardo alla licenza, ai termini di servizio e all’esportazione dei dati.
Installazione e configurazione
- Configurazione tramite Docker Compose con PostgreSQL e Redis.
- Installazione del file binario su sistemi Linux con abilitazione del servizio systemd.
- Impostazione di reverse proxy, certificati TLS e configurazione delle porte SSH.
- Procedura iniziale: configurazione della base dati, creazione dell’account amministratore e ottimizzazione del file app.ini.
Gestione dei repository
- Creazione di organizzazioni, gruppi di lavoro e repository.
- Protezione delle branche, richiesta di revisioni obbligatorie e firma digitale dei commit.
- Tracciamento dei problemi, gestione di etichette, scadenze e schede Kanban.
- Ospitaggio di documentazione (Wiki) e pubblicazione di aggiornamenti software.
CI/CD tramite Gitea Actions
- Abilitazione di Gitea Actions e registrazione dei nodi Act Runners.
- Scrittura di file YAML per definire workflow di compilazione, test e distribuzione.
- Garantire la sicurezza dei nodi auto-ospitati e l’isolamento dei container.
- Gestione dell’archiviazione temporanea degli artefatti e esecuzione di build in parallelo.
Migrazione da piattaforme cloud
- Duplicazione e importazione automatica dei repository da GitHub o GitLab.
- Trasferimento completo di problemi, richieste di pull e note di rilascio.
- Mantenimento delle firme digitali sui commit e gestione del trust riguardo alle chiavi GPG.
Autenticazione e controllo degli accessi
- Integrazione con sistemi LDAP, Active Directory e OpenID Connect.
- Implementazione dell’autenticazione a due fattori e gestione sicura dei token di deployment.
- Definizione della visibilità dei repository: pubblico, interno o riservato.
Sicurezza e conformità normativa
- Esecuzione obbligatoria di firme digitali tramite GPG e chiavi SSH per i commit.
- Registrazione dettagliata delle operazioni effettuate: accesso ai repository e modifiche amministrative.
- Rilevamento automatico di vulnerabilità software e notifica immediata tramite webhook.
Mantenimento e scalabilità
- Strategie efficaci per il backup di dati Git, problemi e allegati.
- Ottimizzazione delle prestazioni della base dati e migrazione dei file di allegato su S3.
- Aggiornamenti sicuri di Gitea e gestione corretta delle eventuali modifiche strutturali.
Requisiti
- Conoscenze intermedie di Git e dei principi fondamentali della gestione del controllo versione.
- Competenze nell'amministrazione di server Linux, inclusa la gestione di Docker.
- Familiarità con i flussi di lavoro CI/CD e l’utilizzo dei webhook.
Destinatari del corso
- Team di sviluppo intenzionati a sostituire GitHub o GitLab.com con una soluzione interna.
- Organizzazioni che necessitano di mantenere il controllo totale sul codice sorgente.
- Aziende operanti nel settore governativo e della difesa soggette a restrizioni sull’esportazione del codice.
Recensioni (2)
Mi piace che ricevo subito risposta alle mie domande.
Szabolcs Kriston - Ericsson
Corso - Advanced GitLab
Traduzione automatica
Mi è piaciuta la comunicazione facile tra il formatore e noi, l'attenzione dedicata ai nostri problemi, le intuizioni e le conoscenze aggiuntive fornite in risposta alle nostre domande. Ho apprezzato il ritmo, che non si è mai fatto affrettato, anche in presenza di problemi tecnici. Ogni argomento è stato trattato con cura.
Melania Mieczkowska - IAV Poland
Corso - Gitlab and Gitlab CI
Traduzione automatica