Skip to content

Latest commit

 

History

History
90 lines (74 loc) · 2.77 KB

README.adoc

File metadata and controls

90 lines (74 loc) · 2.77 KB

Narayana Checkstyle Configuration

This repository contains the checkstyle rules used by some narayana projects.

How to use

Add the following plugin snippet to pom.xml

<properties>
  <checkstyle.skip>false</checkstyle.skip>
  <!-- https://search.maven.org/search?q=a:maven-checkstyle-plugin -->
  <version.maven.checkstyle-plugin>3.1.2</version.maven.checkstyle-plugin>
  <version.io.narayana.checkstyle-config>1.0.1.Final</version.io.narayana.checkstyle-config>
</properties>
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-checkstyle-plugin</artifactId>
      <version>${version.maven.checkstyle-plugin}</version>
      <configuration>
        <configLocation>narayana-checkstyle/checkstyle.xml</configLocation>
        <suppressionsLocation>narayana-checkstyle/suppressions.xml</suppressionsLocation>
        <consoleOutput>true</consoleOutput>
        <failsOnError>true</failsOnError>
        <includeTestSourceDirectory>true</includeTestSourceDirectory>
        <excludes>**/*$logger.java,**/*$bundle.java</excludes>
        <useFile></useFile>
        <!-- checkstyle is set to be run on particular modules by disabling skip -->
        <skip>${checkstyle.skip}</skip>
      </configuration>
      <dependencies>
        <dependency>
          <groupId>io.narayana</groupId>
          <artifactId>narayana-checkstyle-config</artifactId>
          <version>${version.io.narayana.checkstyle-config}</version>
        </dependency>
      </dependencies>
      <executions>
        <execution>
          <id>check-style</id>
          <goals>
            <goal>checkstyle</goal>
          </goals>
          <phase>compile</phase>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

How to build

Compile with Maven.

mvn clean install

How to release

Release is performed to JBoss Nexus.

Credentials for release needs to be setup in the ~/.m2/settings.xml (or settings defined with -s parameter) where you link the repository id jboss-releases-repository with the username/password.

<server>
    <id>jboss-releases-repository</id>
    <username>[username]</username>
    <password>[password for jboss nexus connection]</password>
</server>

As the next step run the mvn release and proceed standard steps for maven release plugin.

  • git checkout main; git fetch upstream main; git rebase upstream/main; git push upstream main

  • mvn javadoc:javadoc - verification that there won’t be any javadoc errors during release:perform

  • mvn release:clean

  • mvn release:prepare

  • mvn release:perform

Dry run: mvn release:prepare -DdryRun=true