diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index c448410..c4a1ba2 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -1,7 +1,7 @@
---
name: "Bug Report"
about: "Report a bug or unexpected behavior in the Spring Boot microservice"
-title: "bug(scope) - Short description of the issue"
+title: "bug(scope) - short description of the issue"
labels: "bug"
assignees: ""
diff --git a/.github/ISSUE_TEMPLATE/document_improvement.md b/.github/ISSUE_TEMPLATE/document_improvement.md
index 6a293e8..c36edd4 100644
--- a/.github/ISSUE_TEMPLATE/document_improvement.md
+++ b/.github/ISSUE_TEMPLATE/document_improvement.md
@@ -1,7 +1,7 @@
---
name: "Documentation Improvement"
about: "Suggest an improvement or correction to the project's documentation"
-title: "docs(scope) - Short description of the documentation issue"
+title: "docs(scope) - short description of the documentation issue"
labels: "documentation"
assignees: ""
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index e9cbd7b..5d16c57 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -10,7 +10,7 @@ assignees: ""
## Description
## Use Case
@@ -22,7 +22,7 @@ This can be anything from CI tool integration, Security feature (use Security-De
## Benefits
-### Example
+## Example
## Additional Information
diff --git a/.github/ISSUE_TEMPLATE/generic_report.md b/.github/ISSUE_TEMPLATE/generic_report.md
new file mode 100644
index 0000000..e4a3786
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/generic_report.md
@@ -0,0 +1,20 @@
+---
+name: "Generic Report"
+about: "Request a change that does not classify with other issue types"
+title: "chore(scope) - brief description of the requested change"
+labels: "good first issue"
+assignees: ""
+
+---
+
+## Description
+
+
+## Use Case
+
+
+## Additional Information
+
diff --git a/.github/ISSUE_TEMPLATE/security_vulnerability_report.md b/.github/ISSUE_TEMPLATE/security_vulnerability_report.md
index a2d522a..cbed1be 100644
--- a/.github/ISSUE_TEMPLATE/security_vulnerability_report.md
+++ b/.github/ISSUE_TEMPLATE/security_vulnerability_report.md
@@ -1,7 +1,7 @@
---
name: "Security Vulnerability Report"
about: "Report a potential security vulnerability in the Spring Boot microservice repository"
-title: "security(scope) - Brief description of the vulnerability"
+title: "security(scope) - brief description of the vulnerability"
labels: "vulnerabilities"
assignees: ""
@@ -23,7 +23,7 @@ assignees: ""
## Suggested Mitigation or Fix
-### CVSS Score (Optional)
+## CVSS Score (Optional)
## Additional Information
diff --git a/.github/PULL_REQUEST_TEMPLATE/bug_pr_template.md b/.github/PULL_REQUEST_TEMPLATE/bug_pr_template.md
index 446f20d..89e0318 100644
--- a/.github/PULL_REQUEST_TEMPLATE/bug_pr_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/bug_pr_template.md
@@ -2,7 +2,7 @@
### Type of bug fix
@@ -23,29 +23,29 @@ Please describe the tests that you ran to verify your changes. Provide instructi
- Test case 1 (please describe)
- Test case 2 (please describe)
-Please attach relevant evidences supporting the test execution.
+Please attach relevant shreds of evidence supporting the test execution.
-->
## Checklist for Author
- [ ] The PR follows below contribution conventions
- - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR commits follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR commits follow [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR branch follows convention of format [commit_type]-[issue-reference]-[brief-description]
-- [ ] I have tested the bug fix thoroughly and attached test evidences confirming changes works as expected
+ - [ ] PR branch follows the convention of format [commit_type]-[issue-reference]-[brief-description]
+- [ ] I have tested the bug fix thoroughly and attached test shreds of evidence confirming changes work as expected
- [ ] I have updated the documentation to reflect bug fixes (if applicable)
- [ ] My changes generate no new warnings or errors
- [ ] Checks for unused files
- [ ] Checks for changes not related to this issue
-## Additional notes for reviewer
+## Additional notes for the reviewer
## Checklist for Reviewer
- [ ] The PR follows contribution guidelines
-- [ ] I have reviewed the author checklist
+- [ ] I have reviewed the author's checklist
- [ ] I have tested the changes locally are working as expected
diff --git a/.github/PULL_REQUEST_TEMPLATE/document_pr_template.md b/.github/PULL_REQUEST_TEMPLATE/document_pr_template.md
index 72222e8..287f589 100644
--- a/.github/PULL_REQUEST_TEMPLATE/document_pr_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/document_pr_template.md
@@ -2,7 +2,7 @@
### Affected Documentation
@@ -20,7 +20,7 @@ Affected Documentation:
## How Has This Been Tested?
-Please describe how the changes to documentation were reviewed. If applicable, include instructions on how to view or
+Please describe how the changes to the documentation were reviewed. If applicable, include instructions on how to view or
test the updated documentation.
- [ ] Documentation preview checked in markdown renderer
@@ -35,19 +35,19 @@ Test Configuration:
## Checklist for Author
- [ ] The PR follows below contribution conventions
- - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR commits follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR commits follow [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR branch follows convention of format [commit_type]-[issue-reference]-[brief-description]
+ - [ ] PR branch follows the convention of format [commit_type]-[issue-reference]-[brief-description]
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my documentation to reflect the code changes, spelling and is clearly accurate
-- [ ] I have tested the documentation for correctness and if required added evidences(e.g., links, images)
+- [ ] I have tested the documentation for correctness and if required added shreds of evidence (e.g., links, images)
- [ ] My changes generate no new warnings or errors
- [ ] Checks for unused files
- [ ] Checks for changes not related to this issue
-## Additional notes for reviewer
+## Additional notes for the reviewer
diff --git a/.github/PULL_REQUEST_TEMPLATE/feature_pr_template.md b/.github/PULL_REQUEST_TEMPLATE/feature_pr_template.md
index 5bb419c..8768c84 100644
--- a/.github/PULL_REQUEST_TEMPLATE/feature_pr_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/feature_pr_template.md
@@ -2,7 +2,7 @@
### Type of feature request
@@ -25,29 +25,29 @@ Please describe the tests that you ran to verify your changes.
- Test case 1 (please describe)
- Test case 2 (please describe)
-Please attach relevant evidences supporting the test execution.
+Please attach relevant shreds of evidence supporting the test execution.
-->
## Checklist for Author
- [ ] The PR follows below contribution conventions
- - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR commits follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR commits follow [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR branch follows convention of format [commit_type]-[issue-reference]-[brief-description]
-- [ ] I have tested the enhancement thoroughly and attached test evidences confirming changes works as expected
+ - [ ] PR branch follows the convention of format [commit_type]-[issue-reference]-[brief-description]
+- [ ] I have tested the enhancement thoroughly and attached test shreds of evidence confirming changes work as expected
- [ ] I have updated the documentation to reflect enhancement (if applicable)
- [ ] My changes generate no new warnings or errors and added tests that prove my feature PR is effective
- [ ] Checks for unused files
- [ ] Checks for changes not related to this issue
-## Additional notes for reviewer
+## Additional notes for the reviewer
## Checklist for Reviewer
- [ ] The PR follows contribution guidelines
-- [ ] I have reviewed the author checklist
+- [ ] I have reviewed the author's checklist
- [ ] I have tested the changes locally are working as expected
diff --git a/.github/PULL_REQUEST_TEMPLATE/generic_pr_template.md b/.github/PULL_REQUEST_TEMPLATE/generic_pr_template.md
index d4644ea..efa378d 100644
--- a/.github/PULL_REQUEST_TEMPLATE/generic_pr_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/generic_pr_template.md
@@ -2,7 +2,7 @@
### Type of Change
@@ -17,29 +17,29 @@ Please describe the tests that you ran to verify your changes.
- Test case 1 (please describe)
- Test case 2 (please describe)
-Please attach relevant evidences supporting the test execution.
+Please attach relevant shreds of evidence supporting the test execution.
-->
## Checklist for Author
- [ ] The PR follows below contribution conventions
- - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR commits follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR commits follow [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR branch follows convention of format [commit_type]-[issue-reference]-[brief-description]
-- [ ] I have tested the changes thoroughly and attached test evidences confirming changes works as expected
+ - [ ] PR branch follows the convention of format [commit_type]-[issue-reference]-[brief-description]
+- [ ] I have tested the changes thoroughly and attached test shreds of evidence confirming changes works as expected
- [ ] I have updated the documentation to reflect changes (if applicable)
- [ ] My changes generate no new warnings or errors
- [ ] Checks for unused files
- [ ] Checks for changes not related to this issue
-## Additional notes for reviewer
+## Additional notes for the reviewer
## Checklist for Reviewer
- [ ] The PR follows contribution guidelines
-- [ ] I have reviewed the author checklist
+- [ ] I have reviewed the author's checklist
- [ ] I have tested the changes locally are working as expected
diff --git a/.github/PULL_REQUEST_TEMPLATE/security_vulnerability_pr_template.md b/.github/PULL_REQUEST_TEMPLATE/security_vulnerability_pr_template.md
index 406a013..2cfc692 100644
--- a/.github/PULL_REQUEST_TEMPLATE/security_vulnerability_pr_template.md
+++ b/.github/PULL_REQUEST_TEMPLATE/security_vulnerability_pr_template.md
@@ -2,7 +2,7 @@
### Type of Security Vulnerability
@@ -24,30 +24,30 @@ Please describe the tests that you ran to verify your changes. Provide instructi
- Test case 1 (please describe)
- Test case 2 (please describe)
-Please attach relevant evidences supporting the test execution.
+Please attach relevant shreds of evidence supporting the test execution.
-->
## Checklist for Author
- [ ] The PR follows below contribution conventions
- - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR title follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR commits follows [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
+ - [ ] PR commits follow [conventional commits](https://docs.cocogitto.io/guide/commit.html) format commit_type(
scope): issue_reference message
- - [ ] PR branch follows convention of format [commit_type]-[issue-reference]-[brief-description]
-- [ ] I have tested the security vulnerability thoroughly and attached test evidences confirming changes works as
+ - [ ] PR branch follows the convention of format [commit_type]-[issue-reference]-[brief-description]
+- [ ] I have tested the security vulnerability thoroughly and attached test shreds of evidence confirming changes work as
expected
- [ ] I have updated the documentation to reflect bug fixes (if applicable)
- [ ] My changes generate no new warnings or errors
- [ ] Checks for unused files
- [ ] Checks for changes not related to this issue
-## Additional notes for reviewer
+## Additional notes for the eviewer
## Checklist for Reviewer
- [ ] The PR follows contribution guidelines
-- [ ] I have reviewed the author checklist
+- [ ] I have reviewed the author's checklist
- [ ] I have tested the changes locally are working as expected
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index e4483cf..2dcbc16 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -2,7 +2,7 @@
Click the **Preview** tab and select a relevant PR template.
-Please use generic template for other types of changes.
+Please use a generic template for other types of changes.
- [Feature](?expand=1&template=feature_pr_template.md)
- [Bug](?expand=1&template=bug_pr_template.md)
diff --git a/README.md b/README.md
index be99400..82b772c 100644
--- a/README.md
+++ b/README.md
@@ -5,6 +5,7 @@
---
- [Introduction](#introduction)
+- [Built With](#built-with)
- [Prerequisites](#prerequisites)
- [Installation and Getting Started](#installation-and-Getting-Started)
- [Microservice Structure](#microservice-structure)
@@ -53,6 +54,11 @@ In the sections below, I'll walk you through the various integrations included i
Currently, the microservice exposes a simple GET API that accepts a company reference as a path parameter. It then queries the Companies House API to retrieve and return detailed company information.
+### Built With
+
+- [Spring Boot](https://spring.io/projects/spring-boot) - The REST framework used
+- [GRADLE](https://gradle.org/) - Dependency Management
+
### Prerequisites
- You must have >= Java 21 Installed. You can use [SDKMAN](https://sdkman.io/install) for maintaining different JDK's in your system.
@@ -552,8 +558,8 @@ In this section we are going to explore [OWASP ZAP](https://www.zaproxy.org/docs
-t [TARGET_REST_API] -g gen.conf -r pentest-report.html
```
- | Parameter | Description |
- |-----------------|:---------------------------------------- |
+ | Parameter | Description |
+ |-----------------|:-----------------------------------------|
| $(pwd) | Directory where report will be generated |
| zap-baseline.py | Zap's python script |
| -t [TARGET_URL] | URL to be Pen Tested |
@@ -1053,30 +1059,33 @@ Cloud Run is available in below two flavours:
- Cloud Run Fully Managed
- Cloud Run on Anthos, which supports both Google Cloud and onāpremises environments.
-### Built With
-
-- [Spring Boot](https://spring.io/projects/spring-boot) - The REST framework
- used
-- [GRADLE](https://gradle.org/) - Dependency Management
-
### What to Expect Next!
-As the world of software engineering is evolving so we do.
-Listing down some of the exciting features am going to work on and update the GitHub in coming days, they are:
+As software engineering continues to evolve, we do too.
+
+All planned tasks for this repository are tracked in the [GitHub Issues](https://github.com/abhisheksr01/spring-boot-microservice-best-practices/issues) section.
-- GitHub Actions
-- Chaos Monkey
-- Hystrix
-- CORS (Cross-Origin)
+If you'd like to propose new work or enhancements for this repository, please create a [New Issue](https://github.com/abhisheksr01/spring-boot-microservice-best-practices/issues/new/choose) using the appropriate issue type.
### Versioning
-We use [SemVer](http://semver.org/) for versioning. For the versions
-available, see the
-[tags on this repository](https://github.com/your/project/tags).
+We utilize [Cocogitto](https://github.com/cocogitto/cocogitto) to automate the process of creating [Semantic SemVer](http://semver.org/) GitHub releases for this repository.
-### License
+For information on the latest [releases](https://docs.github.com/en/repositories/releasing-projects-on-github/about-releases), please visit the Releases section of the repository.
+
+The release process is automated through GitHub Actions (GHA CI), following [Cocogitto's conventional commit types](https://docs.cocogitto.io/guide/commit.html).
-This project is licensed under the MIT License - see the
-[LICENSE.md](LICENSE.md) file for details
+
+Click here for details on how the releases are automated in this repository.
+
+#### GHA CI Release Process
+- When a commit is made with a conventional commit type, the GHA CI pipeline is triggered.
+- After all the validations the **docker-build-push** job runs the cog-bump step, which checks whether a version bump is necessary. If a bump is needed, it calculates the new version based on the conventional commit type.
+- During this process, we pass a `dry-run: true` argument to the **cog-bump** step to only calculate (but not apply) the version bump.
+- The CI pipeline then builds the Docker image with the new version and tests the changes.
+- Once the changes are verified, the **create-release** job publishes new tags with bumped current version and a GitHub release is created.
+
+
+### License
+This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details