CICD per i startups: chì strumenti ci sò è perchè micca solu l'imprese grandi è cunnisciute l'utilizanu

I sviluppatori di l'arnesi CICD spessu listanu grandi cumpagnie cum'è clienti - Microsoft, Oculus, Red Hat, ancu Ferrari è NASA. Sembra chì tali marchi travaglianu solu cù sistemi caru chì una startup custituita da un coppiu di sviluppatori è un designer ùn pò micca permette. Ma una parte significativa di l'arnesi hè dispunibule per i picculi squadre.

Vi diceremu ciò chì pudete attentu quì sottu.

CICD per i startups: chì strumenti ci sò è perchè micca solu l'imprese grandi è cunnisciute l'utilizanu
Фото - Csaba Balazs - Unsplash

PHP Censor

Un servitore CI open source chì facilita a creazione di prughjetti in PHP. Questu hè un furcu di u prugettu PHPCI. PHPCI stessu hè sempre in sviluppu, ma micca cusì attivamente cum'è prima.

PHP Censor pò travaglià cù GitHub, GitLab, Mercurial è parechji altri repositori. Per pruvà u codice, l'uttellu usa e librerie Atoum, PHP Spec, Behat, Codeception. Quì schedariu di esempiu cunfigurazioni per u primu casu:

test:
    atoum:
        args: "command line arguments go here"
        config: "path to config file"
        directory: "directory to run tests"
        executable: "path to atoum executable"

Consideratuchì PHP Censor hè bè adattatu per implementà i picculi prughjetti, ma duverete ospitu è ​​cunfigurà voi stessu (self-hosted). Stu compitu hè simplificatu da una documentazione abbastanza dettagliata - hè nantu à GitHub.

Rex

Rex hè l'abbreviazione di Remote Execution. U sistema hè statu sviluppatu da l'ingegnere Ferenc Erki per automatizà i prucessi in u centru di dati. Rex hè basatu annantu à scripts Perl, ma ùn hè micca necessariu di cunnosce sta lingua per interagisce cù l'uttellu - a maiò parte di l'operazioni (per esempiu, copia di i schedari) sò descritte in a biblioteca di funzioni, è i script sò spessu in dece linii. Eccu un esempiu di login in parechji servitori è esecuzione di uptime:

use Rex -feature => ['1.3'];

user "my-user";
password "my-password";

group myservers => "mywebserver", "mymailserver", "myfileserver";

desc "Get the uptime of all servers";
task "uptime", group => "myservers", sub {
   my $output = run "uptime";
   say $output;
};

Avemu cunsigliatu per principià a vostra cunniscenza cù u strumentu cù guida ufficiale и e-book, chì hè attualmente cumpletu.

Open Build Service (OBS)

Questa hè una piattaforma per ottimisà u sviluppu di distribuzioni. U so codice hè apertu è hè in u repository à GitHub. L'autore di u strumentu hè a cumpagnia Novell. Hà participatu à u sviluppu di a distribuzione SuSE, è stu prughjettu era inizialmente chjamatu openSUSE Build Service. Ùn hè micca surprisa chì Open Build Service usu per custruisce prughjetti in openSUSE, Tizen è VideoLAN. Dell, SGI è Intel travaglianu ancu cù l'uttellu. Ma trà l'utilizatori regularmente ci sò ancu picculi startups. In particulare per elli, l'autori raccolti (pagina 10) preconfiguratu pacchettu di software. U sistema stessu hè cumplettamente gratuitu - avete solu spende soldi in hosting o un servitore hardware per implementà.

Ma in tutta a so esistenza, u strumentu ùn hà mai acquistatu una larga cumunità. Eppuru era parte di u Linux Developer Network, rispunsevuli di standardizà u SO apertu. Pò esse difficiule Truvate a risposta à a vostra dumanda nantu à i fori tematichi. Ma unu di i residenti di Quora hà nutatu chì in Chat IRC In Freenode, i membri di a cumunità rispundenu abbastanza prestu. U prublema di una piccula cumunità ùn hè micca glubale, postu chì a suluzione à parechji prublemi hè stata descritta in a documentazione ufficiale (PDF è EPUB). Ibid. ponu esse trovu e migliori pratiche per travaglià cù OBS (ci sò esempi è casi).

Rundeck

Strumentu apertu (GitHub), chì automatizeghja i travaglii in u centru di dati è u cloud usendu scripts. Un servitore di script speciale hè rispunsevule per a so esecuzione. Pudemu dì chì Rundeck hè una "figlia" di a piattaforma di gestione di l'applicazioni ControlTier. Rundeck si separava da ellu in u 2010 è hà acquistatu una nova funziunalità - per esempiu, integrazioni cù Puppet, Chef, Git è Jenkins.

U sistema hè usatu in A cumpagnia di Walt Disney, Salesforce и Ticketmaster. Ma u prugettu hè ancu adattatu per startups. Questu hè chì Rundeck hè licenziatu sottu a licenza Apache v2.0. In più, u strumentu hè abbastanza faciuli à aduprà.

Un resident di Reddit chì hà travagliatu cù Rundeck, dice, chì risolve a maiò parte di e difficultà per mè stessu. L'anu aiutatu cù questu documentazione è e-books, publicatu da i sviluppatori.

Pudete ancu truvà brevi guide per a stallazione di l'uttellu in linea:

GoCD

Strumentu apertu (GitHub) automatizà u cuntrollu di versione di codice. Hè statu introduttu in 2007 da a cumpagnia Canta U Populu Corsu - tandu u prughjettu si chjamava Cruise.

GoCD hè utilizatu da ingegneri da u situ di vendita di vittura in linea AutoTrader, serviziu di genealogia Ancestry è fornitore di carta di creditu Barclaycard. Tuttavia, un quartu di utilizatori strumentu custituisce una piccula impresa.

A popularità di u serviziu trà e startups pò esse spiegata da a so apertura - hè distribuitu sottu a licenza Apache v2.0. À u listessu tempu, GoCD hà una plugins per integrazione cù software di terzu partitu - sistemi d'autorizazione è soluzioni cloud. Sistema veru abbastanza cumplicatu in mastering - hà un gran numaru di operatori è squadre. Dinù, certi utilizatori si lamenta circa l 'interfaccia poviru è bisognu cunfigurà l'agenti per a scala.

CICD per i startups: chì strumenti ci sò è perchè micca solu l'imprese grandi è cunnisciute l'utilizanu
Фото - Matt Wildbore - Unsplash

Se vulete pruvà GoCD in pratica, pudete truvà nantu à u situ web di u prughjettu documentazione ufficiale. Pò esse ancu cunsigliatu cum'è fonte di infurmazione supplementaria Blog di sviluppatori GoCD cù manuali nantu à a stallazione.

Jenkins

Jenkins hè assai cunnisciutu è hè cunsideratu un tipu di standard in u campu di CICD - di sicuru, senza ellu sta selezzione ùn saria micca cumpleta. U strumentu apparsu in u 2011, stagnu un fork di Project Hudson da Oracle.

Oghje cù Jenkins sò travagliani à a NASA, Nintendo è altre grande urganisazione. Tuttavia più di 8% utilizatori cuntanu picculi squadre di fin'à dece persone. U pruduttu hè cumplettamente liberu è distribuitu sottu licenza MIT. Tuttavia, duverete ospitare è cunfigurà Jenkins sè stessu - hè bisognu di un servitore dedicatu.

In tutta l'esistenza di l'instrumentu, una grande cumunità s'hè furmatu intornu à ellu. L'utilizatori cumunicanu attivamente in i fili Reddit и Gruppi Google. I materiali nantu à Jenkins appariscenu ancu regularmente in Habré. Se vulete diventà parte di a cumunità è cumincià à travaglià cù Jenkins, ci hè documentazione ufficiale и guida di sviluppatore. Avemu cunsigliatu ancu e seguenti guide è libri:

Jenkins hà parechji prughjetti laterali utili. U primu hè un plugin Configurazione cum'è Code. Facilita a stallazione di Jenkins cù API faciuli di leghje chì ancu l'amministratori senza una cunniscenza prufonda di l'uttellu ponu capisce. U sicondu hè u sistema Jenkins X per u nuvulu. Accelera a consegna di l'applicazioni implementate nantu à l'infrastruttura IT à grande scala automatizendu alcune attività di rutina.

Buildbot

Questu hè un sistema di integrazione cuntinuu per automatizà u ciculu di creazione è teste di applicazioni. Cuntrolla automaticamente a funziunalità di u codice ogni volta chì i cambiamenti sò fatti.

L'autore di u strumentu era l'ingegnere Brian Warner. Oghje hè di turnu cambiatu gruppu d'iniziativa Buildbot Oversight Committee, chì include sei sviluppatori.

Buildbot si usa prughjetti cum'è LLVM, MariaDB, Blender è Dr.Web. Ma hè ancu usatu in prughjetti più chjuchi cum'è wxWidgets è Flathub. U sistema supporta tutti i VCS muderni è hà paràmetri di custruzzione flessibili usendu Python per descriverà. Vi aiuterà à trattà cun elli tutti. documentazione ufficiale è tutoriali di terzu, per esempiu, quì hè un brevi Manuale di IBM.

È sicuru, ùn hè micca tuttu Strumenti DevOps chì e piccule urganisazioni è startups anu da esse attenti. Dà i vostri arnesi preferiti in i cumenti, è avemu da pruvà à parlà di elli in unu di i seguenti materiali.

Ciò chì scrivemu in u blog corporativu:

Source: www.habr.com

Add a comment