Files
Spring Operator 231e4693e4 URL Cleanup (#376)
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://jboss.org/schema/arquillian/arquillian_1_0.xsd with 1 occurrences migrated to:
  https://jboss.org/schema/arquillian/arquillian_1_0.xsd ([https](https://jboss.org/schema/arquillian/arquillian_1_0.xsd) result 301).
* [ ] http://repo.spring.io/libs-milestone-local with 2 occurrences migrated to:
  https://repo.spring.io/libs-milestone-local ([https](https://repo.spring.io/libs-milestone-local) result 302).
* [ ] http://repo.spring.io/libs-snapshot-local with 2 occurrences migrated to:
  https://repo.spring.io/libs-snapshot-local ([https](https://repo.spring.io/libs-snapshot-local) result 302).
* [ ] http://repo.spring.io/release with 1 occurrences migrated to:
  https://repo.spring.io/release ([https](https://repo.spring.io/release) result 302).

# Ignored
These URLs were intentionally ignored.

* http://jboss.org/schema/arquillian with 2 occurrences
* http://maven.apache.org/POM/4.0.0 with 42 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 22 occurrences
2019-03-26 11:42:03 -04:00
..
2019-03-26 11:42:03 -04:00
2019-03-16 12:05:09 -04:00
2017-05-18 15:21:38 +02:00

Hello World Example

This Spring Boot application exposes an endpoint that we can call to receive a Hello World message as response. The application is configured using the @RestController and the method returning the message is annotated with @RequestMapping("/")

The uberjar of the Spring Boot application is packaged within a Docker image using the Fabric8 Maven plugin and next deployed top of the Kubernetes management platform as a pod using the replication controller created by the plugin.

To play with the example, it is required to have access to a Kubernetes Management Platform which is available on GCE. If you don't have an account on GCE, you can install locally Kubernetes & Docker using [Minikube](https://kubernetes.io/docs/getting-started-guides/minikube/) within a Virtual Machine managed by a hypervisor (Xhyve, Virtualbox or KVM) if your machine is not a native Unix operating system.

The script to install minikube is

curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.17.1/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

When the client is installed on your machine, you can start kubernetes using this command:

minikube start

Next, you can play with this Spring Boot application in the cloud using the following maven command to deploy it:

mvn clean package fabric8:deploy -Pkubernetes

When the application has been deployed, you can access its service or endpoint url using this command:

minikube service kubernetes-hello-world --url

And next you can curl the endpoint using the url returned by the previous command

curl http://IP_OR_HOSTNAME/

Integration test

To deploy the resources required on Kubernetes/OpenShift and to test if the service deployed can answer to requests, we will use the Arquillian Kubernetes Cube framework. This testing framework uses the Kubernetes Java API to communicate with the platform, deploy the resources (pod, service, deployment, ...) generated by the Fabric8 maven plugin. When the service becomes available, the method defines within thr Junit test will call the endpoint to verify that it receives as response the string Hello World

Remark : If you run the integration test against OpenShift, create first the namespace/project it that arquillian will use to deploy the resources using the oc client oc new-project it.

When you are logged to the OpenShift platform, execute the following maven command to run the Integration Test against OpenShift

mvn clean install -Pintegration