Test dei connettori, help wanted

Vorrei includere nella versione 0.5.2 il connettore Java di @frossi , ma vorrei che qualcuno lo provasse.

Metodo: usate iosdk init, scegliete github e poi redsoft7/io-sdk-java

Poi vorrei anche aggiungere una test suite per gli altri connettori, ma non so come fare. Magari preparare delle immagini con i database con i dati giusti?

1 Mi Piace

Anche contributi sul codice sono ben accetti.

Volevo provare anch’io la 0.5.2, purtroppo sono al mare e la rete va a 100Kb(Iliad)…sto procedendo a fatica.
Da un primo test l’IDE non supporta Java, ho visto nel Dockerfile che l’installazione di Java è commentata.

@msciab rientro a casa il 18, se c’è urgenza magari qualcun’altro può portare avanti lo sviluppo

Non c’è urgenza, ma è bene che provi qualcun altro oltre te che lo hai fatto :slight_smile: lo sai che il primo che lo prova gli salta in faccia per una cosa ovvia che però a te non era mai successa…

I primi 3 che hanno provato iosdk gli è scoppiato in faccia per la stessa ragione: docker non in esecuzione. E a me non era mai successo.

So che l’IDE non supporta Java, il problema è che l’immagine è già troppo grossa, ma per fortuna con la prossima release penso di fare la cosa modulare nel senso che faro ide specifici per ogni linguaggio lanciati on demand e non sempre come è ora.

1 Mi Piace

Ho provato ad installare il connettore con la versione 0.5.2.
Al lancio dei test mi è apparso questo errore.

Aspetta che non ho mergiato ancora il connettore Java devi usare redsoft7/io-sdo-java con l’opzione github

Ok adesso ho lanciato i containers oracle e mysql ma ho ancora questi due test falliti:

@frossi nota la segnalazione

Sono tornato al mondo industrializzato!

Ho notato che il container oracle ci mette un po’ a partire la prima volta.
@gdorsi riesci a verificare che il container oracle sia effettivamente avviato?

Quando lanci il docker-compose dovrebbe dirti il nome del container:
Es: Starting oracle_oracle_1 ... done
Dovresti riuscire a collegarti al container con:
docker exec -it oracle_oracle_1 /bin/bash
A questo punto nella bash del container lancia il comando sqlplus ed inserisci “system” come utente, e “oracle” come password. Se non ti dà errori i test non dovrebbero fallire.

Ho aggiunto al README le istruzione per installare Java sull’ide theia, riesco quindi a compilare e creare l’azione.

Dato che i test usano dei database su docker, per eseguire i test su theia va indicato l’ip a cui docker è raggiungibile. Es:
./gradlew test -Dio-sdk-java.docker.ip=192.168.1.150

Una richiesta: nella prossima release avremo l’installazione di connettori “binari”. Riesci a fare delle github actions che “buildano” una azione come un binario e la pubblicano come release? In modo che uno possa installare semplicemente fornendo un url senza dover buildare il tutto.

Certo!

Faccio un binario per ogni tipologia di database(per ora Mysql e Oracle) ?

Si e’ proprio quella l’idea. Una azione deployabile da creare come zip e creare una release. Possiamo aiutarti con le github actions, puoi vedere il lavoro fatto sotto .github in IO-SDK.

Ciao @frossi sono tornato anche io dalle ferie.

Comunque ancora devo provare ti aggiorno appena riesco.

Ciao @msciab. Ieri ho creato un makefile prendendo spunto da quello di IO-SDK. Stasera provo a creare le github actions.

Ho rimosso anche il file per configurare java sull’, ormai defunto, ide (peccato mi piaceva come idea).

Anche a me piaceva come idea. Ma tutte le volte che parlo con qualcuno era sempre la stessa storia: “ecchemidevoipmpareare sto coso qui ? Ma e’ scomodissomo… ma uso il mio”

Ora visto la fatica che costa… Meglio concentrarsio sulle feature che gli utenti vogliono. Anche perche la quasi totalita vuole usare il gateway gia’ pronto…

Bisogna ascoltare gli utenti e non affezzionarsi a niente…

Ho completato la creazione della github action.
Crea una release ad ogni tag sul repository, prima di fare la build esegue i test.

Qui trovate l’ultima release con zip per mysql ed oracle.

Scaricando per esempio lo zip di mysql e lanciando:
wsk action update iosdk/import io-sdk-java-2020.0728.2319-snapshot-mysql.zip --main Main --docker openwhisk/actionloop-java-v8:nightly
l’azione viene aggiornata correttamente.

@msciab può andare bene?

@gdorsi ho automatizzato la fase di test con lo start e stop dei database, nel README trovi la procedura aggiornata

Perfetto nel nuovo gateway installiamo direttamente dalle release

Ciao a tutti,
su richiesta di @msciab, ho raccolto i vari connettori in un unico repo:
https://github.com/pagopa/io-gateway-connectors

@frossi, riguardo il connettore java, ho copiato i files dal tuo fork e cambiato qualche path… potresti validare le modifiche? Inoltre il nome del jar andrebbe uniformato alla nuova nomenclatura (io-gateway)

Grazie.

p.s: a mio avviso, gli altri connettori dovrebbero avere le funzionalitĂ  di quello java che prenderei come modello di riferimento.

Si ho chiesto io di farlo per consolidare i connettore in un solo repo (per avere in comando iogw install ) potresti vedere se Pier “ha fatto giusto”?

@pierluigi.dilorenzo non ho riscontrato nessun problema sulle tue modifiche. Ho provato anche a creare una release sul mio fork e funziona tutto.

Ho creato una pull request per aggiornare alla nuova nomenclatura.

1 Mi Piace