Ifølge en undersøkelse som selskapet ClusterHQ tidligere har fått gjennomført, bruker mange applikasjonsutviklere en betydelig andel av tiden sin på å rette feil som først oppdages når applikasjonen er tatt i bruk.
I en helt fersk undersøkelse blant 386 personer, primært utviklere og medlemmer av DevOps-team, har ClusterHQ forsøkt å få svar på årsakene til at feilene ikke oppdages under testingen som gjøres før applikasjoner og applikasjonsoppdateringer rulles ut.
Leste du denne? Microsoft lanserer project Springfield: «Fuzzing» skal gjøre det enklere å finne sårbarheter i programvare
Ikke realistisk nok
Den generelle hovedårsaken som blir oppgitt, er at det er utfordrende å sikre at testingen som gjøres i forbindelse med utvikling, speiler det som skjer i produksjonsmiljøet. Enkelte sammenligner dette med å «fly» med en flysimulator. Det kan oppleves veldig forskjellig fra det å fly en virkelig flymaskin.
I undersøkelsen forteller hver tredje respondent at den viktigste, testrelaterte utfordringen som forårsaker at feil dukker opp under produksjon, er manglende evne til å gjenskape produksjonsmiljøet i forbindelse med testingen.
27 prosent oppgir at gjensidig avhengighet med eksterne systemer er den største utfordringen, fordi dette gjør integrasjonstestingen vanskelig.
26 prosent oppgir at de må teste mot urealistiske data, mens 10 prosent oppgir at det er vanskelig dele testdata på tvers av ulike team. Bare 4 prosent oppgir at det er vanskelig å opprette et eget «staging»-miljø for testing.
Les også: Tesla ga norske Varnish ideen til et nytt globalt produkt
FlockerHub
ClusterHQ skal senere i dag åpne en betautgave av FlockerHub, en tjeneste som selskapet kaller en GitHub for data. Mens GitHub kan brukes til å lagre, dele og organisere programvarekode, skal FlockerHub kunne brukes til å lagre, dele og organisere Docker-baserte datavolumer, altså konteinere.
Som klient brukes Fli, et nytt og Git-lignende kommandolinjegrensesnitt som kan kjøres på enhver Linux-maskin. Det kan brukes av utviklere til å lage snapshots, samt klone eller laste opp eller ned datavolumer i FlockerHub. Dette skjer inkrementelt, det vil si at bare endret siden sist, blir overført.
Men denne funksjonaliteten avhenger av at datamaskinen det kjøres på, har støtte for filsystemet ZFS. I alle fall databasesystemer som PostgreSQL, MySQL, RabbitMQ, Redis, Riak, MongoDB, Cassandra, Elastic og SQLite skal fungere sammen med Fli. Men ClusterHQ oppgir at Fli også fungerer med alt annet som fungerer med Linux.
Fli og FlockerHub tilbyr begge versjonskontroll over datakonteinerne og dermed mulighet for å rulle tilbake til tidligere versjoner. Begge har også støtte for finkornet tilgangskontroll. Fli vil bli utgitt med Apache 2.0-lisens.
FlockerHub er trolig basert på ClusterHQs Flocker, et åpen kildekodebasert orkestreringsverktøy for konteiner-tilknyttede datasett.
Tanken bak det FlockerHub og Fli er å gjøre det enklere for systemadministratorer å gi utviklere tilgang til realistiske og oppdaterte datasett, mer kontroll over hvilke data som blir testet og tilgang fra ethvert sted hvor det er behov for dette.
I utgangspunktet er FlockerHub en tjeneste som ClusterHQ vil ta betalt for. Men selskapet antyder på denne siden at det også vil være mulig å kjøre FlockerHub privat i kundens egen nettsky eller datasenter.
Les også: Enda mer Linux i Microsofts nettsky