Skip to content

Commit

Permalink
Back merged from offical repo
Browse files Browse the repository at this point in the history
  • Loading branch information
saajn committed Aug 8, 2020
2 parents 1e5e5e2 + 8bbf138 commit a83e8c3
Show file tree
Hide file tree
Showing 62 changed files with 797 additions and 17 deletions.
11 changes: 11 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,14 @@ jobs:
AWS_REGION: us-east-1
run: |
chmod 755 build-all.sh && ./build-all.sh $MODULE
- name: "Zip build reports"
if: failure()
run: zip -r reports.zip **/**/build/reports

- uses: actions/upload-artifact@v1
name: "Upload build reports"
if: failure()
with:
name: reports
path: reports.zip
14 changes: 14 additions & 0 deletions aws/aws-hello-world/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# AWS Hello World

A simple Spring Boot application you can use to test deployments to AWS (or any other cloud provider, for that matter).

This application is also available as a Docker image on Docker Hub: [https://hub.docker.com/r/reflectoring/aws-hello-world](https://hub.docker.com/r/reflectoring/aws-hello-world).

## Blog posts

Blog posts about this topic:

* [The AWS Journey Part 1: Deploying Your First Docker Image](https://reflectoring.io/aws-deploy-docker-image-via-web-console/)
* [The AWS Journey Part 2: Deploying a Docker Image with AWS CloudFormation](https://reflectoring.io/aws-cloudformation-deploy-docker-image/)
* [The AWS Journey Part 3: Connecting a Spring Boot Application to an RDS Instance with CloudFormation](https://reflectoring.io/aws-cloudformation-rds/)
* [The AWS Journey Part 4: Zero-Downtime Deployment with CloudFormation and ECS](https://reflectoring.io/aws-cloudformation-ecs-deployment/)
15 changes: 15 additions & 0 deletions aws/aws-rds-hello-world/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,18 @@ Use the image instead of your real application to test AWS CloudFormation stacks
```
5. If the Spring Boot application can connect to the database, it will start up sucessfully and serve a message on the endpoint `/hello`.
# AWS Hello World
A simple Spring Boot application you can use to test deployments to AWS (or any other cloud provider, for that matter).
This application is also available as a Docker image on Docker Hub: [https://hub.docker.com/r/reflectoring/aws-hello-world](https://hub.docker.com/r/reflectoring/aws-hello-world).
## Blog posts
Blog posts about this topic:
* [The AWS Journey Part 1: Deploying Your First Docker Image](https://reflectoring.io/aws-deploy-docker-image-via-web-console/)
* [The AWS Journey Part 2: Deploying a Docker Image with AWS CloudFormation](https://reflectoring.io/aws-cloudformation-deploy-docker-image/)
* [The AWS Journey Part 3: Connecting a Spring Boot Application to an RDS Instance with CloudFormation](https://reflectoring.io/aws-cloudformation-rds/)
* [The AWS Journey Part 4: Zero-Downtime Deployment with CloudFormation and ECS](https://reflectoring.io/aws-cloudformation-ecs-deployment/)
9 changes: 7 additions & 2 deletions aws/cloudformation/ecs-in-two-public-subnets/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,12 @@

![ECS in two public subnets](ecs-in-two-public-subnets.svg)

# Companion Blog Post
## Blog posts

[The AWS Journey Part 2: Deploying a Docker image from the Command Line with CloudFormation](https://reflectoring.io/aws-cloudformation-deploy-docker-image/)
Blog posts about this topic:

* [The AWS Journey Part 1: Deploying Your First Docker Image](https://reflectoring.io/aws-deploy-docker-image-via-web-console/)
* [The AWS Journey Part 2: Deploying a Docker Image with AWS CloudFormation](https://reflectoring.io/aws-cloudformation-deploy-docker-image/)
* [The AWS Journey Part 3: Connecting a Spring Boot Application to an RDS Instance with CloudFormation](https://reflectoring.io/aws-cloudformation-rds/)
* [The AWS Journey Part 4: Zero-Downtime Deployment with CloudFormation and ECS](https://reflectoring.io/aws-cloudformation-ecs-deployment/)

11 changes: 9 additions & 2 deletions aws/cloudformation/ecs-zero-downtime-deployment/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@

![ECS Zero Downtime Deployment](ecs-in-two-public-subnets.svg)

# Companion Blog Post
## Blog posts

Blog posts about this topic:

* [The AWS Journey Part 1: Deploying Your First Docker Image](https://reflectoring.io/aws-deploy-docker-image-via-web-console/)
* [The AWS Journey Part 2: Deploying a Docker Image with AWS CloudFormation](https://reflectoring.io/aws-cloudformation-deploy-docker-image/)
* [The AWS Journey Part 3: Connecting a Spring Boot Application to an RDS Instance with CloudFormation](https://reflectoring.io/aws-cloudformation-rds/)
* [The AWS Journey Part 4: Zero-Downtime Deployment with CloudFormation and ECS](https://reflectoring.io/aws-cloudformation-ecs-deployment/)


[The AWS Journey Part 4: Zero-Downtime Deployment with CloudFormation and ECS](https://reflectoring.io/aws-cloudformation-ecs-deployment/)

10 changes: 10 additions & 0 deletions aws/localstack/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Localstack

Example code to test against AWS services locally using Localstack.

## Blog posts

Blog posts about this topic:

* [Local Development with AWS on LocalStack](https://reflectoring.io/aws-localstack/)

7 changes: 4 additions & 3 deletions build-all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -87,11 +87,12 @@ then
# ADD NEW MODULES HERE
# (add new modules above the rest so you get quicker feedback if it fails)

build_gradle_module "spring-boot/cache"
build_gradle_module "spring-boot/bean-lifecycle"
build_gradle_module "spring-boot/request-response/client"
build_gradle_module "spring-boot/request-response/server"
build_gradle_module "spring-boot/hazelcast/hazelcast-embedded-cache"
build_gradle_module "spring-boot/hazelcast/hazelcast-client-server"
build_gradle_module "spring-boot/cache"

echo ""
echo "+++"
Expand Down Expand Up @@ -122,12 +123,12 @@ fi

if [[ "$MODULE" == "module2" ]]
then
build_gradle_module "solid/isp"
build_maven_module "solid/lsp"
build_maven_module "resilience4j/retry"
build_maven_module "resilience4j/ratelimiter"
build_maven_module "resilience4j/timelimiter"
build_maven_module "solid/lsp"
build_gradle_module "spring-data/spring-data-jdbc-converter"
build_gradle_module "solid"
build_gradle_module "reactive"
build_gradle_module "junit/assumptions"
build_gradle_module "logging"
Expand Down
8 changes: 6 additions & 2 deletions junit/assumptions/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# Examples with JUnit 4 and JUnit 5
# Examples for assumptions with JUnit 4 and 5

Have a look at [the code](/src/test/java/com/example/demo/)
Have a look at [the code](/src/test/java/com/example/demo/).

## Blog posts

* [Assumptions and Conditional Test Execution with JUnit 4 and 5](https://reflectoring.io/conditional-junit4-junit5-tests/)
7 changes: 7 additions & 0 deletions reactive/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Reactive code examples

Some code examples using reactive code.

## Blog posts

* [Reactive Multi-Threading with RxJava - Pitfalls and Solutions](https://reflectoring.io/rxjava-reactive-batch-processing/)
10 changes: 10 additions & 0 deletions resilience4j/ratelimiter/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Rate limiting with Resilience4J

Run the Examples program.

## Blog posts

* [Implementing Rate Limiting with Resilience4j](https://reflectoring.io/rate-limiting-with-resilience4j)



5 changes: 0 additions & 5 deletions resilience4j/ratelimiter/Readme.md

This file was deleted.

7 changes: 7 additions & 0 deletions resilience4j/retry/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Retry with Resilience4J

Run the Examples program

## Blog posts

* [Implementing Retry with Resilience4j](https://reflectoring.io/retry-with-resilience4j/)
1 change: 0 additions & 1 deletion resilience4j/retry/Readme.md

This file was deleted.

7 changes: 7 additions & 0 deletions solid/isp/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Interface Segregation Principle

Example code showing the Interface Segregation Principle

## Blog posts

* [Everything You Need to Know About the Interface Segregation Principle](https://reflectoring.io/interface-segregation-principle/)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
8 changes: 7 additions & 1 deletion solid/lsp/Readme.md → solid/lsp/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Liskov Substition Principle

There are 5 programs under com/reflectoring/examples/lsp/paymentexample.

Run in this order to see class design evolution:
Expand All @@ -11,4 +13,8 @@ Packages are organized similarly: violation, forcefit, forcefitandconditional,
and redesigned have specific classes modified at that point in the evolution.

Common code is in common, common/exceptions, common/external and
common/instruments.
common/instruments.

## Blog posts

* [The Liskov Substitution Principle Explained](https://reflectoring.io/lsp-explained/)
5 changes: 5 additions & 0 deletions spring-boot/argumentresolver/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Custom Argument Resolvers with Spring Boot

## Blog posts

* [Custom Web Controller Arguments with Spring MVC and Spring Boot](https://reflectoring.io/spring-boot-argumentresolver/)
26 changes: 26 additions & 0 deletions spring-boot/bean-lifecycle/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
.gradle
/build/
!gradle/wrapper/gradle-wrapper.jar

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
/out/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
6 changes: 6 additions & 0 deletions spring-boot/bean-lifecycle/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Spring Bean Lifecycle

This code shows how to hook in to the phases of the Spring bean lifecycle.

## Blog Posts
* [Hooking into the Spring Bean Lifecycle](https://reflectoring.io/spring-bean-lifecycle)
26 changes: 26 additions & 0 deletions spring-boot/bean-lifecycle/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
plugins {
id 'org.springframework.boot' version '2.3.2.RELEASE'
id 'io.spring.dependency-management' version '1.0.9.RELEASE'
id 'java'
}

group = 'io.reflectoring'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

repositories {
mavenCentral()
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter'
implementation 'org.springframework.boot:spring-boot-starter-quartz'
implementation 'org.springframework.boot:spring-boot-starter-jersey'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
}
}

test {
useJUnitPlatform()
}
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#Tue Feb 06 12:27:20 CET 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip
Loading

0 comments on commit a83e8c3

Please sign in to comment.