From 9e9f15ad41d2e27d3b2461502d41cd99ee3a17cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Mass=C3=A9?= Date: Thu, 7 Nov 2019 15:44:42 +0100 Subject: [PATCH] 2019-11-07 update --- config.toml | 8 +++++++- .../develop-deploy-deliver-continuously.md | 11 +++++++++++ content/speaking/red-hat-forum-helsinki-2019.md | 10 ++++++++++ content/speaking/red-hat-summit-2019.md | 11 +++++++++++ content/speaking/red-hat-tech-exchange-2019.md | 14 ++++++++++++++ ...3scale-toolbox-deploy-an-api-from-the-cli.md | 11 +++++++++++ ...-deploying-your-api-from-a-ci-cd-pipeline.md | 16 ++++++++++++++++ content/writing/_index.md | 7 +++++++ .../deploy-your-api-from-a-jenkins-pipeline.md | 9 +++++++++ .../full-api-lifecycle-management-a-primer.md | 11 +++++++++++ ...our-apis-deployed-with-istio-service-mesh.md | 16 ++++++++++++++++ ...-single-sign-on-give-it-a-try-for-no-cost.md | 13 +++++++++++++ ...cate-with-red-hat-single-sign-on-keycloak.md | 13 +++++++++++++ ...the-3scale-toolbox-jenkins-shared-library.md | 9 +++++++++ static/speaking/2019-10-21-RHTE-Award.png | Bin 0 -> 44329 bytes 15 files changed, 158 insertions(+), 1 deletion(-) create mode 100644 content/speaking/develop-deploy-deliver-continuously.md create mode 100644 content/speaking/red-hat-forum-helsinki-2019.md create mode 100644 content/speaking/red-hat-summit-2019.md create mode 100644 content/speaking/red-hat-tech-exchange-2019.md create mode 100644 content/writing/3scale-toolbox-deploy-an-api-from-the-cli.md create mode 100644 content/writing/5-principles-for-deploying-your-api-from-a-ci-cd-pipeline.md create mode 100644 content/writing/_index.md create mode 100644 content/writing/deploy-your-api-from-a-jenkins-pipeline.md create mode 100644 content/writing/full-api-lifecycle-management-a-primer.md create mode 100644 content/writing/manage-your-apis-deployed-with-istio-service-mesh.md create mode 100644 content/writing/red-hat-single-sign-on-give-it-a-try-for-no-cost.md create mode 100644 content/writing/using-a-public-certificate-with-red-hat-single-sign-on-keycloak.md create mode 100644 content/writing/using-the-3scale-toolbox-jenkins-shared-library.md create mode 100644 static/speaking/2019-10-21-RHTE-Award.png diff --git a/config.toml b/config.toml index 3cf2b49..fbedb63 100644 --- a/config.toml +++ b/config.toml @@ -58,7 +58,13 @@ identifier = "speaking" url = "/speaking/" [[menu.main]] -name = "Contact" +name = "Writing" weight = 50 +identifier = "writing" +url = "/writing/" + +[[menu.main]] +name = "Contact" +weight = 60 identifier = "contact" url = "/contact/" diff --git a/content/speaking/develop-deploy-deliver-continuously.md b/content/speaking/develop-deploy-deliver-continuously.md new file mode 100644 index 0000000..570814c --- /dev/null +++ b/content/speaking/develop-deploy-deliver-continuously.md @@ -0,0 +1,11 @@ +--- +title: "Webinar: Develop. Deploy. Deliver continuously." +date: 2019-10-10T00:00:00+02:00 +draft: false +--- + +On the 10th October 2019, I spoke at a Red Hat webinar on a session named _"Simplify your API Strategy with Istio"_ where I showcased the integration between 3scale and Istio. + +For more information: https://www.redhat.com/en/events/webinar/develop-deploy-deliver-continuously + +{{< youtube 4kiKuqbI9QM >}} diff --git a/content/speaking/red-hat-forum-helsinki-2019.md b/content/speaking/red-hat-forum-helsinki-2019.md new file mode 100644 index 0000000..cbcb493 --- /dev/null +++ b/content/speaking/red-hat-forum-helsinki-2019.md @@ -0,0 +1,10 @@ +--- +title: "Red Hat Forum Helsinki 2019" +date: 2019-10-08T00:00:00+02:00 +draft: false +--- + +On the 08th October 2019, I spoke at Red Hat Forum Helsinki on a session named +_"Agile Integration: Transforming Enterprises - Nothing happens until something is integrated"_. + +For more information: https://events.redhat.com/profile/form/index.cfm?PKformID=0x65475abcd diff --git a/content/speaking/red-hat-summit-2019.md b/content/speaking/red-hat-summit-2019.md new file mode 100644 index 0000000..cf56fa9 --- /dev/null +++ b/content/speaking/red-hat-summit-2019.md @@ -0,0 +1,11 @@ +--- +title: "Red Hat Summit 2019" +date: 2019-05-08T00:00:00+02:00 +draft: false +--- + +On the 8th May 2018, I spoke at Red Hat Summit on three sessions named: + +- _"Leverage the power of communities to manage your APIs"_ ([demo recording](https://www.youtube.com/watch?v=IaNOypl00o8)) +- _"Istio, the missing link in the evolution of your API strategy"_ ([demo recording](https://www.youtube.com/watch?v=kLTQNGslgB4)) +- _"An APIcast policy in 15 minutes"_ ([demo recording](https://www.youtube.com/watch?v=q1RJBW2N-Xg)) diff --git a/content/speaking/red-hat-tech-exchange-2019.md b/content/speaking/red-hat-tech-exchange-2019.md new file mode 100644 index 0000000..290f322 --- /dev/null +++ b/content/speaking/red-hat-tech-exchange-2019.md @@ -0,0 +1,14 @@ +--- +title: "Red Hat Tech Exchange 2019" +date: 2019-10-21T00:00:00+02:00 +draft: false +--- + +During the three Red Hat Tech Exchange sessions (Americas, EMEA and APAC), I presented two sessions: + +- _"Leverage the power of open source communities to manage your APIs"_ ([full recording](https://youtu.be/I2QutGqIzpA)) +- _"Complementing your Istio Service Mesh with 3scale and Fuse"_ ([demo recording](https://www.youtube.com/watch?v=Wvrnzc7b9qw)) + +The session _Leverage the power of open source communities to manage your APIs_ has been the second best voted session in RHTE APAC! + +![I received an award!](/speaking/2019-10-21-RHTE-Award.png) diff --git a/content/writing/3scale-toolbox-deploy-an-api-from-the-cli.md b/content/writing/3scale-toolbox-deploy-an-api-from-the-cli.md new file mode 100644 index 0000000..03e1eea --- /dev/null +++ b/content/writing/3scale-toolbox-deploy-an-api-from-the-cli.md @@ -0,0 +1,11 @@ +--- +title: "3scale toolbox: Deploy an API from the CLI" +date: 2019-07-29T00:00:00+02:00 +draft: false +--- + +Deploying your API from a CI/CD pipeline can be a tremendous amount of work. The latest release of Red Hat Integration greatly improved this situation by adding new capabilities to the 3scale CLI. The 3scale CLI is named 3scale toolbox and strives to help API administrators to operate their services as well as automate the delivery of their API through Continuous Delivery pipelines. + +Having a standard CLI is a great advantage for our customers since they can use it in the CI/CD solution of their choice (Jenkins, GitLab CI, Ansible, Tekton, etc.). It is also a means for Red Hat to capture customer needs as much as possible and offer the same feature set to all our customers. + +[Continue reading](https://developers.redhat.com/blog/2019/07/29/3scale-toolbox-deploy-an-api-from-the-cli/) diff --git a/content/writing/5-principles-for-deploying-your-api-from-a-ci-cd-pipeline.md b/content/writing/5-principles-for-deploying-your-api-from-a-ci-cd-pipeline.md new file mode 100644 index 0000000..ac141e9 --- /dev/null +++ b/content/writing/5-principles-for-deploying-your-api-from-a-ci-cd-pipeline.md @@ -0,0 +1,16 @@ +--- +title: "5 principles for deploying your API from a CI/CD pipeline" +date: 2019-07-26T00:00:00+02:00 +draft: false +--- + +At Red Hat, we strongly believe an API is not “just another piece of software.” Instead, we think an API is a software component in conjunction with: + +An interface to communicate with it. +An ecosystem of consumers that communicate with this software. +A relationship with developers consuming this API. +An API is built, deployed, and managed not just with the usual methods; as a result, deploying your API from a CI/CD pipeline requires additional processes, tools, and skills. + +In this article, we will focus on the overarching principles and key steps to deploy your API from a CI/CD pipeline. + +[Continue reading](https://developers.redhat.com/blog/2019/07/26/5-principles-for-deploying-your-api-from-a-ci-cd-pipeline/) diff --git a/content/writing/_index.md b/content/writing/_index.md new file mode 100644 index 0000000..c1b1f07 --- /dev/null +++ b/content/writing/_index.md @@ -0,0 +1,7 @@ +--- +title: "Writing" +date: 2019-11-07T00:00:00+02:00 +draft: false +--- + +Here is a list of my recent articles. diff --git a/content/writing/deploy-your-api-from-a-jenkins-pipeline.md b/content/writing/deploy-your-api-from-a-jenkins-pipeline.md new file mode 100644 index 0000000..09f56e2 --- /dev/null +++ b/content/writing/deploy-your-api-from-a-jenkins-pipeline.md @@ -0,0 +1,9 @@ +--- +title: "Deploy your API from a Jenkins Pipeline" +date: 2019-07-30T00:00:00+02:00 +draft: false +--- + +In a previous article, 5 principles for deploying your API from a CI/CD pipeline, we discovered the main steps required to deploy your API from a CI/CD pipeline and this can prove to be a tremendous amount of work. Hopefully, the latest release of Red Hat Integration greatly improved this situation by adding new capabilities to the 3scale CLI. In 3scale toolbox: Deploy an API from the CLI, we discovered how the 3scale toolbox strives to automate the delivery of APIs. In this article, we will discuss how the 3scale toolbox can help you deploy your API from a Jenkins pipeline on Red Hat OpenShift/Kubernetes. + +[Continue reading](https://developers.redhat.com/blog/2019/07/30/deploy-your-api-from-a-jenkins-pipeline/) diff --git a/content/writing/full-api-lifecycle-management-a-primer.md b/content/writing/full-api-lifecycle-management-a-primer.md new file mode 100644 index 0000000..4dd156e --- /dev/null +++ b/content/writing/full-api-lifecycle-management-a-primer.md @@ -0,0 +1,11 @@ +--- +title: "Full API lifecycle management: A primer" +date: 2019-02-25T00:00:00+02:00 +draft: false +--- + +APIs are the cornerstone of so many recent breakthroughs: from mobile applications, to the Internet of Things, to cloud computing. All those technologies expose, consume, and are built on APIs. And those APIs are a key driver for generating new revenue. Salesforce generates 50% of its revenue through APIs, Expedia generates 90% of its, and eBay generates 60% of its. With APIs becoming so central, it becomes essential to deal with full API lifecycle management. The success of your digital transformation project depends on it! + +This article describes a set of full API lifecycle management activities that can guide you from an idea to the realization, from the inception of an API program up to management at scale throughout your whole company. + +[Continue reading](https://developers.redhat.com/blog/2019/02/25/full-api-lifecycle-management-a-primer/) diff --git a/content/writing/manage-your-apis-deployed-with-istio-service-mesh.md b/content/writing/manage-your-apis-deployed-with-istio-service-mesh.md new file mode 100644 index 0000000..e45d3a6 --- /dev/null +++ b/content/writing/manage-your-apis-deployed-with-istio-service-mesh.md @@ -0,0 +1,16 @@ +--- +title: "Manage your APIs deployed with Istio service mesh" +date: 2019-04-30T00:00:00+02:00 +draft: false +--- + +With the rise of microservices architectures, companies are looking for a way to connect, secure, control, and observe their microservices. Currently, a service mesh such as Istio is the best option to reach this goal. + +- **Connect**: Istio can intelligently control the flow of traffic between services, conduct a range of tests and upgrade gradually with blue/green deployments. +- **Secure**: Automatically secure your services through managed authentication, authorization, and encryption of communication between services. +- **Control**: Apply policies and ensure that they are enforced and that resources are fairly distributed among consumers. +- **Observe**: See what’s happening with rich automatic tracing, monitoring, logging of all your services. + +And, as explained in “Distributed microservices architecture: Istio, managed API gateways and, enterprise integration”, a service mesh does not relieve the need for an API management solution. A service mesh manages services and the connections between them, whereas an API management solution manages APIs and their consumers. In this article, I’ll describe how to manage APIs using the Red Hat Integration adapter for Istio. + +[Continue reading](https://developers.redhat.com/blog/2019/04/30/manage-your-apis-deployed-with-istio-service-mesh/) diff --git a/content/writing/red-hat-single-sign-on-give-it-a-try-for-no-cost.md b/content/writing/red-hat-single-sign-on-give-it-a-try-for-no-cost.md new file mode 100644 index 0000000..67fcbed --- /dev/null +++ b/content/writing/red-hat-single-sign-on-give-it-a-try-for-no-cost.md @@ -0,0 +1,13 @@ +--- +title: "Red Hat Single Sign-On: Give it a try for no cost!" +date: 2019-02-07T00:00:00+02:00 +draft: false +--- + +In a software world where each day is more hostile than the previous one, security matters and developers are coping with more and more non-functional requirements about security. The most common ones are the “OWASP Top 10”: the ten security risks that every developer should know. There are many more security risks you should care about, but those ten risks are the ones having the most impact on the security of your software. Among them are authentication and access control. + +The good news is that authentication and access control are now commodities in the open source world, thanks to Red Hat Single Sign-On Red Hat Single Sign-On is an access management tool that takes care of the details of most authentication protocols such as SAML, OAuth, and OpenID Connect; user consent with UMA; and even access control. It is easy to use, is very well-documented, and has a very active community: Keycloak. + +This article describes how to download and install Red Hat Single Sign-On for no cost. + +[Continue reading](https://developers.redhat.com/blog/2019/02/07/red-hat-single-sign-on-give-it-a-try-for-no-cost/) diff --git a/content/writing/using-a-public-certificate-with-red-hat-single-sign-on-keycloak.md b/content/writing/using-a-public-certificate-with-red-hat-single-sign-on-keycloak.md new file mode 100644 index 0000000..8e2267a --- /dev/null +++ b/content/writing/using-a-public-certificate-with-red-hat-single-sign-on-keycloak.md @@ -0,0 +1,13 @@ +--- +title: "Using a public certificate with Red Hat Single Sign-On/Keycloak" +date: 2019-02-06T00:00:00+02:00 +draft: false +--- + +When deploying Red Hat Single Sign-On/Keycloak for a test or a proof of concept, most users will choose to use a self-signed certificate as explained in the official documentation. + +The setup instructions are straightforward, but this self-signed certificate will trigger certificate error messages in your web browser and can also prevent some clients such as Postman from working properly. + +This article explains how to use a public certificate from Let’s Encrypt with Red Hat Single Sign-On. + +[Continue reading](https://developers.redhat.com/blog/2019/02/06/using-a-public-certificate-with-red-hat-single-sign-on-keycloak/) diff --git a/content/writing/using-the-3scale-toolbox-jenkins-shared-library.md b/content/writing/using-the-3scale-toolbox-jenkins-shared-library.md new file mode 100644 index 0000000..cd08b87 --- /dev/null +++ b/content/writing/using-the-3scale-toolbox-jenkins-shared-library.md @@ -0,0 +1,9 @@ +--- +title: "Using the 3scale toolbox Jenkins Shared Library" +date: 2019-07-31T00:00:00+02:00 +draft: false +--- + +In the previous article of this series, Deploy your API from a Jenkins Pipeline, we discovered how the 3scale toolbox can help you deploy your API from a Jenkins Pipeline on Red Hat OpenShift/Kubernetes. In this article, we will improve the pipeline from the previous article to make it more robust, less verbose, and also offer more features by using the 3scale toolbox Jenkins Shared Library. + +[Continue reading](https://developers.redhat.com/blog/2019/07/31/using-the-3scale-toolbox-jenkins-shared-library/) diff --git a/static/speaking/2019-10-21-RHTE-Award.png b/static/speaking/2019-10-21-RHTE-Award.png new file mode 100644 index 0000000000000000000000000000000000000000..bfe97764ec6a3c1c45d0ec1ae2ebe630e6ab5fc8 GIT binary patch literal 44329 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