Rilascio del sistema di compilazione dei pacchetti Open Build Service 2.10

Formato rilascio della piattaforma Servizio di compilazione aperta 2.10, destinato organizzare il processo di sviluppo di distribuzioni e prodotti software, inclusa la preparazione e la manutenzione di rilasci e aggiornamenti. Il sistema consente di eseguire la compilazione incrociata di pacchetti per la maggior parte delle principali distribuzioni Linux o di creare la propria distribuzione basata su una determinata base di pacchetti.

Supporta la creazione di 21 piattaforme target (distribuzioni), tra cui CentOS, Debian, Fedora, OpenMandriva, openSUSE, SUSE Enterprise Linux, Red Hat Enterprise Linux (RHEL) e Ubuntu. L'assemblaggio è possibile per 6 architetture, tra cui i386, x86_64 e ARM. OBS copre più di 140mila pacchetti ed è utilizzato come sistema principale per la creazione di progetti openSUSE, Tizen, Sailfish/Mer, NextCloud e VideoLAN, nonché per la creazione di prodotti Linux presso Dell, Cray e Intel.

Per creare l'ultima versione di un determinato programma sotto forma di pacchetto binario per il sistema desiderato, basta creare un file spec o collegare il repository dei pacchetti presentato sul sito web software.opensuse.org. Inoltre, puoi creare un ambiente minimalista già pronto per l'esecuzione in sistemi di virtualizzazione, ambienti cloud o per il download come distribuzione Live. Quando si lavora con OBS, uno sviluppatore può utilizzare un servizio online già pronto build.opensuse.org o stabilire un sistema simile sul tuo server. Inoltre, puoi implementare rapidamente la tua infrastruttura utilizzando personale appositamente formato immagini per macchine virtuali, contenitori, installazione locale o per l'avvio PXE sulla rete.

È possibile automatizzare il download dei testi sorgente da repository Git o Subversion esterni o archivi con codice da ftp e server web di progetti primari, il che consente di eliminare il download manuale intermedio di archivi con codice sulla macchina dello sviluppatore locale e successivo importare in openSUSE Build Service. Ai manutentori dei pacchetti viene fornito un mezzo per determinare le dipendenze da altri pacchetti e ricostruire automaticamente queste dipendenze quando vengono apportate modifiche. Quando si aggiungono patch, è possibile testarle con pacchetti simili di altri progetti.

Per gestire Open Build Service è possibile utilizzare sia strumenti da riga di comando che un'interfaccia web. Esistono strumenti per connettere client di terze parti e utilizzare risorse da servizi esterni come GitHub, SourceForge e kde-apps.org. Gli sviluppatori hanno accesso a strumenti per creare gruppi e organizzare la collaborazione. Codice di tutti i componenti del sistema, inclusa l'interfaccia web, il sistema di test dei pacchetti e i backend di assemblaggio, è aperto concesso in licenza con GPLv2.

Tra miglioramentiaggiunto in Open Build Service 2.10:

  • completamente rifatto interfaccia web, che è stata riscritta utilizzando componenti del framework Bootstrap, che ha permesso di semplificare la manutenzione del codice, unificare la progettazione di varie parti ed eliminare molte complicazioni (in precedenza utilizzavano il 960 Grid System, il loro tema per l'interfaccia utente Jquery e un'abbondanza di CSS specifici). Nonostante la riprogettazione radicale, gli sviluppatori hanno cercato di mantenere la riconoscibilità degli elementi e il modo di lavorare familiare per ridurre il disagio quando si passa a una nuova versione;

    Rilascio del sistema di compilazione dei pacchetti Open Build Service 2.10

  • È stato svolto un lavoro per migliorare il supporto per la fornitura e la distribuzione di applicazioni per contenitori isolati. Preparato реестр per la distribuzione in contenitori. Ad esempio, per avviare un nuovo ambiente basato sul repository Tumbleweed, ora devi solo eseguire "docker run -ti -rm Registry.opensuse.org/opensuse/tumbleweed /bin/bash". Protetto
    supporto per tenere traccia dello stato degli assiemi binari (controllo del rilascio) nei contenitori. Aggiunto il supporto per i profili kiwi e la possibilità di generare manifest multi-arco;

  • Aggiunti moduli per l'integrazione con Gitlab e pagina, che consentono di associare determinate azioni in OBS quando vengono effettuati nuovi commit o si verificano eventi specifici in questi sistemi.
  • Possibilità integrata di caricare su ambienti cloud Amazon EC2 e Microsoft Azure, nonché di pubblicare tramite Vagrant;
  • gli script init sysv sono stati sostituiti con file systemd;
  • Aggiunto supporto per l'archiviazione di parametri con dati sulle prestazioni nel DBMS InfluxDB;
  • L'emoji è consentito nei campi di testo (per essere incluso nel database.yml, la codifica deve essere impostata su utf8mb4);
  • Aggiunta un'opzione per inviare notifiche ai proprietari dei messaggi sui problemi, con informazioni sui nuovi commenti;
  • È apparsa una funzione per la conferma preliminare delle richieste (la richiesta viene accettata solo al termine della revisione);
  • Prestazioni del codice ottimizzate per la generazione di prodotti e la pubblicazione nel repository. Il pianificatore ora ha la possibilità di aggiornare in modo incrementale un progetto.

Fonte: opennet.ru

Aggiungi un commento