Skip to content

This is a template for you to start working within a java environment.

Notifications You must be signed in to change notification settings

WhiteOrganization/white-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Application Template

This is a template for you to start working within a Java environment. Substitute this description for a description of your application. Please feel free to add new sections or delete not-used sections.

1) What is this repository for?

1.1) Quick summary

Version: 0.1-SNAPSHOT

Detailed description of your app.

1.2) Disclosure

We hereby certify that, to the best of our knowledge, neither we nor any individual or entity with whom or which I have a significant working relationship have (has) received something of value from a commercial party related directly or indirectly to the subject of this project...

2) How do I get set up?

2.1) Summary of set up

The technologies the project is using.

2.1.1) Development environment

2.1.2) Project Dependencies

This library uses:

  • Lombok to log errors and general logs.
    • Slf4j
  • Spring boot
    • Spring 6
      • Reactive Spring Web-flux WebClient. for Reactive REST Calls.
      • Spring > Jackson
      • JKube A Kubernetes Maven plugin to generate Docker Images.
    • JUnit5
      • Selenium-Jupiter
  • White_SeleniumFramework. Utilities and Base Automation Scenario
  • Hibernate
  • H2 DataBase

2.2) Configuration Steps

2.2.1) Environment Configuration

Please execute the main-protection-win.bat file in the root directory of the project to protect the main branch from being corrupted unintentionally.

You will require all the Development elements in your environment.

An IDE with Maven support is suggested for you to make any modifications to the code.

2.2.2) Database configuration

You don't need to set up a DataBase for the project to connect to. There is an H2 database already embedded in the project, but if you want to you can configure a separate one and switch the database connection, you will need to specify the connection information in the application.properties file:

...\src\main\resources\application.properties

url=		jdbc:oracle:oci:@//localhost:1521/mydb
username=	sa
password=	sa

3) How to Deploy?

use maven to compile and run(you can configure the auto launch of a desktop app) the project.

You can use this to (clean, build, test, and) RUN the project with a single command:

mvn install

Maven is no longer configured to create the docker image on the package goal, so you can create the image using:

mvn package k8s:build

After that, you can run the image (and project) by running the image in Docker with

docker compose --project-directory src\main\docker up

This should create a docker image and run the project.

mvn clean package k8s:build -e
docker compose --project-directory src\main\docker up
.

Maven could also be configured to run the Docker Image on its own on the INSTALL phase/goal after the creation of the image on the package goal. After configuration, use this as a quick go-to command:

mvn clean install -DskipTests

If the project is running correctly

4) What are the Contribution guidelines?

4.1) Writing tests.

There is a sample of Unit testing, Integration testing, Functional testing, and a single non-spring Testing.

4.2) Code review.

Request if needed.

4.3) Other guidelines.

Please ask for the code standard to use as a guideline and reflect it in the project.

5) Who do I talk to?

Role Contact
Owner/admincurrent main developer: [email protected]
Supporters We have supporters with knowledge of the setup process of the project only
Community send us a message in our Discord Server

Please, contact me if you want to help; In general, I'm developing, maintaining, and supporting this project on my own with no help or support from anyone; any tip, comment, change, or help in general is well-received.

About

This is a template for you to start working within a java environment.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published