56,966 blogs · [ { "id": "01a087e5-ea49-706d-9238-0c981fb1d226", "title": "Quit Shifting Left: Pipelines as a Service", "url": "https://stephennimmo.com/2026/08/05/quit-shifting-left-pipelines-as-a-service/", "published_at": "2026-08-05T14:55:22+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c982080a0ec", "title": "Your Cluster Name Is Not Your Environment", "url": "https://stephennimmo.com/2026/08/02/your-cluster-name-is-not-your-environment/", "published_at": "2026-08-02T13:01:31+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9820fb5ad8", "title": "GitOps at Scale", "url": "https://stephennimmo.com/2026/06/09/gitops-at-scale/", "published_at": "2026-06-09T17:28:37+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9821732595", "title": "Compiling and installing a Linux kernel module in OpenShift – The AMD Solarflare™ Onload™ Edition", "url": "https://stephennimmo.com/2025/09/12/compiling-and-installing-a-linux-kernel-module-in-openshift-the-amd-solarflare-onload-edition/", "published_at": "2025-09-12T14:37:02+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9821849420", "title": "Dynamic URL for Host using OpenShift routes", "url": "https://stephennimmo.com/2025/09/12/dynamic-url-for-host-using-openshift-routes/", "published_at": "2025-09-12T10:28:57+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c982280dd27", "title": "Connecting OpenShift Virtualization to Underlay Networks with ClusterUserDefinedNetwork", "url": "https://stephennimmo.com/2025/08/25/connecting-openshift-virtualization-to-underlay-networks-with-clusteruserdefinednetwork/", "published_at": "2025-08-25T14:37:37+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9823333924", "title": "Two Ways of creating a Red Hat Enterprise Linux virtual machine with a static ip address in OpenShift Virtualization", "url": "https://stephennimmo.com/2025/06/25/two-ways-of-creating-a-red-hat-enterprise-linux-virtual-machine-with-a-static-ip-address-in-openshift-virtualization/", "published_at": "2025-06-25T11:14:11+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9823ac4b03", "title": "Bootstrapping an OpenShift Cluster with OpenShift GitOps", "url": "https://stephennimmo.com/2025/06/24/bootstrapping-an-openshift-cluster-with-openshift-gitops/", "published_at": "2025-06-24T14:41:52+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c98249c65d2", "title": "Install Hashicorp Vault on Red Hat Enterprise Linux", "url": "https://stephennimmo.com/2025/06/15/install-hashicorp-vault-on-red-hat-enterprise-linux/", "published_at": "2025-06-15T11:24:11+00:00" }, { "id": "01a087e5-ea49-706d-9238-0c9825454f56", "title": "New Router Setup – Mikrotik CRS305-1G-4S+IN", "url": "https://stephennimmo.com/2025/06/07/new-router-setup-mikrotik-crs305-1g-4sin/", "published_at": "2025-06-07T09:49:05+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b4ed582b", "title": "Running iperf3 tests in OpenShift", "url": "https://stephennimmo.com/2025/04/18/running-iperf3-tests-in-openshift/", "published_at": "2025-04-18T17:18:04+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b58ffe6c", "title": "Running an OpenShift Virtualization VM Connected to a VLAN", "url": "https://stephennimmo.com/2025/03/23/running-an-openshift-virtualization-vm-connected-to-a-vlan/", "published_at": "2025-03-23T18:59:23+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b5b0ae89", "title": "Python to Bootstrap OpenShift Gitops", "url": "https://stephennimmo.com/2025/03/23/python-to-bootstrap-openshift-gitops/", "published_at": "2025-03-23T12:19:34+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b5cc7d5c", "title": "Home Lab OpenShift using Agent Based Installer", "url": "https://stephennimmo.com/2025/03/22/home-lab-openshift-using-agent-based-installer/", "published_at": "2025-03-22T20:27:30+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b6be1b5a", "title": "Running Jfrog Artifactory on Podman", "url": "https://stephennimmo.com/2025/03/14/running-jfrog-artifactory-on-podman/", "published_at": "2025-03-14T15:37:11+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b7934959", "title": "Setting Up Network Policies on a RHEL 9 VM running in OpenShift Virtualization", "url": "https://stephennimmo.com/2025/02/26/setting-up-network-policies-on-a-rhel-9-vm-running-in-openshift-virtualization/", "published_at": "2025-02-26T19:58:46+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b7e4b880", "title": "REST API error modeling with Quarkus", "url": "https://stephennimmo.com/2025/01/31/rest-api-error-modeling-with-quarkus/", "published_at": "2025-01-31T14:52:03+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b84c15d6", "title": "Bash to Bootstrap OpenShift Gitops", "url": "https://stephennimmo.com/2025/01/20/bash-to-bootstrap-openshift-gitops/", "published_at": "2025-01-20T15:30:44+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b8f200d9", "title": "Backing Up and Restoring a single VM using OpenShift Virtualization and OADP", "url": "https://stephennimmo.com/2024/10/09/backing-up-and-restoring-a-single-vm-using-openshift-virtualization-and-oadp/", "published_at": "2024-10-09T16:14:38+00:00" }, { "id": "01a0d2ae-13fe-703b-9fd5-d0b4b9ad2cb4", "title": "Building a Quarkus Application using OpenShift Pipelines", "url": "https://stephennimmo.com/2024/10/07/building-a-quarkus-application-using-openshift-pipelines/", "published_at": "2024-10-07T12:14:52+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1d85d15d", "title": "Standalone Angular Project from Scratch", "url": "https://stephennimmo.com/2024/09/28/standalone-angular-project-from-scratch/", "published_at": "2024-09-28T12:07:12+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1dc5fd23", "title": "Deleting old pods using CronJob on OpenShift", "url": "https://stephennimmo.com/2024/09/18/deleting-old-pods-using-cronjob-on-openshift/", "published_at": "2024-09-18T20:26:17+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1e3650b9", "title": "Running the Red Hat build of Keycloak on OpenShift", "url": "https://stephennimmo.com/2024/09/10/running-the-red-hat-build-of-keycloak-on-openshift/", "published_at": "2024-09-10T14:47:32+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1eed2496", "title": "Running Postgres as a StatefulSet on OpenShift", "url": "https://stephennimmo.com/2024/08/21/running-postgres-as-a-statefulset-on-openshift/", "published_at": "2024-08-21T14:37:52+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1f28a97c", "title": "Generating Let’s Encrypt certificates with Red Hat OpenShift cert-manager operator using the Cloudflare DNS solver", "url": "https://stephennimmo.com/2024/05/15/generating-lets-encrypt-certificates-with-red-hat-openshift-cert-manager-operator-using-the-cloudflare-dns-solver/", "published_at": "2024-05-15T18:00:09+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1f62d5e1", "title": "In-Depth Hashicorp Vault setup on OpenShift using OpenShift GitOps", "url": "https://stephennimmo.com/2024/05/05/hashicorp-vault-setup-on-openshift-using-argocd/", "published_at": "2024-05-05T14:42:58+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd1f99e4a6", "title": "Async Communication Best Practices", "url": "https://stephennimmo.com/2024/04/10/async-communication-best-practices/", "published_at": "2024-04-10T15:42:42+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd2061180d", "title": "Build a REST API from the ground up with Quarkus 3", "url": "https://stephennimmo.com/2024/03/08/build-a-rest-api-from-the-ground-up-with-quarkus-3-0/", "published_at": "2024-03-08T22:42:57+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd20f55250", "title": "Linux File Permissions: Giving One User Read Access", "url": "https://stephennimmo.com/2024/02/16/linux-file-permissions-giving-one-user-read-access/", "published_at": "2024-02-16T18:50:53+00:00" }, { "id": "01a0d2ae-f344-7368-b0bc-fbfd215f5355", "title": "rpm-ostree kernel parameters", "url": "https://stephennimmo.com/2024/01/30/rpm-ostree-kernel-parameters/", "published_at": "2024-01-30T21:55:27+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a63d21854d", "title": "Building an API Hierarchy", "url": "https://stephennimmo.com/2024/01/25/building-an-api-hierarchy/", "published_at": "2024-01-25T19:14:47+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a63dd66631", "title": "Certificates from Let’s Encrypt using certbot on RHEL", "url": "https://stephennimmo.com/2023/12/08/certificates-from-lets-encrypt-using-certbot-on-rhel/", "published_at": "2023-12-08T21:46:53+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a63e7c0f78", "title": "Full Stack Development – Quarkus and Angular with Quinoa", "url": "https://stephennimmo.com/2023/12/01/full-stack-development-quarkus-and-angular-with-quinoa/", "published_at": "2023-12-01T22:22:01+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a63f2bea64", "title": "Concise Keycloak Realm for Testing", "url": "https://stephennimmo.com/2023/11/18/concise-keycloak-realm-for-testing/", "published_at": "2023-11-18T14:27:44+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a6400a425b", "title": "Modbus Integration at the Edge with Quarkus Native Image Compilation", "url": "https://stephennimmo.com/2023/10/05/modbus-integration-at-the-edge-with-quarkus-native-image-compilation/", "published_at": "2023-10-05T16:32:48+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a640f6c238", "title": "Build a REST API from the ground up with Python", "url": "https://stephennimmo.com/2023/09/07/build-a-rest-api-from-the-ground-up-with-python/", "published_at": "2023-09-07T14:17:39+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a641d7c60b", "title": "Quit Telling your Developers they are Brilliant", "url": "https://stephennimmo.com/2023/07/27/quit-telling-your-developers-they-are-brilliant/", "published_at": "2023-07-27T12:51:04+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a642b0861c", "title": "Intellij’s Java toString Update to Match Records", "url": "https://stephennimmo.com/2023/07/15/intellijs-java-tostring-update-to-match-records/", "published_at": "2023-07-15T14:48:58+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a6434704f5", "title": "My conversation with ChatGPT on trade data structures", "url": "https://stephennimmo.com/2023/03/19/my-conversation-with-chatgpt-on-trade-data-structures/", "published_at": "2023-03-19T15:10:59+00:00" }, { "id": "01a0d2af-7568-73df-b15c-c7a643af6f96", "title": "Building a Comprehensive Functional Testing Strategy", "url": "https://stephennimmo.com/2023/01/13/building-a-comprehensive-functional-testing-strategy/", "published_at": "2023-01-13T11:50:10+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a09f44ae", "title": "Microservices and the Foreign Key Dilemma", "url": "https://stephennimmo.com/2023/01/06/microservices-and-the-foreign-key-dilemma/", "published_at": "2023-01-06T21:23:27+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a0e054ff", "title": "Kafka Stream Transformation Patterns and Message Reprocessing", "url": "https://stephennimmo.com/2022/12/23/kafka-stream-transformation-patterns-and-message-reprocessing/", "published_at": "2022-12-23T14:42:19+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a1a7b8e7", "title": "Why Continuous Delivery?", "url": "https://stephennimmo.com/2022/12/19/why-continuous-delivery/", "published_at": "2022-12-20T03:44:08+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a1ccb48b", "title": "Using Podman with Quarkus and Testcontainers on MacOS M1", "url": "https://stephennimmo.com/2022/10/19/using-podman-with-quarkus-and-testcontainers-on-macos/", "published_at": "2022-10-19T10:26:07+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a2b7b60d", "title": "NFS PVC Dynamic Provisioning on OpenShift", "url": "https://stephennimmo.com/2022/05/12/nfs-pvc-dynamic-provisioning-on-openshift/", "published_at": "2022-05-12T14:28:11+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a392b68a", "title": "Using Lombok and MapStruct in a Maven Project", "url": "https://stephennimmo.com/2022/01/04/using-lombok-and-mapstruct-in-a-maven-project/", "published_at": "2022-01-04T14:58:34+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a4061745", "title": "Let’s Encrypt Certificate Management on OpenShift using cert-manager Operator", "url": "https://stephennimmo.com/2021/11/22/lets-encrypt-certificate-management-on-openshift-using-cert-manager-operator/", "published_at": "2021-11-22T20:22:38+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a4131e24", "title": "The avro-maven-plugin configuration doesn’t work in the execution definition", "url": "https://stephennimmo.com/2021/11/02/the-avro-maven-plugin-configuration-doesnt-work-in-the-execution-definition/", "published_at": "2021-11-02T18:33:11+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a463fbad", "title": "Angular Project from Scratch", "url": "https://stephennimmo.com/2021/10/12/angular-project-from-scratch/", "published_at": "2021-10-12T19:02:34+00:00" }, { "id": "01a0d2af-e19f-7127-9244-1be4a476b1a0", "title": "Angular Reactive Forms with ng-bootstrap", "url": "https://stephennimmo.com/2021/09/27/angular-reactive-forms-with-ng-bootstrap/", "published_at": "2021-09-27T14:19:26+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f97503459d", "title": "Running Testcontainers in OpenShift Pipelines with Docker-in-Docker", "url": "https://stephennimmo.com/2021/05/10/running-testcontainers-in-openshift-pipelines-with-docker-in-docker/", "published_at": "2021-05-10T21:05:47+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f975feac87", "title": "Deploying the Red Hat Certified PostgreSQL Container on OpenShift using Kustomize and Sealed Secrets", "url": "https://stephennimmo.com/2021/04/13/deploying-the-red-hat-certified-postgresql-container-on-openshift-using-kustomize-and-sealed-secrets/", "published_at": "2021-04-13T14:10:29+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f9765831e5", "title": "Fully Reactive Quarkus REST API", "url": "https://stephennimmo.com/2021/04/07/fully-reactive-quarkus-rest-api/", "published_at": "2021-04-07T13:15:00+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f976ab1d74", "title": "Enterprise Integration Patterns – Trading", "url": "https://stephennimmo.com/2021/03/25/enterprise-integration-patterns-trading/", "published_at": "2021-03-25T22:49:07+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f976f348e4", "title": "Quarkus Integration Testing with Testcontainers and LocalStack", "url": "https://stephennimmo.com/2021/03/16/quarkus-integration-testing-with-testcontainers-and-localstack/", "published_at": "2021-03-16T20:30:16+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f977604765", "title": "Quick Tip: OpenAPI UI Index Routing", "url": "https://stephennimmo.com/2021/03/02/quick-tip-openapi-ui-index-routing/", "published_at": "2021-03-03T01:25:42+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f977f5efc7", "title": "[REF] Quarkus pom.xml", "url": "https://stephennimmo.com/2021/02/28/ref-quarkus-pom-xml/", "published_at": "2021-02-28T20:25:27+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f97851fe8d", "title": "Adding Health Checks to Your Quarkus Application", "url": "https://stephennimmo.com/2021/02/26/adding-health-checks-to-your-quarkus-application/", "published_at": "2021-02-26T20:16:32+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f978f8f731", "title": "Building a Customer API using Quarkus From the Ground Up", "url": "https://stephennimmo.com/2021/02/25/building-a-customer-api-using-quarkus-from-the-ground-up/", "published_at": "2021-02-25T17:29:44+00:00" }, { "id": "01a0d2b0-5b09-733e-b721-83f9790c317d", "title": "Driving Standards through Chapters: The Spotify Model", "url": "https://stephennimmo.com/2021/02/21/driving-standards-through-chapters-the-spotify-model/", "published_at": "2021-02-21T19:27:05+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a1171825d36b", "title": "The Power of Automated Acceptance Tests", "url": "https://stephennimmo.com/2021/02/18/the-power-of-automated-acceptance-tests/", "published_at": "2021-02-18T22:46:21+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a117183e76f6", "title": "GitOpsing Operator Subscriptions in OpenShift", "url": "https://stephennimmo.com/2021/02/17/gitopsing-operator-subscriptions-in-openshift/", "published_at": "2021-02-17T14:19:49+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a11718deac46", "title": "Open Source the Energy Industry", "url": "https://stephennimmo.com/2020/11/01/open-source-the-energy-industry/", "published_at": "2020-11-01T16:39:29+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a11718ded10e", "title": "Securing OpenShift ingress with Let’s Encrypt", "url": "https://stephennimmo.com/2020/10/28/securing-openshift-ingress-with-lets-encrypt/", "published_at": "2020-10-28T22:27:47+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a117192b5d4e", "title": "[REF] docker-compose", "url": "https://stephennimmo.com/2020/10/26/ref-docker-compose/", "published_at": "2020-10-26T17:45:41+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a11719b62614", "title": "Culture Change Requires People to Change", "url": "https://stephennimmo.com/2020/10/26/culture-change-people-change/", "published_at": "2020-10-26T14:53:38+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a1171a032fe9", "title": "Best Extensions for Building a REST API with Quarkus", "url": "https://stephennimmo.com/2020/10/19/rest-api-with-quarkus-extensions/", "published_at": "2020-10-19T15:51:10+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a1171ab19763", "title": "Seven Standards Every OpenShift Customer Should Have on Day 1", "url": "https://stephennimmo.com/2020/10/17/seven-standards-every-openshift-customer-should-have-on-day-1/", "published_at": "2020-10-18T01:52:37+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a1171b024170", "title": "Local Integration Testing", "url": "https://stephennimmo.com/2020/09/10/local-integration-testing/", "published_at": "2020-09-10T14:21:06+00:00" }, { "id": "01a0d2b0-cef9-70f3-a9b3-a1171b82f321", "title": "ERCOT Scraper", "url": "https://stephennimmo.com/2020/09/07/ercot-scraper/", "published_at": "2020-09-07T15:19:51+00:00" }, { "id": "01a0d2b1-441e-716b-93ee-746f43643cf9", "title": ".NET Testing in Visual Studio Code", "url": "https://stephennimmo.com/2020/07/24/net-testing-in-visual-studio-code/", "published_at": "2020-07-24T15:51:45+00:00" }, { "id": "01a0d2b1-441e-716b-93ee-746f445ec0c8", "title": "Running Embedded PostgreSQL Server for Integration Tests", "url": "https://stephennimmo.com/2019/07/12/running-embedded-postgres-sql-server-for-integration-tests/", "published_at": "2019-07-12T16:31:26+00:00" }, { "id": "01a0d2b1-441e-716b-93ee-746f448b63ac", "title": "Generating Swagger API documentation using SpringFox", "url": "https://stephennimmo.com/2019/07/10/generating-swagger-api-documentation-using-springfox/", "published_at": "2019-07-10T14:03:38+00:00" }, { "id": "01a0d2b1-441e-716b-93ee-746f44c04592", "title": "Hazelcast Backed MessageStore For QuickFix/J", "url": "https://stephennimmo.com/2019/07/09/hazelcast-backed-messagestore-for-quickfix-j/", "published_at": "2019-07-10T03:32:55+00:00" } ] posts Claim your blog
Back to stephennimmo.com
Blog · corpus.blog/blogs/stephennimmo.com/posts

stephennimmo.com

stephennimmo.com

2026

2025

2024

2023

2022

2021

2020

2019