KADA (Drupal 7) migraatio uuteen (versioon) webiin

Samankaltaiset tiedostot
turku.fi:stä kunta.fi:ksi Kuntamarkkinat

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

MAKUFI. Avoimen tuotteen hallintamalli Maakuntien verkkopalvelusivustot

Maanmittauslaitos.fi ja saavutettavuus

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

VM/2232/ /2016

JWT 2016 luento 11. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

ELM GROUP 04. Teemu Laakso Henrik Talarmo

MAANMITTAUSLAITOS.FI JA SAAVUTETTAVUUS EMILIA HANNULA & KIRSI MÄKINEN

HRI-verkkopalvelu ( + ckan.hri.fi) TEKNINEN KUVAUS. Helsinki Region Infoshare

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

UNA. Pirkko Kortekangas, UNA kehitysjohtaja

Suomi.fi-palvelutietovaranto

Suomi.fi Palvelutietovaranto (PTV) Mitä, miksi, miten ja milloin?

Suomi.fi-palvelutietovaranto. Info: Digituen kuvaaminen palveluna Palvelutietovarantoon (PTV)

Kiinteistöjen paloturvallisuuden ajankohtaispäivät 2016 Muuttuva ympäristö ja teknologian haasteet Palontorjunnan laitteistot Lauri Lehto,

Sulava. Markku Suominen. Puhelin: Käyttöönotto Käyttö

Tietojärjestelmien integroiminen hyödyntämällä palvelupohjaista arkkitehtuuria. CASE: Metropolia. Jaakko Rannila & Tuomas Orama 1

Suomi.fi-palvelutietovaranto

LAS- ja ilmakuva-aineistojen käsittely ArcGIS:ssä

Järjestelmäarkkitehtuuri (TK081702)

Test-Driven Development

Suomi.fi-palvelutietovaranto

Tekninen suunnitelma - StatbeatMOBILE

Taltioni teknisen alustan arviointi

CASE Varma Testauksen haasteet moniuloitteisessa testiympäristössä Tuukka Vähäpassi

Skosmos 0.6 esittely. Osma Suominen ONKI-projektin laajennetun projektiryhmän kokous

Sivuston tiedotemreemir.com

Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)

labs.kirjastot.fi Antti Pakarinen Timo Tuominen

Avoimen lähdekoodin karttapalvelu Oskarin hyödyntäminen HSY:ssä. Henna-Kaisa Räsänen HSY paikkatietoseminaari Finlandia-talo

TOIMITUSSOPIMUS ASIAKAS- JA POTILASTIETOJÄRJESTELMÄSTÄ

Digiroad-aineiston hyödyntäminen rajapintapalveluiden kautta MapInfo

ohjelman arkkitehtuurista.

Kaupunginkanslian avoin ohjelmistokehitys, rajapintatyö, syksy kevät Projektitarpeen ja tavoitteiden kuvaus

Tutkimusdatan hallinnan kansalliset välineet IDA, Etsin, AVAA. Stina Westman, ATT-hanke, CSC

Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?

Avointen aineistojen julkaisualusta AVAA

Tekninen suunnitelma - StatbeatMOBILE

API:Hack Tournee 2014

Webforum. Version 16.4 uudet ominaisuudet. Päivitetty:

KAOS 2015: Integraatioiden standardointi suunnittelumallien avulla. Ilkka Pirttimaa, Chief ICT Architect, Stockmann ICT

Ylläpito. Ylläpito. Ylläpidon lajeja Ohjelmistotuotanto, syksy 1998 Ylläpito

Rakennusluokitus 2018 ja rakennusluokitin. Atro Andersson Rakennustiedot myötätuulessa

AVOIN KOODI YRITTÄJYYDEN LÄHTÖKOHTANA

Pilottipalvelun esittely johtopäätökset

Kokemuksia Geoserveristä IL:n avoimen datan projektissa Mikko Visa

Juulin kehittäminen: tilannekatsaus

Sosiaalinen media Facebook, Twitter, Nimenhuuto

Korkeakoulujen kirjastojärjestelmien uusiminen - tilannekatsaus

Tietovarannot. Anna Eteläaho. Analyysi ja yhteenveto avoimen datan innovaatiokilpailun kilpailutöistä. Intressiryhmän 2. kokous 27.2.

Rajapinnat kuntajärjestelmissä #Kuntamarkkinat

Julkaisuarkistopalveluiden tilannekatsaus

Millainen projekti Suomi.fi on? Projektinhallintapäivä 2017, Tampere

Koodistoeditorin toteutuksen lähtökohtia: KaPA-koodistopalvelu ja REST-rajapinnat

HAAVOITTUVUUKSIEN HALLINTA RAJOITA HYÖKKÄYSPINTA-ALAASI

Esimerkkinä - ilmainen blogi-julkaisujärjestelmä. WordPress:stä on myös palvelimelle asennettava versio (WordPress.

Liiketoimintasovellusten modernisointi - Anna sovelluksillesi uusi elämä. Sofor varmistaa investointiesi tehokkaan hyödyntämisen

Digiarkistosta palveluja kuluttajille Kari Kaikkonen Mediatalo ESA Oy

SmartShip Connect Lite lisäosa WooCommerce alustalle (c) Webbisivut.org

Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä

Juha Peltomäki JAMK/Teknologia

Kansallinen Palvelutietovaranto (PTV)

Sote-tieto hyötykäyttöön -strategia Uudet kansalaispalvelut Toimeenpano

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

Suomi.fi-palvelutietovaranto

Tekoälyn hyödyntäminen asiakaspalvelun parantamiseksi Valtorissa ja Palkeissa

Suomi.fi-palvelutietovaranto. Klinikka: Digituen kuvaaminen palveluna Palvelutietovarantoon (PTV)

Avoimen ja yhteisen rajapinnan hallintamalli

SMART BUSINESS ARCHITECTURE

Test-Driven Development

KOLERASTA DIGITALISAATIOON Mikko Rusama, Helsingin Kaupungin Digitalisaatiojohtaja Avoin Data

8/20: Luokat, oliot ja APIt

DataLake-hanke - AWS , tietohallinto, Matti Valli, Pasi Porkka

Javan asennus ja ohjeita ongelmatilanteisiin

Valtion uudet yhteentoimivuuspalvelut: dataportaali, palvelutietovaranto ja yhteentoimivuus.fi v.2

Saavutettavuus tietojärjestelmien hankinnoissa

KYSELYTUTKIMUS: Yritysten verkkopalvelut sekä hankaluudet niiden hankinnassa ja määrittelyssä

PTV & ASTI infotilaisuus

Suomen avoimien tietojärjestelmien keskus COSS ry

Webforum. Version 17.3 uudet ominaisuudet. Päivitetty:

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä ! Java luokkia n. 5000

Ohjelmistojen suunnittelu

Juuli-julkaisutietoportaali

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Suomi.fi-palvelutietovaranto (PTV)

UNA PoC-yhteenveto CGI Aino Virtanen

ehoks: tietomalli ja rajapinta

Ohjeistus verkkoprojektiin

Suomi.fi-palvelutietovaranto Kaikki oleellinen julkishallinnon palveluista yhdessä paikassa. PTV-rajapintojen ajankohtaiset asiat

Yhteentoimivuusalusta ja sen hyödyntäminen kuntien/maakuntien taloushallinnossa Petri Tenhunen, VRK

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

IoT-järjestelmän ja ulkovalaistuksen ohjauksen hankinta -markkinavuoropuhelutilaisuus

KODAK EIM & RIM VIParchive Ratkaisut

VYPEdit verkkosivualusta SVY-toimijoille

SmartShip lisäosa WooCommerce alustalle (c) Webbisivut.org

Transkriptio:

KADA (Drupal 7) migraatio uuteen (versioon) webiin Hallittu elinkaaren siirto suoran migraation sijaan Mikko Malmgren & Antti Tuppurainen Mikko Malmgren / Kuntaliitto Antti Tuppurainen / Industry62 @mikko_malmgren @wroxbox 23.4.2019

Selvityksen tausta ja tarve Useat kunnat ovat hyödyntäneet Turun kaupungin Drupal 7 verkkopalveluiden alustaa ja toteutusta (KADA) omien palveluiden perustana. Drupal 7 edustaa vanhaa versiota ja tulevaisuudessa on edessä siirtyminen uuteen Drupal 8/9 versioon tai ainakin uudistaa verkkopalvelun visuaalinen ilmettä tai joitakin toiminnallisia osia. Suora siirtyminen Drupal 8/9 versioon vaatii merkittävää panostusta, koska uudet versiot ovat teknisesti täysin uudistettuja ja taaksepäinyhteensopivuus on katkaistu. KADAssa on contrib-moduuleita kymmeniä sekä paketoituja featureita. Kaikki sellaisenaan vaikeasti, jos ollenkaan, hyödynnettävissä uudessa versiossa. Featurepohjainen paketointi on myös Drupal 7 ominaista ja taas Drupal 8/9 on oma CMI pohjainen yhtenevä konfiguraationhallinta. 2

Drupal 7 End Of Life https://dri.es/drupal-7-8-and-9 3

Suoran migraation haasteet Kada koodi on avoimesti saatavilla Githubissa. Koodia on hyödynnetty (forkattu), mutta uusia toiminnallisuuksia ei ole palautettu (kontribuoitu) takaisin perusversioon. Näkyvyyttä toteutusten yhdenmukaisuuteen ei ole. Jokainen toteutus voi poiketa merkittävästi alkuperäisestä Kadasta. Myöskään Turun verkkopalvelut eivät välttämättä vastaa enää Kadaa. Tiedonhallintamalli saattaa poiketa installaatioissa Kukin verkkopalvelu on toiminnallisuudeltaan erilainen (teema) Suoraa yhteistä ohjeistusta suoraan migraatioon on hankala määritellä, johtuen mm edellä mainituista syistä. Tästä syystä ehdotamme seuraavaa 4

Suoran migraation sijaan hallittu siirtyminen ja kehittäminen uuteen. Nykyisen ratkaisun elinkaarta voidaan pidentää ja siirtyminen uuteen versioon on mahdollista toteuttaa pidemmän ajan kuluessa ja hallitusti seuraavan ehdotuksen mukaisesti: Rajataan nykyinen Drupal 7 installaatio erillisen palomuurin taakse ja tarjotaan data rajapinnan kautta toisiin järjestelmiin Huolehditaan vain security päivityksistä. Ylläpitäjillä säilyy vanha tuttu järjestelmä ja migraatiot muihin järjestelmiin säilyvät kun kaikkea ei tarvitsekaan kirjoittaa uusiksi. Data exportoidaan toisten järjestelmien käyttöön esimerkiksi seuraavilla tavoilla: Custom JSON output moduuli Views Datasource as REST JSON Services 5

Rajapintoja Ajatellaan nykyistä KADA-pohjaista järjestelmää APIna muiden joukossa. Tämä ajattelu vapauttaa yhden monoliittisen järjestelmän kehittämisestä monipuolisemmaksi ja arkkitehtuuriltaan vapaammaksi. 6

Mitä ovat tämän päivän kunnan verkkopalvelut? Uusia tapoja rakentaa verkkopalveluja on olemassa muitakin kuin Wordpress ja Drupal. Kaiken ei tarvitse olla yhdessä monoliittisessä sisällönhallintajärjestelmässä. Sähköiset asiointikanavat joita aikoinaan tahdottiin kaikki kunnan verkkopalveluun onkin kehitetty kutakin omaan käyttötarkoitukseen ja näin ollen usein verkkosivuilta onkin vain linkki asiointikanaviin ja verkkosivut ovatkin muodostuneet viestintäkanavaksi. Tämä pitää ottaa huomioon ja siksi onkin helpompi esitellä seuraava tapa eri tietolähteiden hyödyntämiseen. 7

Headless, GraphQL ja Drupal -installaatiot Hyödynnetään GraphQL teknologiaa, joka mahdollistaa tietosisältöjen hyödyntämisen eri lähteistä. Luodaan perusta uudella teknologialla (esim. Kuntafibase) ja ja yhdistetään uusi alusta vanhaan GraphQL:n avulla ja aloitetaan elinkaaren siirto / palvelun kehittäminen uudessa ympäristössä uusilla menetelmillä. Uudet verkkosivut voivat täten olla esimerkiksi seuraavanlaisia hybridejä: APIT > Apollo server > Vue/React frontend APIT > Migrate API/Drupal 8 > Drupal 8 APIT > Migrate API/Drupal 8 > Tome APIT > Migrate API/Drupal 8 > Gatsby APIT + Drupal 7 + Drupal 8 > Apollo Server > Vue/React frontend (Migrate API/Drupal 8 == KuntafiBase) 8

Esimerkki 1: Apollo Server IOS/Android WEB ReactJs / VueJs GraphQL Client Server JSON REST API PTV Kada/Drupal 7 Wordpress DB https://www.apollographql.com/ https://medium.com/@dwalsh.sdlr/gatsby-apollo-graphcool-netlify-the-webs-promised-land-6dd510efbd72 9

Esimerkki 2: KuntafiBase WEB ReactJs / VueJs GraphQL Frontend MigrateAPI Server JSON REST API PTV Kada/Drupal 7 Wordpress DB https://www.gatsbyjs.org/ https://tome.fyi/ https://www.slideshare.net/gatsbyjs/beyond-static-building-dynamic-apps-with-gatsby 10

Esimerkki 3: KuntafiBase WEB ReactJs / VueJs GraphQL Client Server REST API JSON JSON Kada/Drupal 7 KuntafiBase/drupal 8 Wordpress DB PTV 11

Yhteenveto Esimerkit näyttävät miten voimme hyödyntää vanhoja järjestelmiä uusien järjestelmien/menetelmien datalähteenä. Datat voidaan hakea suoraan GraphQL plugineilla Drupaliin joka renderöi ne verkkopalvelun käyttäjille. Tämä on suoraviivaisin tapa. Usein suoraviivaisin ei kuitenkaan tuota parasta lopputulosta ja siksi esitinkin vaihtoehtoisia lopputuloksia perinteisen Drupal/Wordpress teeman ohelle. Hakukoneet suosivat nopeita verkkosivuja. Käyttäjät olettavat saavansa nopeat ja helposti toimivat verkkosivut. Hakumoottoreiden oletetaan löytävän täsmällisesti tarvittava sisältö. Nämä kaikki oletukset on mahdollista saavuttaa edellä kuvatuilla staattisen generoinnin työkaluilla tai vue/react tyyppisillä frontendeilla. 12