Developing SDMX software June 2019 SDMX Workshop Rome

  • Slides: 15
Download presentation
Developing SDMX software June, 2019 SDMX Workshop, Rome Eurostat

Developing SDMX software June, 2019 SDMX Workshop, Rome Eurostat

Overview � Exchanging React components � SDMX JS API possibilities � CORS support and

Overview � Exchanging React components � SDMX JS API possibilities � CORS support and issues � Use of Docker � Samples � Discussion June, 2019 SDMX Workshop, Rome Eurostat

Exchanging React components � Re-use � And of SDMX specific components outside SDMX like

Exchanging React components � Re-use � And of SDMX specific components outside SDMX like mapping local data � Improve � Avoid and share ideas solving issues already solved � Examples �A tree view of categories and categorized artefacts � Editing the properties of an maintainable artefact June, 2019 SDMX Workshop, Rome Eurostat

Exchanging React components � Issues � Requires effort to make a component re-usable �

Exchanging React components � Issues � Requires effort to make a component re-usable � Requires effort to search for a component � Components may require non-SDMX messages � Some tasks are very hard to be performed on frontend � Possible solutions �A central repository for SDMX components ? � Set of rules/restrictions ? � Example June, 2019 Restrict messages to SDMX JSON / CSV SDMX Workshop, Rome Eurostat

SDMX JS API � Just an idea � Model already exists, SDMX JSON �

SDMX JS API � Just an idea � Model already exists, SDMX JSON � Common methods for accessing SDMX REST � Retrieving � Methods data and structural metadata for creating and manipulating SDMX JSON � Complement June, 2019 SDMX React components SDMX Workshop, Rome Eurostat

Cross Origin Resource Sharing - CORS � Short intro � Mechanism to tell a

Cross Origin Resource Sharing - CORS � Short intro � Mechanism to tell a browser that certain requests from one site can access resources from different domain/site � By default browsers do not allow it to prevent Cross Origin attacks � CORS removes security restrictions on browser � Affects Web applications accessing SDMX Web services � SDMX Web Service must be configured to allow specific hosts (or all hosts) � And what methods, headers are allowed by the browser � This June, 2019 doesn’t protect the server SDMX Workshop, Rome Eurostat

SDMX RI and CORS option Example Description Origin http: //www. example. com The domain

SDMX RI and CORS option Example Description Origin http: //www. example. com The domain to match Allow methods GET, PUT The list of allowed methods Allowed headers Accept, Range The list of request headers Allowed credentials True Allow java script code to read response when authentication is used Exposed headers Content-Type, Location The whitelist of response headers June, 2019 SDMX Workshop, Rome Eurostat

Docker �A container technology � Containers allow a developer to package up an application

Docker �A container technology � Containers allow a developer to package up an application with all of the parts it needs, such as libraries and other dependencies, and ship it all out as one package � https: //opensource. com/resources/what-docker � And ? � SDMX software usually has dependencies � Application servers (IIS , Web. Logic, Tomcat) � Frameworks (. NET, Java, nodejs ) � Databases June, 2019 SDMX Workshop, Rome Eurostat

SDMX-RI current usage of Docker � Part of the build pipeline � Common test

SDMX-RI current usage of Docker � Part of the build pipeline � Common test environment � Develop On local machines � Docker runs locally Docker test Databases � Web Services � � Compose GIT different combinations MSDB + AUTHDB + DDBs � IIS/Kerstel, Weblogic/Tomcat � Oracle, Sql Server, Maria. DB � Configuration � June, 2019 Build SDMX Workshop, Rome Eurostat Jenkins

SDMX-RI future with Docker � Use for distribution � Pre-configured � Simplify installation and

SDMX-RI future with Docker � Use for distribution � Pre-configured � Simplify installation and updates � Run SDMX RI in a stable virtual environment � Reduce the number of surprises � Same environment in development and production � Integrate easier in each organization's build pipeline � Build Dockerfiles that apply configuration, plugins, even code changes June, 2019 SDMX Workshop, Rome Eurostat

SDMX-RI future with Docker � Many possible combinations � SDMX RI WS + MSDB

SDMX-RI future with Docker � Many possible combinations � SDMX RI WS + MSDB + AUTHDB + MAWEB � SDMX RI WS + NSI Client � MAWEB + MSDB + AUTHDB �. NET Core or Java � …. � Linux containers � No license restrictions � run on Linux and Windows �. NET Core and Java June, 2019 SDMX Workshop, Rome Eurostat

Example configuration Docker image OS without kernel ASP. NET Core DDB Docker image OS

Example configuration Docker image OS without kernel ASP. NET Core DDB Docker image OS without kernel ASP. NET Core NSI WS Docker image Maria. DB (or others) Volume App. config MA WS OS without kernel App. config Persists MSDB and AUTHDB Configuration is organisation specific and is the same configuration used right now for SDMX RI June, 2019 SDMX Workshop, Rome Eurostat

Extending existing containers FROM Eurostat/NSIWS. NET: 7. 4. 0 COPY myconfig /app/config/ RUN extracustomization.

Extending existing containers FROM Eurostat/NSIWS. NET: 7. 4. 0 COPY myconfig /app/config/ RUN extracustomization. sh COPY myplugins /app/plugin June, 2019 SDMX Workshop, Rome Eurostat

Docker samples � MSDB �. NET Dockerfile Docker file � IIS/Windows � Linux/Kestrel �

Docker samples � MSDB �. NET Dockerfile Docker file � IIS/Windows � Linux/Kestrel � Java Dockerfile � Tomcat � Weblogic June, 2019 SDMX Workshop, Rome Eurostat

Thank you! Questions June, 2019 SDMX Workshop, Rome Eurostat

Thank you! Questions June, 2019 SDMX Workshop, Rome Eurostat