Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rugal/parent

Parent pom for version control
https://github.com/rugal/parent

Last synced: about 6 hours ago
JSON representation

Parent pom for version control

Awesome Lists containing this project

README

        

# parent

[![Maven Central](https://maven-badges.herokuapp.com/maven-central/ga.rugal/parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/ga.rugal/parent)
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FRugal%2Fparent.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2FRugal%2Fparent?ref=badge_shield)
[![Known Vulnerabilities](https://snyk.io/test/github/Rugal/parent/badge.svg?targetFile=pom.xml)](https://snyk.io/test/github/Rugal/parent?targetFile=pom.xml)

## download

### release version

To include in your `pom.xml`
```xml

ga.rugal
parent
VERSION

```

### snapshot version

for snapshot version, please add sonatype:
```xml


ossrh
Sonatype snapshot repository
https://oss.sonatype.org/content/repositories/snapshots
default

false
always
warn


true
never
fail

```

## Configurable Property

name | default | note
---|---|---
java.version | 17 | Java Development Kit version
skip.surefire.tests | true | Skip unit test & coverage report
skip.failsafe.tests | true | Skip integration test & coverage report
branch.threshold | 0.9 | Minimum branch coverage threshold
line.threshold | 0.9 | Minimum line coverage threshold
jacoco.skip.coverage.check | true | Skip test coverage check, this will fail build if threshold not reached
openapi.codegen.package.root | ${project.groupId}.${project.artifactId}.openapi |
openapi.codegen.skipIfSpecIsUnchanged | true | Skip codegen if no change in `contract.yml`
checkstyle.exclusion|target/**/*,**/dto/**/*, **/ExceptionController.java|
flyway.schema | test | the target database schema for flyway
azure.function.name | ${project.artifactId} | name of function app in Azure
azure.resourceGroup | eastus2-206136 | resource group name
azure.servicePlanName | ASP-eastus2206136-837f | service plan name
azure.region | eastus2 | function app region
azure.stagingDirectory | ${project.build.directory}/azure-functions/${azure.function.name} | staging directory
azure.runtime.os | linux | operating system function app
graphql.package.name | ${project.groupId}.${project.artifactId}.graphql | package for graphql codegen
graphql.schema.path|src/main/resources/graphql|the schema file of graphql for codegen

## License
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FRugal%2Fparent.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2FRugal%2Fparent?ref=badge_large)

# development instruction

## release command

```bash
# prepare release version and next snapshot version
# upload artifact to sonatype
mvn -P sonatype release:prepare release:perform
# list release candidates
mvn nexus-staging:rc-list
# use this command to close the release candidate
# while closing, repository will impose many checks
# only if you pass all the tests can you run into next phase
mvn nexus-staging:rc-close -DstagingRepositoryId=YOUR_STAGING_REPOSITORY_ID
# use this command to actually release the release candidate if you pass all the checks
# once it's done, the staging repository will be closed
mvn nexus-staging:release -DstagingRepositoryId=YOUR_STAGING_REPOSITORY_ID
```

From 2024, [token](https://help.sonatype.com/en/user-tokens.html) is required for deployment.