Compare commits
No commits in common. "c7ded6a2ba8f194372f99003658d5dd19a4ef99d" and "27251ec8ee661cf82b9a9e8576bc6ed9d44520a5" have entirely different histories.
c7ded6a2ba
...
27251ec8ee
16 changed files with 289 additions and 46 deletions
|
@ -1,8 +0,0 @@
|
||||||
image: ubuntu/lts
|
|
||||||
packages:
|
|
||||||
- openjdk-17-jdk-headless
|
|
||||||
- maven
|
|
||||||
tasks:
|
|
||||||
- build: |
|
|
||||||
cd thorp
|
|
||||||
mvn -B install
|
|
41
.github/GitHub-Actions.org
vendored
Normal file
41
.github/GitHub-Actions.org
vendored
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
* Deploying using Github Actions
|
||||||
|
|
||||||
|
** Actions definition: workflow/sonatype-deploy.yml
|
||||||
|
|
||||||
|
When a GitHub Release is created, usually from a tag, this action will trigger.
|
||||||
|
|
||||||
|
Using JDK8 the software will be packaged, including running any tests.
|
||||||
|
|
||||||
|
Then the Deploy script will sign the created artifacts then deploy them according to the distributionManagement configuration in the `pom.xml`.
|
||||||
|
|
||||||
|
** Deploy Script
|
||||||
|
|
||||||
|
Uses a signing key provided from the GitHub Actions Secrets as an environment variable to sign the artifact(s) before they are then deployed.
|
||||||
|
|
||||||
|
*** Inputs
|
||||||
|
|
||||||
|
**** DEPLOY_PROJECTS (optional)
|
||||||
|
|
||||||
|
An optional list of modules in a multi-module project to be deployed. If this value is not specified, then all projects will be deployed.
|
||||||
|
|
||||||
|
** Maven Configuration
|
||||||
|
|
||||||
|
Picks up the credentials from Environment variables for authenticating both with GPG and with the target deployment server (e.g. sonatype-nexus).
|
||||||
|
|
||||||
|
*** Inputs
|
||||||
|
|
||||||
|
**** NEXUS_USERNAME
|
||||||
|
|
||||||
|
The username for your account on the deployment server.
|
||||||
|
|
||||||
|
**** NEXUS_PASSWORD
|
||||||
|
|
||||||
|
The password for your account on the deployement server.
|
||||||
|
|
||||||
|
**** GPG_KEYNAME
|
||||||
|
|
||||||
|
The key to use when signing.
|
||||||
|
|
||||||
|
**** GPG_PASSPHRASE
|
||||||
|
|
||||||
|
The passphrase to unlock the key to use when signing.
|
53
.github/NOTES
vendored
Normal file
53
.github/NOTES
vendored
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
Add subkeys:
|
||||||
|
|
||||||
|
????
|
||||||
|
|
||||||
|
Publish:
|
||||||
|
|
||||||
|
gpg --send-keys --keyserver keyserver.ubuntu.com $KEYID
|
||||||
|
gpg --send-keys --keyserver pgp.mit.edu $KEYID
|
||||||
|
gpg --send-keys --keyserver pool.sks-keyservers.net $KEYID
|
||||||
|
|
||||||
|
Backup:
|
||||||
|
|
||||||
|
gpg --export --armor pcampbell@kemitix.net > gpg-key-backup.asc
|
||||||
|
gpg --export-secret-keys --armor pcampbell@kemitix.net >> gpg-key-backup.asc
|
||||||
|
|
||||||
|
Export sub-keys:
|
||||||
|
|
||||||
|
gpg --export-secret-subkeys pcampbell@kemitix.net > subkeys
|
||||||
|
|
||||||
|
Remove master keys:
|
||||||
|
|
||||||
|
gpg --delete-secret-key pcampbell@kemitix.net
|
||||||
|
|
||||||
|
Import sub-keys and clean up:
|
||||||
|
|
||||||
|
gpg --import subkeys
|
||||||
|
|
||||||
|
shred --remove subkeys
|
||||||
|
|
||||||
|
Delete any encryption subkeys:
|
||||||
|
|
||||||
|
gpg --edit-key pcampbell@kemitix.net
|
||||||
|
|
||||||
|
2
|
||||||
|
delkey
|
||||||
|
save
|
||||||
|
|
||||||
|
Change passphrase:
|
||||||
|
|
||||||
|
gpg --edit-key pcampbell@kemitix.net
|
||||||
|
passwd
|
||||||
|
save
|
||||||
|
|
||||||
|
Export keys:
|
||||||
|
|
||||||
|
gpg --export --armor pcampbell@kemitix.net > codesigning.asc
|
||||||
|
gpg --export-secret-keys --armor pcampbell@kemitix.net >> codesigning.asc
|
||||||
|
|
||||||
|
Encrypt keys:
|
||||||
|
|
||||||
|
gpg --symmetric --cipher-algo AES256 codesigning.asc
|
||||||
|
|
||||||
|
shred codesigning.asc
|
BIN
.github/codesigning.asc.gpg
vendored
Normal file
BIN
.github/codesigning.asc.gpg
vendored
Normal file
Binary file not shown.
7
.github/dependabot.yml
vendored
Normal file
7
.github/dependabot.yml
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
version: 2
|
||||||
|
updates:
|
||||||
|
- package-ecosystem: maven
|
||||||
|
directory: "/"
|
||||||
|
schedule:
|
||||||
|
interval: daily
|
||||||
|
open-pull-requests-limit: 10
|
34
.github/release-drafter.yml
vendored
Normal file
34
.github/release-drafter.yml
vendored
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
name-template: 'v$RESOLVED_VERSION 🌈'
|
||||||
|
tag-template: 'v$RESOLVED_VERSION'
|
||||||
|
categories:
|
||||||
|
- title: '🚀 Features'
|
||||||
|
labels:
|
||||||
|
- 'feature'
|
||||||
|
- 'enhancement'
|
||||||
|
- title: '🐛 Bug Fixes'
|
||||||
|
labels:
|
||||||
|
- 'fix'
|
||||||
|
- 'bugfix'
|
||||||
|
- 'bug'
|
||||||
|
- title: '🧰 Maintenance'
|
||||||
|
labels:
|
||||||
|
- 'chore'
|
||||||
|
- 'dependencies'
|
||||||
|
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
|
||||||
|
version-resolver:
|
||||||
|
major:
|
||||||
|
labels:
|
||||||
|
- 'major'
|
||||||
|
minor:
|
||||||
|
labels:
|
||||||
|
- 'minor'
|
||||||
|
patch:
|
||||||
|
labels:
|
||||||
|
- 'patch'
|
||||||
|
default: patch
|
||||||
|
exclude-labels:
|
||||||
|
- 'skip-changelog'
|
||||||
|
template: |
|
||||||
|
## Changes
|
||||||
|
|
||||||
|
$CHANGES
|
28
.github/settings.xml
vendored
Normal file
28
.github/settings.xml
vendored
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0">
|
||||||
|
<servers>
|
||||||
|
<server>
|
||||||
|
<id>sonatype-nexus-snapshots</id>
|
||||||
|
<username>${env.NEXUS_USERNAME}</username>
|
||||||
|
<password>${env.NEXUS_PASSWORD}</password>
|
||||||
|
</server>
|
||||||
|
<server>
|
||||||
|
<id>sonatype-nexus-staging</id>
|
||||||
|
<username>${env.NEXUS_USERNAME}</username>
|
||||||
|
<password>${env.NEXUS_PASSWORD}</password>
|
||||||
|
</server>
|
||||||
|
</servers>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>gpg-sign</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>true</activeByDefault>
|
||||||
|
</activation>
|
||||||
|
<properties>
|
||||||
|
<gpg.executable>gpg</gpg.executable>
|
||||||
|
<gpg.keyname>${env.GPG_KEYNAME}</gpg.keyname>
|
||||||
|
<gpg.passphrase>${env.GPG_PASSPHRASE}</gpg.passphrase>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
</settings>
|
17
.github/stale.yaml
vendored
Normal file
17
.github/stale.yaml
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# Number of days of inactivity before an issue becomes stale
|
||||||
|
daysUntilStale: 60
|
||||||
|
# Number of days of inactivity before a stale issue is closed
|
||||||
|
daysUntilClose: 7
|
||||||
|
# Issues with these labels will never be considered stale
|
||||||
|
exemptLabels:
|
||||||
|
- pinned
|
||||||
|
- security
|
||||||
|
# Label to use when marking an issue as stale
|
||||||
|
staleLabel: wontfix
|
||||||
|
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||||
|
markComment: >
|
||||||
|
This issue has been automatically marked as stale because it has not had
|
||||||
|
recent activity. It will be closed if no further activity occurs. Thank you
|
||||||
|
for your contributions.
|
||||||
|
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||||
|
closeComment: false
|
23
.github/workflows/build-maven.yml
vendored
Normal file
23
.github/workflows/build-maven.yml
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
name: maven-build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: '*'
|
||||||
|
pull_request:
|
||||||
|
branches: '*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
java: [ 8, 11, 14 ]
|
||||||
|
steps:
|
||||||
|
- uses: kamiazya/setup-graphviz@v1
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: setup-jdk-${{ matrix.java }}
|
||||||
|
uses: actions/setup-java@v1
|
||||||
|
with:
|
||||||
|
java-version: ${{ matrix.java }}
|
||||||
|
- name: build-jar
|
||||||
|
run: mvn -B install
|
40
.github/workflows/deploy-sonatype.yml
vendored
Normal file
40
.github/workflows/deploy-sonatype.yml
vendored
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
name: sonatype-deploy
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "v*"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: kamiazya/setup-graphviz@v1
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Set up JDK
|
||||||
|
uses: actions/setup-java@v1
|
||||||
|
with:
|
||||||
|
java-version: 8
|
||||||
|
- name: Build with Maven
|
||||||
|
run: mvn -B install
|
||||||
|
- name: Nexus Repo Publish
|
||||||
|
run: |
|
||||||
|
gpg --quiet \
|
||||||
|
--batch \
|
||||||
|
--yes \
|
||||||
|
--decrypt \
|
||||||
|
--passphrase="${{ secrets.GPG_PASSPHRASE }}" \
|
||||||
|
--output codesigning.asc \
|
||||||
|
.github/codesigning.asc.gpg
|
||||||
|
gpg --batch \
|
||||||
|
--fast-import codesigning.asc
|
||||||
|
mvn --settings .github/settings.xml \
|
||||||
|
-Dskip-Tests=true \
|
||||||
|
-P release \
|
||||||
|
-B \
|
||||||
|
deploy
|
||||||
|
env:
|
||||||
|
NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }}
|
||||||
|
NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
|
||||||
|
GPG_KEYNAME: ${{ secrets.GPG_KEYNAME }}
|
||||||
|
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
14
.github/workflows/draft-release.yml
vendored
Normal file
14
.github/workflows/draft-release.yml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
name: draft-release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
update_draft_release:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: release-drafter/release-drafter@v5.11.0
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
@ -52,7 +52,7 @@
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-assembly-plugin</artifactId>
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
<version>3.4.2</version>
|
<version>3.3.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<descriptorRefs>
|
<descriptorRefs>
|
||||||
<descriptorRef>jar-with-dependencies</descriptorRef>
|
<descriptorRef>jar-with-dependencies</descriptorRef>
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>info.picocli</groupId>
|
<groupId>info.picocli</groupId>
|
||||||
<artifactId>picocli</artifactId>
|
<artifactId>picocli</artifactId>
|
||||||
<version>4.7.0</version>
|
<version>4.5.2</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- lombok -->
|
<!-- lombok -->
|
||||||
|
|
|
@ -18,11 +18,11 @@
|
||||||
<properties>
|
<properties>
|
||||||
<tiles-maven-plugin.version>2.18</tiles-maven-plugin.version>
|
<tiles-maven-plugin.version>2.18</tiles-maven-plugin.version>
|
||||||
<kemitix-maven-tiles.version>2.7.0</kemitix-maven-tiles.version>
|
<kemitix-maven-tiles.version>2.7.0</kemitix-maven-tiles.version>
|
||||||
<lombok.version>1.18.24</lombok.version>
|
<lombok.version>1.18.16</lombok.version>
|
||||||
<mon.version>2.2.0</mon.version>
|
<mon.version>2.2.0</mon.version>
|
||||||
<junit.version>5.9.1</junit.version>
|
<junit.version>5.7.0</junit.version>
|
||||||
<assertj.version>3.23.1</assertj.version>
|
<assertj.version>3.19.0</assertj.version>
|
||||||
<mockito.version>4.9.0</mockito.version>
|
<mockito.version>3.7.7</mockito.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencyManagement>
|
<dependencyManagement>
|
||||||
|
|
56
pom.xml
56
pom.xml
|
@ -24,36 +24,30 @@
|
||||||
<maven-graph-plugin.version>1.45</maven-graph-plugin.version>
|
<maven-graph-plugin.version>1.45</maven-graph-plugin.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<profiles>
|
<build>
|
||||||
<profile>
|
<plugins>
|
||||||
<id>graphviz</id>
|
<plugin>
|
||||||
<!-- mvn -B -P graphviz validate -->
|
<groupId>org.fusesource.mvnplugins</groupId>
|
||||||
<build>
|
<artifactId>maven-graph-plugin</artifactId>
|
||||||
<plugins>
|
<version>${maven-graph-plugin.version}</version>
|
||||||
<plugin>
|
<executions>
|
||||||
<groupId>org.fusesource.mvnplugins</groupId>
|
<execution>
|
||||||
<artifactId>maven-graph-plugin</artifactId>
|
<phase>validate</phase>
|
||||||
<version>${maven-graph-plugin.version}</version>
|
<goals>
|
||||||
<executions>
|
<goal>reactor</goal>
|
||||||
<execution>
|
</goals>
|
||||||
<phase>validate</phase>
|
</execution>
|
||||||
<goals>
|
</executions>
|
||||||
<goal>reactor</goal>
|
<configuration>
|
||||||
</goals>
|
<direction>TB</direction>
|
||||||
</execution>
|
<hideTransitive>true</hideTransitive>
|
||||||
</executions>
|
<hideVersion>true</hideVersion>
|
||||||
<configuration>
|
<hideOptional>true</hideOptional>
|
||||||
<direction>TB</direction>
|
<hideScopes>test,provided</hideScopes>
|
||||||
<hideTransitive>true</hideTransitive>
|
<target>${project.basedir}/docs/images/reactor-graph.png</target>
|
||||||
<hideVersion>true</hideVersion>
|
</configuration>
|
||||||
<hideOptional>true</hideOptional>
|
</plugin>
|
||||||
<hideScopes>test,provided</hideScopes>
|
</plugins>
|
||||||
<target>${project.basedir}/docs/images/reactor-graph.png</target>
|
</build>
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
</profile>
|
|
||||||
</profiles>
|
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
|
|
@ -58,7 +58,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.kemitix.aws</groupId>
|
<groupId>net.kemitix.aws</groupId>
|
||||||
<artifactId>kemitix-aws-java-sdk-s3-wrapper</artifactId>
|
<artifactId>kemitix-aws-java-sdk-s3-wrapper</artifactId>
|
||||||
<version>1.12.131</version>
|
<version>1.11.938</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>javax.xml.bind</groupId>
|
<groupId>javax.xml.bind</groupId>
|
||||||
|
|
Loading…
Reference in a new issue