Jatkuvan integraation kehitys ja avoimen lähdekoodin lisenssienhallinta
Sarvela, Toni (2018)
Sarvela, Toni
Kajaanin ammattikorkeakoulu
2018
Creative Commons Attribution-NoDerivs 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201805097311
https://urn.fi/URN:NBN:fi:amk-201805097311
Tiivistelmä
Tämä opinnäytetyö keskittyi kahteen pääaihealueeseen, jotka pyrittiin yhdistämään suuremmaksi kokonaisuudeksi; jatkuva integraatio sekä avoimen lähdekoodin lisenssienhallinta. Työn ajatus sai alkunsa työharjoitteluaikana, joka suoritettiin toimeksiantona Mecano Businessille.
Työn tavoitteena oli päivittää Mecanon CI-ympäristöä ja luoda tähän yhteyteen lisenssienhallintaratkaisu, jolla voidaan tunnistaa avoimen lähdekoodin lisenssejä versionhallinnasta ja tuoda informaatiota näistä kehittäjille. Eräät avoimen lähdekoodin lisenssit vaativat, että lähdekooditiedostoista käännetyt ohjelmistot sisältävät maininnan avoimen lähdekoodin kehittäjästä. Lisenssienhallinnan päätoimintona on siis luoda näistä lisensseistä tällainen tiedosto lisenssiehtojen mukaisesti. Lisenssienhallinta sopii hyvin jatkuvan integraation ratkaisun yhteyteen, koska tällä tavalla lisenssienhallinta on osana jokaisessa käännetyssä ohjelmistoversiossa ja tiedot lisensseistä pysyvät ajan tasalla.
CI-ympäristön päivittämisellä tarkoitetaan itse CI-työkalun päivittämistä uudempaan versionumeroon ja uuden palvelinverkoston käyttöönottamista uuden version kanssa. CI-työkalun päivittäminen mahdollisti uuden skriptikielen käyttämisen, jolla pystyttiin paremmin ohjaamaan ohjelmiston integraatiovaiheita, vaikka koko integraatioprosessi olisikin pitkä ja monimutkainen. Päivittämisen tuomat edut paransivat ohjelmistovalmiutta ja testauksen koordinointia uudessa palvelinverkostossa.
Työn tavoitteena oli päivittää Mecanon CI-ympäristöä ja luoda tähän yhteyteen lisenssienhallintaratkaisu, jolla voidaan tunnistaa avoimen lähdekoodin lisenssejä versionhallinnasta ja tuoda informaatiota näistä kehittäjille. Eräät avoimen lähdekoodin lisenssit vaativat, että lähdekooditiedostoista käännetyt ohjelmistot sisältävät maininnan avoimen lähdekoodin kehittäjästä. Lisenssienhallinnan päätoimintona on siis luoda näistä lisensseistä tällainen tiedosto lisenssiehtojen mukaisesti. Lisenssienhallinta sopii hyvin jatkuvan integraation ratkaisun yhteyteen, koska tällä tavalla lisenssienhallinta on osana jokaisessa käännetyssä ohjelmistoversiossa ja tiedot lisensseistä pysyvät ajan tasalla.
CI-ympäristön päivittämisellä tarkoitetaan itse CI-työkalun päivittämistä uudempaan versionumeroon ja uuden palvelinverkoston käyttöönottamista uuden version kanssa. CI-työkalun päivittäminen mahdollisti uuden skriptikielen käyttämisen, jolla pystyttiin paremmin ohjaamaan ohjelmiston integraatiovaiheita, vaikka koko integraatioprosessi olisikin pitkä ja monimutkainen. Päivittämisen tuomat edut paransivat ohjelmistovalmiutta ja testauksen koordinointia uudessa palvelinverkostossa.
