Järjestelmän ja rajapintojen versiohallinta
2.2. Järjestelmän ja rajapintojen versiohallinta
Nemo ylläpitää listaa tuetuista versioista. Nemo tukee aina nykyistä tuotantoversiota (latest stable) sekä kahta (2) edellistä versiota.
Vanhojen versioiden tuki päättyy siirtymäajan jälkeen, joka on määritelty EMSA:n versionhallintapolitiikassa. Nemo kykenee näyttämään aikaisemmin lähetetyt tiedot, vaikka kyseinen versio ei enää olisi tuettu.
Yhteensopivuuden varmistus
- Nemo järjestelmässä on skeema- ja logiikkavalidaatiot, jotka takaavat MIG-mukaisuuden.
- Tuki useille versioille perustuu version tunnistamiseen metadata-tasolla (esim. versionumero sanomassa tai API-rajapinnan käytössä).
- Takautuva tietojen tarkastelu on mahdollista myös vanhemmilla versioilla, mutta vain uusin versio takaa täydet toiminnot.
Versiopäivitykset ja muutosilmoitukset
Kun Suomi saa tiedon uudesta tulevasta MIG-version päivityksestä, Fintraffic julkaisee asiasta tiedotteen. Tiedotteessa kerrotaan, että uusi MIG-versio on tulossa ja alustava arvio sen julkaisuajankohdasta.
Varsinainen MIG-version implementointi tapahtuu vaiheittain, ja siitä tiedotetaan erikseen seuraavissa kanavissa:
- Fintrafficin kehittäjäportaaliApar i en ny flik
- Sähköpostilla organisaation yhteishenkilöille
Organisaation yhteyshenkilön sähköpostia hallinnoidaan organisaation ylläpito -näkymässä.
Versiotiedot — uuden version kuvaus, sanomarakenne ja rajapintakuvaus — julkaistaan Fintrafficin GitHub-repositorioon (JSON Schema, OpenAPI, MIG-rakenteet). Jokaisesta versiosta laaditaan changelog, jossa kerrotaan olennaiset muutokset verrattuna edelliseen versioon.
Tiedottamisen tavoitteena on varmistaa, että kaikki kolmannet osapuolet saavat riittävästi aikaa valmistautua versiopäivitykseen sekä testata toteutuksiaan ennen tuotantoon siirtymistä.
Toimenpiteet versiopäivityksen yhteydessä
Versiopäivityksen yhteydessä sinun tai organisaatiosi teknisen yhteyshenkilön tulee huomioida seuraavat asiat:
- Yhteensopivuustestaus — varmista, että oma järjestelmäsi tukee uutta MIG-versiota ja tuottaa validia dataa rajapintojen mukaisesti.
- Rajapintamuutokset — tarkista julkaistut skeemat ja mahdolliset pakollisten kenttien tai rakenteiden muutokset.
- Käyttökatkot — huomioi mahdolliset tuotantokatkokset tai versiopäivityksiin liittyvät ajoitetut huoltokatkot.
- Versionhallinta — dokumentoi omaan kehitysprosessiin versio, jota käytät, ja seuraa Fintrafficin ilmoittamia siirtymäaikoja.
- Hyväksymistestaus — testaa koko sanomavirta (lähetys, kuittaus, mahdolliset virheilmoitukset) staging-ympäristössä.