Pavel Sklenar

Transfer data between two systems using Azure functions

Introduction This simple demo shows possible integration between two systems (system A and system B) using Azure Functions. The architecture constraints: All updates from the system A must be transfered into the system B The system A is listening on HTTP with REST API The system B is listening on HTTP with REST API The system B is not fully compatible in message definitions, so field mapping must be used The mapping must be saved in DB (I chose CosmosDB) Due to missing push notification in the system A, its API must be periodically checked The system B may be occasionally offline, so some type of persistent bus should be used.

Creating Azure Red Hat OpenShift 4 cluster

You can find here the guide: how to create an Azure Red Hat OpenShift 4 (ARO) cluster, how to setup connectivity to the new ARO cluster, how to deploy an example application. Note The full example with all resources could be found here on GitHub. Create Azure Red Hat OpenShift 4 (ARO) cluster Prepare environment Set the correct subsription: az account set -s TestingSubscription The file .

Jenkins - Creating Dynamic Project Folders with Job DSL

This post is about the dynamic creating of project folders in Jenkins using Job DSL Plugin. The newly created project folders will be accessible by a specific group or user only, so you are able to use your Jenkins instance by multiple teams and each team will have their own folder for their projects. Before we can start, the following plugins must be installed: Matrix Authorization Strategy Job DSL Plugin Setting Up Correct Authorization Type The first step is related to set up a correct authorization type in the Configure Global Security menu:

Vulnerability Scan as part of Continuous Integration

Have you ever image how many vulnerabilities exist in your applications since it was created? And how many of them comes from its dependencies? The high secure environments require to perform regularly checks to discover any new vulnerability issue in your application. These checks can be done manually, but it may take a lot of time, especially if you are using the current frameworks (e.g. Spring Boot) with many and many transitive dependencies.

Spring Boot: Run and Build in Docker

It exists many “Docker for Java developers” guides, but most of them does not take care of small and efficient Docker images. I have combined many resources how to make a simple and fast Docker image containing any of Spring Boot like application. My goals: Create a single and portable Dockerfile (as general as possible). Make Maven build inside Docker (no need to have Maven locally). Don’t download any Maven dependencies repeatedly, if no changes in pom.

Securing REST APIs with Client Certificates

This post is about an example of securing REST API with a client certificate (a.k.a. X.509 certificate authentication). In other words, a client verifies a server according to its certificate and the server identifies that client according to a client certificate (so-called the mutual authentication). In connection with Spring Security, we will be able to perform some additional authentication and authorization. Technologies used: Spring Boot 2.0.5.RELEASE Spring Web + Security 5.