diff --git a/cookiecutter.json b/cookiecutter.json index df9ab44..8cd153b 100644 --- a/cookiecutter.json +++ b/cookiecutter.json @@ -9,5 +9,6 @@ "domain_plural_uppercase": "{{cookiecutter.domain_plural.upper()}}", "group_id": "org.{{cookiecutter.domain}}", "artifact_id": "{{cookiecutter.domain}}", - "package_name": "{{cookiecutter.domain}}" + "package_name": "{{cookiecutter.domain}}", + "_copy_without_render": [".github/workflows/*.*"] } diff --git a/{{cookiecutter.app_name}}/.docker/Dockerfile b/{{cookiecutter.app_name}}/.docker/Dockerfile new file mode 100644 index 0000000..46fc6b4 --- /dev/null +++ b/{{cookiecutter.app_name}}/.docker/Dockerfile @@ -0,0 +1,7 @@ +FROM gcr.io/distroless/java21-debian12 + +WORKDIR /app + +COPY ../../bootstrap/target/{{cookiecutter.domain}}-exec.jar . + +CMD ["{{cookiecutter.domain}}-exec.jar"] \ No newline at end of file diff --git a/{{cookiecutter.app_name}}/.github/CODEOWNERS b/{{cookiecutter.app_name}}/.github/CODEOWNERS new file mode 100644 index 0000000..078e607 --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/CODEOWNERS @@ -0,0 +1 @@ +* @devs-from-matrix/app-generator-team diff --git a/{{cookiecutter.app_name}}/.github/CONTRIBUTING.md b/{{cookiecutter.app_name}}/.github/CONTRIBUTING.md new file mode 100644 index 0000000..47a9b1a --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/CONTRIBUTING.md @@ -0,0 +1,84 @@ +# How to contribute + +We are really glad you're reading this, because we need volunteer developers to help this project come to fruition. + +When contributing to this repository, please first discuss the change you wish to make via issue, +email, slack or any other method with the owners of this repository before making a change. + +Please note we have a code of conduct, please follow it in all your interactions with the project. + +## Pull request process + +- Ensure you have performed a self-review of your changes +- Ensure the new changes generate no new warnings +- Ensure you have added tests that prove the fix is effective or that the feature works +- Ensure new and existing unit tests pass locally with my changes +- Ensure your commit message should follow [conventional commit message guidelines](https://www.conventionalcommits.org/en/v1.0.0/) + +## Code of Conduct + +### Our pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +nationality, personal appearance, race, religion, or sexual identity and +orientation. + +### Our standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +### Our responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +### Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +### Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at [INSERT EMAIL ADDRESS]. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + diff --git a/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/bug_report.md b/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..9568cbc --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,27 @@ +--- +name: Bug report +about: Create a report to help us improve +title: "[Bug]" +labels: ":bug: bug" +assignees: 'paul58914080, anupbaranwal' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Additional context** +Add any other context about the problem here. diff --git a/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/feature_request.md b/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..da9b0e5 --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: "[New Feature]" +labels: ":rocket: enhancement" +assignees: 'paul58914080, anupbaranwal' + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/{{cookiecutter.app_name}}/.github/PULL_REQUEST_TEMPLATE.md b/{{cookiecutter.app_name}}/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..2b71227 --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,14 @@ +# Description + + + +Closes : + +# Checklist: + +- [ ] My code follows the contribution guidelines of this project +- [ ] I have performed a self-review of my own code +- [ ] My changes generate no new warnings +- [ ] I have added tests that prove my fix is effective or that my feature works +- [ ] New and existing unit tests pass locally with my changes +- [ ] My commits follow [conventional commit message guidelines](https://www.conventionalcommits.org/en/v1.0.0/) diff --git a/{{cookiecutter.app_name}}/.github/dependabot.yml b/{{cookiecutter.app_name}}/.github/dependabot.yml new file mode 100644 index 0000000..48ac98b --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/dependabot.yml @@ -0,0 +1,10 @@ +version: 2 +updates: +- package-ecosystem: maven + directory: "/" + schedule: + interval: daily + time: "23:30" + open-pull-requests-limit: 10 + reviewers: + - paul58914080 diff --git a/{{cookiecutter.app_name}}/.github/workflows/build_workflow.yml b/{{cookiecutter.app_name}}/.github/workflows/build_workflow.yml new file mode 100644 index 0000000..5c70b70 --- /dev/null +++ b/{{cookiecutter.app_name}}/.github/workflows/build_workflow.yml @@ -0,0 +1,24 @@ +name: CI +on: + pull_request: + branches: [ main ] + workflow_dispatch: +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 21 + uses: actions/setup-java@v1 + with: + java-version: 21 + - name: Cache Maven packages + uses: actions/cache@v2 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + - name: Build with Maven + run: mvn clean install -ntp + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v1 diff --git a/{{cookiecutter.app_name}}/README.md b/{{cookiecutter.app_name}}/README.md index bbaaa6e..1bae51e 100644 --- a/{{cookiecutter.app_name}}/README.md +++ b/{{cookiecutter.app_name}}/README.md @@ -24,28 +24,3 @@ cd bootstrap && mvn compile jib:dockerBuild ``` cd bootstrap && mvn spring-boot:run ``` - -## Formatting - -This project uses [git-code-format-maven-plugin](https://github.com/Cosium/git-code-format-maven-plugin) for formatting -the code per [google style guide](https://google.github.io/styleguide/javaguide.html) - -### How to format ? - -`mvn git-code-format:format-code` - -## Validating - -This project uses [githook-maven-plugin](https://mvnrepository.com/artifact/io.github.phillipuniverse/githook-maven-plugin) which is a maven plugin to configure and install local git hooks by running set of commands during build. - -### Command to validate formatted code - -``` -mvn git-code-format:validate-code-format -``` - -## Contribution guidelines - -We are really glad you're reading this, because we need volunteer developers to help this project come to fruition. - -Request you to please read our [contribution guidelines](https://devs-from-matrix.github.io/basic-template-repository/#/README?id=contribution-guidelines)