# DevOps Demos & Screencasts - [DevOps Screencasts](#devops-screencasts) - [DevOps Blogs](#devops-blogs) - [DevOps Demos](#devops-demos) - [Ansible and Ansible Tower](#ansible-and-ansible-tower) - [Kubernetes Demos](#kubernetes-demos) - [CI/CD with SpringBoot for Kubernetes](#cicd-with-springboot-for-kubernetes) - [Kubernetes CKAD Example Exam Questions Practical Challenge Series](#kubernetes-ckad-example-exam-questions-practical-challenge-series) - [Istio](#istio) - [Amazon EKS. Deploy example microservices on EKS](#amazon-eks-deploy-example-microservices-on-eks) - [Red Hat Demo Central](#red-hat-demo-central) - [Cloud Native Development Architectural Diagrams Demos](#cloud-native-development-architectural-diagrams-demos) - [OpenShift Demos](#openshift-demos) - [OpenShift VS Kubernetes](#openshift-vs-kubernetes) - [IBM Cloud Pak Playbooks](#ibm-cloud-pak-playbooks) - [Knative](#knative) - [OpenShift Pipelines Workshop (Tekton)](#openshift-pipelines-workshop-tekton) - [Jenkins Demos](#jenkins-demos) - [Jenkins Declarative Pipelines with OpenShift](#jenkins-declarative-pipelines-with-openshift) - [OpenShift Pipelines with S2i and Jenkins Blue Ocean](#openshift-pipelines-with-s2i-and-jenkins-blue-ocean) - [Jenkins Configuration as Code on Kubernetes](#jenkins-configuration-as-code-on-kubernetes) - [From Jenkins Freestyle jobs to Pipeline, with JobDSL. Seed jobs](#from-jenkins-freestyle-jobs-to-pipeline-with-jobdsl-seed-jobs) - [SDKMAN](#sdkman) - [Jenkins Scripts](#jenkins-scripts) - [Nexus3 on Kubernetes](#nexus3-on-kubernetes) - [Spring PetClinic Sample Application](#spring-petclinic-sample-application) - [Modular Pipeline Library (MPL). Petclinic Pipeline example with MPL](#modular-pipeline-library-mpl-petclinic-pipeline-example-with-mpl) - [PetClinic on Kubernetes:](#petclinic-on-kubernetes) - [PetClinic Docker images:](#petclinic-docker-images) - [OpenShift.io Samples](#openshiftio-samples) - [AWS Demos](#aws-demos) - [Azure DevOps Demos](#azure-devops-demos) - [Google DevOps Demos](#google-devops-demos) ## DevOps Screencasts - [SysAdmin Casts 🌟](https://sysadmincasts.com/) - [DEVOPS Library 🌟](https://devopslibrary.com/) ## DevOps Blogs - [DevStack](https://devstack.in/) All about DevOps ## DevOps Demos * [RedHatGov.io](http://redhatgov.io) is an open source collection of workshop materials that cover various topics relating to Red Hat's product portfolio. * [github.com/wardviaene (kubernetes, terraform, ansible, docker, etc) 🌟](https://github.com/wardviaene) * [wardviaene/jenkins-course](https://github.com/wardviaene/jenkins-course) * [wardviaene/kubernetes-course](https://github.com/wardviaene/kubernetes-course) * [thoughtworks.com: Modernizing your build pipelines with **Concourse CI** 🌟](https://www.thoughtworks.com/es/insights/blog/modernizing-your-build-pipelines) * [github.com/sirech/example-concourse-pipeline](https://github.com/sirech/example-concourse-pipeline) * [yankils/Simple-DevOps-Project](https://github.com/yankils/Simple-DevOps-Project) - [Spring PetClinic Sample Application](#spring-petclinic-sample-application) By following this repository you can able to setup a DevOps CI/CD Pipeline using: git, Jenkins, Maven, Ansible, Docker & Kubernetes ### Ansible and Ansible Tower * [ansible.github.io/workshops/demos : Red Hat Ansible Automation Platform Workshops](https://ansible.github.io/workshops/demos/) * [Red Hat Ansible Tower - Workshop and Demo](https://github.com/network-automation/tower_workshop) ## Kubernetes Demos * [kubernetesbyexample.com 🌟](http://kubernetesbyexample.com/) * [github.com/eon01/kubernetes-workshop](https://github.com/eon01/kubernetes-workshop) * [wardviaene/kubernetes-course](https://github.com/wardviaene/kubernetes-course) * [github.com/kubernetes-course/container_workshops](https://github.com/kubernetes-course/container_workshops) * [Mautic](https://github.com/mautic/docker-mautic) * [codeburst.io: getting started with kubernetes, deploy a docker container in 5 minutes](https://codeburst.io/getting-started-with-kubernetes-deploy-a-docker-container-with-kubernetes-in-5-minutes-eb4be0e96370) * [Kubernetes workshop in a box](https://www.theguild.nl/k8s-workshop-in-a-box/) * [GitHub: K8s workshop in a box](https://github.com/kabisa/k8s-workshop-in-a-box) * [medium.com/@Kubernetes_Advocate 🌟](https://medium.com/@Kubernetes_Advocate) * [medium.com/avmconsulting-blog](https://medium.com/avmconsulting-blog) ### CI/CD with SpringBoot for Kubernetes * [CI/CD for Kubernetes through a Spring Boot example (Banzai Cloud CI/CD)](https://teletype.in/@sravancynixit/CcwqFANxY) ### Kubernetes CKAD Example Exam Questions Practical Challenge Series * [Kubernetes CKAD Example Exam Questions Practical Challenge Series](https://codeburst.io/kubernetes-ckad-weekly-challenges-overview-and-tips-7282b36a2681) ### Istio - [github: redhat-developer-demos Istio Tutorial for Java Microservices](https://github.com/redhat-developer-demos/istio-tutorial) ### Amazon EKS. Deploy example microservices on EKS * [eksworkshop.com](https://eksworkshop.com/ ) * [eksworkshop.com/x-ray/microservices](https://eksworkshop.com/x-ray/microservices/) * [eksworkshop.com: Configure Cluster Autoscaler (CA)](https://eksworkshop.com/scaling/deploy_ca/) * [aws.amazon.com: Deploy a kubernetes application](https://aws.amazon.com/getting-started/projects/deploy-kubernetes-app-amazon-eks/) * [aws blogs: Git Push to Deploy Your App on EKS](https://aws.amazon.com/blogs/opensource/git-push-deploy-app-eks-gitkube/) * [medium: create your first application on aws eks kubernetes](https://medium.com/faun/create-your-first-application-on-aws-eks-kubernetes-cluster-874ee9681293) * [dzone: deploying a kubernetes cluster with amazon eks 🌟](https://dzone.com/articles/deploying-a-kubernetes-cluster-with-amazon-eks) ## Red Hat Demo Central * [gitlab.com/redhatdemocentral 🌟](https://gitlab.com/redhatdemocentral) * [redhatdemocentral.gitlab.io](https://redhatdemocentral.gitlab.io) ### Cloud Native Development Architectural Diagrams Demos * Cloud-native development is an approach to building and running applications to fully exploit the advantages of the cloud computing model (i.e. responsive, elastic and resilient applications). * [Portfolio Architecture](https://redhatdemocentral.gitlab.io/portfolio-architecture-workshops/#/) Workshops for creating impactful architectural diagrams. This workshop will teach you how to use, design, and create architectural diagrams based on the **draw.io** tooling and Red Hat Portfolio Architecture design elelements. You'll leverage existing portfolio architecture diagrams as starting points. * [redhatdemocentral.gitlab.io/portfolio-architecture-tooling](https://redhatdemocentral.gitlab.io/portfolio-architecture-tooling/) * [gitlab.com: Project Examples](https://gitlab.com/redhatdemocentral/portfolio-architecture-examples) ## OpenShift Demos * [developers.redhat.com: Developing on OpenShift (katacoda interactive learning) 🌟](https://developers.redhat.com/courses/openshift/) Learn how to access an OpenShift cluster, manage apps with the odo command-line tool, then try image and source-based deployment techniques. * [github.com/OpenShiftDemos 🌟](https://github.com/OpenShiftDemos) * [DockerHub OpenShift Demos](https://hub.docker.com/r/openshiftdemos/) * [Red Hat Tutorials & Examples: github.com/redhat-developer-demos 🌟](https://github.com/redhat-developer-demos) * [redhatgov.io](http://redhatgov.io) RedHatGov.io is an open source collection of workshop materials that cover various topics relating to Red Hat's product portfolio. * [blog.openshift.com: OCP multi-node deployment on **AWS** using CloudFormation and Ansible (quickstart workshop)](https://blog.openshift.com/aws-and-red-hat-quickstart-workshop/) * [Deploying Docker Images to OpenShift](https://dzone.com/articles/deploying-docker-images-to-openshift) We take a look at how to deploy a Docker image from DockerHub into RedHat's OpenShift environment, bringing added functionality along the way. * [SonarQube: An OpenShift-focused Docker build of Sonarqube](https://github.com/OpenShiftDemos/sonarqube-openshift-docker) * [Deploying PostgreSQL in MiniShift/OpenShift 3](https://blog.dbi-services.com/deploying-postgresql-in-minishiftopenshift/) * [Clustering WildFly on Openshift](http://www.mastertheboss.com/soa-cloud/openshift/clustering-wildfly-on-openshift-using-wildfly-operator) * [Java EE example on Openshift](http://www.mastertheboss.com/soa-cloud/openshift/java-ee-example-application-on-openshift) * [Microprofile example on Openshift](http://www.mastertheboss.com/soa-cloud/openshift/running-microprofile-applications-on-openshift) * [Deploying WildFly apps on Openshift](http://www.mastertheboss.com/soa-cloud/openshift/using-wildfly-on-openshift) * [Running Thorntail apps on Openshift](http://www.mastertheboss.com/soa-cloud/openshift/thorntail-on-openshift) * [Running Spring Boot applications on Openshift](http://www.mastertheboss.com/jboss-frameworks/spring/deploy-your-springboot-applications-on-openshift) * [github.com/openshiftdemos 🌟](https://github.com/openshiftdemos) * [github.com/openshift-labs 🌟](https://github.com/openshift-labs) * [MapIt](https://github.com/siamaksade/mapit-spring) MapIt is a geo-spatial Spring Boot app which shows the location of AirPorts on the Map using Leaflet. ### OpenShift VS Kubernetes * [developer.ibm.com: Example exercises to differentiate OpenShift and Kubernetes](https://developer.ibm.com/tutorials/examples-differentiate-openshift-kubernetes/) Example exercises to differentiate OpenShift and Kubernetes. Walk through some steps with Red Hat OpenShift on IBM Cloud. ### IBM Cloud Pak Playbooks * [IBM Cloud Pak Playbook](https://cloudpak8s.io/apps/cp4a_overview/) ### Knative * [knative-tutorial](https://github.com/redhat-developer-demos/knative-tutorial) A pratical guide to get started with knative. Knative concepts are explained simple and easy way with lots of demos and exercises. ### OpenShift Pipelines Workshop (Tekton) - [openshift-pipelines-workshop](https://redhat-developer-demos.github.io/openshift-pipelines-workshop/) Workshop to demonstrate OpenShift Pipelines (featuring Tekton) - [Build a Go application using OpenShift Pipelines](https://developers.redhat.com/blog/2020/05/26/build-a-go-application-using-openshift-pipelines/) - [OpenShift Pipelines Catalog](https://github.com/openshift/pipelines-catalog) - [systemcraftsman/lab-tekton-pipelines: OpenShift Pipelines workshop](https://github.com/systemcraftsman/lab-tekton-pipelines) ## Jenkins Demos * [kublr.com: cicd pipeline with jenkins nexus kubernetes](https://kublr.com/blog/cicd-pipeline-with-jenkins-nexus-kubernetes/) * [bitbucket.org: setting up a cicd pipeline with spring mvc and kubernetes on aws](https://bitbucket.org/blog/setting-up-a-ci-cd-pipeline-with-spring-mvc-jenkins-and-kubernetes-on-aws ) * Medium.com - Simple Spring Boot microservice deployed in Kubernetes using Docker and Nexus 🌟: * [Part 1](https://medium.com/@simionrazvan/simple-spring-boot-microservice-deployed-in-kubernetes-using-docker-and-nexus-part-1-b581e3ca8916) * [Part 2](https://medium.com/@simionrazvan/simple-spring-boot-microservice-deployed-in-kubernetes-using-docker-and-nexus-part-2-25dc2a3982cf) * [medium.com/@Kubernetes_Advocate: CI/CD with Dockers and Jenkins](https://medium.com/@Kubernetes_Advocate/ci-cd-with-dockers-and-jenkins-70b6f801f9f7) * [medium.com/@devml2016: Let’s Start Automation using Jenkins, Docker, GitHub](https://medium.com/@devml2016/lets-start-automation-using-jenkins-docker-github-d5f8d019ec4a) ### Jenkins Declarative Pipelines with OpenShift * [github.com/openshift: Using Jenkins Declarative Pipelines with OpenShift 🌟](https://github.com/openshift/origin/tree/master/examples/jenkins/pipeline) * [github.com/gnunn1/openshift-basic-pipeline](https://github.com/gnunn1/openshift-basic-pipeline) * [github.com/deweya/OpenShift-Jenkins-Lab](https://github.com/deweya/OpenShift-Jenkins-Lab) * [Red Hat CodeReady Containers (Minishift equivalent for OpenShift 4.2 or newer) - step-by-step demo guides](https://github.com/marcredhat/crcdemos) * [Grading Pipeline for OpenShift 4 Advanced Application Deployment Homework Assignment](https://github.com/redhat-gpte-devopsautomation/ocp4_app_deploy_homework_grading) * [github - Demostration of a basic OpenShift CI/CD pipeline deploying an application in Development then Test](https://github.com/gnunn1/openshift-basic-pipeline) ### OpenShift Pipelines with S2i and Jenkins Blue Ocean - [OpenShift Pipelines with Jenkins Blue Ocean 🌟](https://www.openshift.com/blog/openshift-pipelines-jenkins-blue-ocean) - [github.com/siamaksade/jenkins-blueocean](https://github.com/siamaksade/jenkins-blueocean) Jenkins Blue Ocean for OpenShift Jenkins S2I ### Jenkins Configuration as Code on Kubernetes * [Demo of Jenkins Configuration-As-Code with Docker and Groovy Hook Scripts (java11-support branch) 🌟🌟](https://github.com/oleg-nenashev/demo-jenkins-config-as-code/tree/java11-support) * [Configuration as Code of Jenkins (for Kubernetes) 🌟🌟](https://github.com/figaw/configuration-as-code-jenkins-k8s) * [Jenkins Configuration as Code on Kubernetes 🌟](https://github.com/redhatspain/jenkins-CasC-kubernetes-demo) A Codecentric/Jenkins Helm 3 Sample Chart on Digital Ocean Kubernetes with Spring Petclinic Demo Pipeline ### From Jenkins Freestyle jobs to Pipeline, with JobDSL. Seed jobs * [Meetup event: From Freestyle jobs to Pipeline, with JobDSL](https://www.meetup.com/Jenkins-online-meetup/events/270600737/) * Manually managing Jenkins jobs is painful. Jenkins Pipeline exists, but how do you get started and why should you bother in the first place? Journey with Nicolaj, as he talks about the pains of managing a manually configured job in Jenkins; converts a Freestyle Job to JobDSL, instantly; introduces mechanisms for adding the jobs to Jenkins, as code; and ultimately converts the job to a Jenkins Pipeline! * Just like last time, in the talk β€œConfiguration as Code of Jenkins (for Kubernetes),” you’ll see plenty of live demos and get to take home all the code and examples afterwards. Use it as the starting point for taking advantage of the Configuration as Code (CasC) that everyone is talking about, and hopefully it will save you a lot of headache in the future! * Agenda: * Manual Freestyle jobs, and why they hurt us * Introduction to JobDSL and adding JobDSL-jobs to Jenkins * From Freestyle Jobs to JobDSL, the beginning of our CasC adventure * From JobDSL to Pipeline, all the fun of CasC; with even more resilience! * Nicolaj GrΓ¦sholt is a Continuous Delivery and DevOps Consultant and Trainer from Eficode Praqma. He helps organizations with all things CI/CD, Artifact Management, Git, Docker and Kubernetes, and he’s a Certified Kubernetes Administrator of CNCF. * [Slides 🌟🌟🌟](https://github.com/figaw/freestyle-to-pipeline-jenkins/blob/master/from-freestyle-jobs-to-pipeline-with-jobdsl.pdf) * [Demo repository 🌟🌟🌟](https://github.com/figaw/freestyle-to-pipeline-jenkins) * Links of interest provided in the event: * [Continuation Passing Style (CPS)](https://github.com/cloudbees/groovy-cps/blob/master/doc/cps-basics.md) is a style of programming in which the remainder of the program is passed explicitly as a parameter, as opposed to that being handled implicitly represented as call stack. * [Jenkins Pipeline execution engine based on Continuation Passing Style (CPS) transformation of Groovy scripts. DSL Methods:](https://jenkinsci.github.io/job-dsl-plugin/#plugin/workflow-cps): * [cps](https://jenkinsci.github.io/job-dsl-plugin/#method/javaposse.jobdsl.dsl.helpers.workflow.WorkflowDefinitionContext.cps): WorkflowDefinitionContext * [cpsScm](https://jenkinsci.github.io/job-dsl-plugin/#method/javaposse.jobdsl.dsl.helpers.workflow.WorkflowDefinitionContext.cpsScm): WorkflowDefinitionContext * [Defines a Groovy CPS DSL definition: pipelineJob definition cps script](https://jenkinsci.github.io/job-dsl-plugin/#path/pipelineJob-definition-cps-script) * [Jenkins CLI](https://www.jenkins.io/doc/book/managing/cli/) * [How to create initial "seed" job](https://github.com/jenkinsci/configuration-as-code-plugin/blob/master/docs/seed-jobs.md) * [Jenkinsfile Runner Test Framework](https://github.com/jenkinsci/jenkinsfile-runner-test-framework) * [Jenkins Pipeline Unit testing framework](https://github.com/jenkinsci/JenkinsPipelineUnit) * [Plugin Installation Manager Tool](https://github.com/jenkinsci/plugin-installation-manager-tool) * [Jenkins Custom WAR Packager](https://github.com/jenkinsci/custom-war-packager) * Jenkins Configuration as Code: * [Configuration as Code of Jenkins (for Kubernetes) 🌟](https://github.com/figaw/configuration-as-code-jenkins-k8s) * [JEP-224: System Read permission: Improve experience of Jenkins Configuration-as-Code users](https://www.jenkins.io/events/online-hackfest/2020-uiux/) It improves the modifying Web UI configuration controls to support the read-only mode. * Plugins: * [Plugin Usage](https://plugins.jenkins.io/plugin-usage-plugin/) This plugin gives you the possibility to analyze the usage of your installed plugins. * [Pipeline as YAML (Incubated) 🌟](https://plugins.jenkins.io/pipeline-as-yaml/) * [Jenkins Job DSL Plugin](https://github.com/jenkinsci/job-dsl-plugin#documentation) A Groovy DSL for Jenkins Jobs - Sweeeeet! * [Least Load](https://plugins.jenkins.io/leastload/) This plugin overrides the default Load Balancer behavior and assigns jobs to nodes with the least load * [Declarative Pipeline Migration Assistant](https://plugins.jenkins.io/declarative-pipeline-migration-assistant/) * Jenkins Job DSL: * [Jenkins Job DSL API 🌟](https://jenkinsci.github.io/job-dsl-plugin/) * [mavenJob](https://jenkinsci.github.io/job-dsl-plugin/#path/mavenJob) * [Example of a pipeline with parameters](https://github.com/polarpoint-io/groovy-jenkins-pipelines/blob/master/jobs/parameterisedPipelines.groovy) * [Pipeline Global Library for ci.jenkins.io](https://github.com/jenkins-infra/pipeline-library) Collection of custom steps and variables for our Jenkins instance(s)
### SDKMAN * [SdkMan](https://sdkman.io/) is a tool for managing parallel versions of multiple Software Development Kits on most Unix based systems. It provides a convenient Command Line Interface (CLI) and API for installing, switching, removing and listing Candidates. Formerly known as **GVM** the **Groovy enVironment Manager**, it was inspired by the very useful [RVM](https://rvm.io/) and [rbenv](https://github.com/sstephenson/rbenv) tools, used at large by the Ruby community. * [Using Jenkins Pipeline parallel stages to build Maven project with different JDKs](https://e.printstacktrace.blog/using-jenkins-pipeline-parallel-stages-to-build-maven-project-with-different-jdks/) * **Demo:** A single Jenkinsfile, a Java Maven project, a single Dockerfile, multiple Java versions build and tested in parallel thanks to SDKMAN: * [Using SDKMAN! as a docker image for Jenkins Pipeline - a step by step guide 🌟](https://e.printstacktrace.blog/using-sdkman-as-a-docker-image-for-jenkins-pipeline-a-step-by-step-guide/) * [Multiple Java versions in a single Jenkins Pipeline using Docker and SDKMAN 🌟](https://www.youtube.com/watch?v=j1lH3vOhucw) In this video, I show you how you can use Jenkins Declarative Pipeline to create a build pipeline that compiles the Maven Java project using three different Java versions (8, 11, and 15.) You will learn how to use a matrix section of the Jenkins Pipeline to define parallel stages, as well as how to create a Docker image that provides both Java and Maven using the powerful SDKMAN command-line tool. After watching this video you should feel comfortable with setting up multiple parallel stages to build your Java project using different versions of the compiler. And what is most important - it does not require creating Dockerfiles for each Java version. I will show you how to build the pipeline using just a single Dockerfile that does the job. * [Jenkins Pipeline Maven build demo](https://github.com/wololock/jenkine-pipeline-maven-demo/tree/sdkman)
### Jenkins Scripts * **cleanup.Jenkinsfile**: Jenkinsfile with Declarative Pipeline Multiline sh that cleanups old builds. All the Stages are now visually monitored. It is triggered every saturday night and ends with jenkins restart. These Multi-line bash commands make easier to read Jenkins Projects. * **daily_restart.Jenkinsfile**: A script that automatically triggers a daily restart of Jenkins due to performance issues (Jenkins is a Java application). Jenkins with Declarative Pipeline multiline sh that restarts Jenkins every night except on Saturday nights (when cleanup.Jenkinsfile is triggered). * **confluence6-docker-build.Jenkinsfile**: Declarative Jenkinsfile for building and uploading a docker image to Openshift-DEV, Dockerhub and Openshift-PROD (Stages are disabled via Conditional Build Steps). Tip: A Docker Plugin for Jenkins can easily replace this Jenkinsfile. Grab them from here: [awesome-kubernetes/scripts](https://github.com/redhatspain/awesome-kubernetes/tree/master/scripts) ## Nexus3 on Kubernetes * [Proof of Concept: Nexus3 Chart configuration on Kubernetes](https://github.com/redhatspain/nexus3-helm-chart) A choerodon/nexus3 Helm 3 Sample Chart on Digital Ocean Kubernetes ## Spring PetClinic Sample Application * [spring-petclinic.github.io](https://spring-petclinic.github.io) * [spring-petclinic.github.io Docs](https://spring-petclinic.github.io/docs/resources.html) * [github.com/spring-projects/spring-petclinic](https://github.com/spring-projects/spring-petclinic) * [gitlab.beuth-hochschule.de](https://gitlab.beuth-hochschule.de/s70178/petclinic-ansible-jenkins-ci-cd) * [gitlab.comquent.de: Microservices branch](https://gitlab.comquent.de/petclinic/spring-petclinic-microservices) * [deors/deors-demos-petclinic jenkinsfile](https://github.com/deors/deors-demos-petclinic/blob/master/Jenkinsfile) * [liatrio.com: building with docker using jenkins pipelines](https://www.liatrio.com/blog/building-with-docker-using-jenkins-pipelines) * [stackoverflow: How to define BuildConfig object with Jenkins and openshift ](https://stackoverflow.com/questions/52337851/how-to-define-buildconfig-object-with-jenkins-and-openshift) * [cloudogu.com: CD with Jenkins, Nexus and cloudogu](https://cloudogu.com/en/blog/cd-with-nexus-jenkins-ces) * [experfy.com e-learning: Effective Jenkins - Continuous Delivery and Continuous Integration](https://www.experfy.com/training/courses/effective-jenkins-continuous-delivery-and-continuous-integration) ### Modular Pipeline Library (MPL). Petclinic Pipeline example with MPL * [griddynamics/mpl](https://github.com/griddynamics/mpl) * [blog.griddynamics.com: Developing a modular pipeline library to improve DevOps collaboration](https://blog.griddynamics.comdeveloping-a-modular-pipeline-library-to-improve-devops-collaboration/) * [youtube: Modular Pipeline Library: 4. Petclinic Pipeline 🌟](https://www.youtube.com/watch?v=GLtvxY1S3Aw) MPL demo video about more or less real petclinic pipeline with selenium tests, comparison to bare jenkinsfile pipeline without mpl, modules override mechanisms. ### PetClinic on Kubernetes: * [github.com/spring-petclinic/spring-petclinic-kubernetes 🌟](https://github.com/spring-petclinic/spring-petclinic-kubernetes) * While waiting for a working version, you could check [this fork](https://github.com/odedia/spring-petclinic-microservices) * [Spring PetClinic Microservices](https://github.com/spring-petclinic/spring-petclinic-microservices) * [Google Cloud Native Spring Boot PetClinic. Spring PetClinic Microservices on GCP 🌟](https://github.com/saturnism/spring-petclinic-gcp) Example Petclinic deployment on Google Cloud Platform into Google Kubernetes Engine with Istio. This is based on [Spring PetClinic Microservices](https://github.com/spring-petclinic/spring-petclinic-microservices). * [Distributed version of Spring Petclinic built with Spring Cloud 🌟](https://github.com/odedia/spring-petclinic-microservices) * [github.com/paulczar/k8s-spring-petclinic](https://github.com/paulczar/k8s-spring-petclinic) * [tech.paulcz.net/blog/spring-into-kubernetes-part-1](https://tech.paulcz.net/blog/spring-into-kubernetes-part-1/) * [github.com/kohsuke/petclinic Jenkinsfile](https://github.com/kohsuke/petclinic/blob/master/Jenkinsfile) * [pushbuildtestdeploy.com/jenkins-on-kubernetes-building-docker-images 🌟](https://pushbuildtestdeploy.com/jenkins-on-kubernetes-building-docker-images/) ### PetClinic Docker images: * [ref 1](https://hub.docker.com/r/ibuchh/petclinic-spinnaker-jenkins) * [ref 2](https://hub.docker.com/r/sarjunkumar24391/petclinic) * [ref 3](https://hub.docker.com/r/bmoussaud/petclinic) * [ref 4](https://hub.docker.com/r/alwin2/petclinic-customers-service) * [ref 5 arey/springboot-petclinic](https://hub.docker.com/r/arey/springboot-petclinic/) * [ref 6](https://hub.docker.com/r/anthonydahanne/spring-petclinic) * [ref 7](https://hub.docker.com/r/jbrisbin/spring-petclinic/) * [ref 8](https://github.com/spring-projects/spring-petclinic/issues/339) * [ref 9 - I have a branch that adds Docker, Kubernetes and Knative into the mix - planning on submitting a PR at some point](https://github.com/trisberg/spring-petclinic/tree/kubernetes) ### OpenShift.io Samples * [OpenShift.io Samples 🌟🌟](https://che.openshift.io/dashboard/#/getstarted) * [github.com/che-samples](https://github.com/che-samples) ## AWS Demos - [github.com/miztiik/AWS-Demos](https://github.com/miztiik/AWS-Demos) - [github.com/aws-samples](https://github.com/aws-samples) - [github.com/aws-samples/aws-training-demo](https://github.com/aws-samples/aws-training-demo) ## Azure DevOps Demos - [Azure DevOps Demo Generator](https://azuredevopsdemogenerator.azurewebsites.net/) - [Azure DevOps Demo Generator is now open source](https://devblogs.microsoft.com/devops/azure-devops-demo-generator-is-now-open-source/) - [Get started creating and populating demo Azure DevOps Services projects](https://docs.microsoft.com/en-us/azure/devops/demo-gen/use-demo-generator-v2?view=azure-devops) ## Google DevOps Demos - [Terraform Automation Demo using Google Cloud Provider](https://github.com/TerraHubCorp/terraform-google-automation-demo)