Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ updates:
directory: "/"
schedule:
interval: "daily"
target-branch: "work-for-release-0.23.x"
target-branch: "master"
4 changes: 4 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ jobs:
with:
test-profile-matrix: '[ "travis", "integration-mysql", "integration-postgresql" ]'
secrets:
CLOUDSMITH_CENTRAL_PASSWORD: ${{ secrets.CLOUDSMITH_CENTRAL_PASSWORD }}
CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD: ${{ secrets.CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD }}
extra-env: '{ "AVATAX_URL": "${{ secrets.AVATAX_URL }}", "AVATAX_ACCOUNT_ID": "${{ secrets.AVATAX_ACCOUNT_ID }}", "AVATAX_LICENSE_KEY": "${{ secrets.AVATAX_LICENSE_KEY }}", "AVATAX_COMPANY_CODE": "${{ secrets.AVATAX_COMPANY_CODE }}", "AVATAX_COMMIT_DOCUMENTS": false, "AVATAX_TAXRATESAPI_URL": "${{ secrets.AVATAX_TAXRATESAPI_URL }}", "AVATAX_TAXRATESAPI_ACCOUNT_ID": "${{ secrets.AVATAX_TAXRATESAPI_ACCOUNT_ID }}", "AVATAX_TAXRATESAPI_LICENSE_KEY": "${{ secrets.AVATAX_TAXRATESAPI_LICENSE_KEY }}" }'

integration_test:
Expand All @@ -19,4 +21,6 @@ jobs:
integration_tests_goal: 'test:plugins:avatax'
integration_tests_ref: 'refs/heads/master'
secrets:
CLOUDSMITH_CENTRAL_PASSWORD: ${{ secrets.CLOUDSMITH_CENTRAL_PASSWORD }}
CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD: ${{ secrets.CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD }}
extra-env: '{ "AVATAX_URL": "${{ secrets.AVATAX_URL }}", "AVATAX_ACCOUNT_ID": "${{ secrets.AVATAX_ACCOUNT_ID }}", "AVATAX_LICENSE_KEY": "${{ secrets.AVATAX_LICENSE_KEY }}", "AVATAX_COMPANY_CODE": "${{ secrets.AVATAX_COMPANY_CODE }}", "AVATAX_COMMIT_DOCUMENTS": false, "AVATAX_TAXRATESAPI_URL": "${{ secrets.AVATAX_TAXRATESAPI_URL }}", "AVATAX_TAXRATESAPI_ACCOUNT_ID": "${{ secrets.AVATAX_TAXRATESAPI_ACCOUNT_ID }}", "AVATAX_TAXRATESAPI_LICENSE_KEY": "${{ secrets.AVATAX_TAXRATESAPI_LICENSE_KEY }}" }'
75 changes: 0 additions & 75 deletions .github/workflows/cloudsmith_release.yml

This file was deleted.

3 changes: 3 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,6 @@ on:
jobs:
analyze:
uses: killbill/gh-actions-shared/.github/workflows/codeql-analysis.yml@main
secrets:
CLOUDSMITH_CENTRAL_PASSWORD: ${{ secrets.CLOUDSMITH_CENTRAL_PASSWORD }}
CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD: ${{ secrets.CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD }}
97 changes: 14 additions & 83 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,88 +12,19 @@ on:
required: false
default: ''

env:
MAVEN_FLAGS: "-B --no-transfer-progress"
MAVEN_OPTS: "-Xmx2G -XX:+ExitOnOutOfMemoryError -Dmaven.wagon.rto=60000 -Dmaven.wagon.httpconnectionManager.ttlSeconds=25 -Dmaven.wagon.http.retryHandler.count=3"

jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
if: github.event.inputs.perform_version == ''
uses: actions/checkout@v2
- name: Checkout full repository
# Required when performing an existing release.
if: github.event.inputs.perform_version != ''
uses: actions/checkout@v2
with:
fetch-depth: '0'
- name: Setup git user
env:
BUILD_USER: ${{ secrets.BUILD_USER }}
BUILD_TOKEN: ${{ secrets.BUILD_TOKEN }}
run: |
git config --global user.email "contact@killbill.io"
git config --global user.name "Kill Bill core team"
git config --global url."https://${BUILD_USER}:${BUILD_TOKEN}@github.com/".insteadOf "git@github.com:"
- name: Configure Java
uses: actions/setup-java@v1
with:
java-version: 11
- name: Download Java dependencies
# We do as much as we can, but it may not be enough (https://issues.apache.org/jira/browse/MDEP-82)
run: |
mvn ${MAVEN_FLAGS} clean install dependency:resolve dependency:resolve-plugins -DskipTests=true -Dgpg.skip=true -Psonatype-oss-release
- name: Update killbill-oss-parent
if: github.event.inputs.parent_version != ''
run: |
echo "Updating killbill-oss-parent pom.xml to ${{ github.event.inputs.parent_version }}:"
mvn ${MAVEN_FLAGS} versions:update-parent -DgenerateBackupPoms=false -DparentVersion="[${{ github.event.inputs.parent_version }}]"
echo "killbill-oss-parent pom.xml changes:"
git --no-pager diff
echo "Downloading new dependencies:"
mvn ${MAVEN_FLAGS} -U clean install -DskipTests=true

git add pom.xml
# Will be pushed as part of the release process, only if the release is successful
git commit -m "pom.xml: update killbill-oss-parent to ${{ github.event.inputs.parent_version }}"
- name: Configure settings.xml for release
uses: actions/setup-java@v3
with:
java-version: 11
distribution: temurin
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
gpg-private-key: ${{ secrets.GPG_SIGNING_KEY }}
gpg-passphrase: GPG_PASSPHRASE
- name: Release artifacts
if: github.event.inputs.perform_version == ''
env:
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
AVATAX_URL: ${{ secrets.AVATAX_URL }}
AVATAX_ACCOUNT_ID: ${{ secrets.AVATAX_ACCOUNT_ID }}
AVATAX_LICENSE_KEY: ${{ secrets.AVATAX_LICENSE_KEY }}
AVATAX_COMPANY_CODE: ${{ secrets.AVATAX_COMPANY_CODE }}
AVATAX_COMMIT_DOCUMENTS: false
AVATAX_TAXRATESAPI_URL: ${{ secrets.AVATAX_TAXRATESAPI_URL }}
AVATAX_TAXRATESAPI_ACCOUNT_ID: ${{ secrets.AVATAX_TAXRATESAPI_ACCOUNT_ID }}
AVATAX_TAXRATESAPI_LICENSE_KEY: ${{ secrets.AVATAX_TAXRATESAPI_LICENSE_KEY }}
# It will still check the remote but hopefully not download much (0 B at 0 B/s). -o isn't safe because of MDEP-82 (see above).
run: |
mvn ${MAVEN_FLAGS} release:clean release:prepare release:perform
- name: Perform release
if: github.event.inputs.perform_version != ''
env:
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
# It will still check the remote but hopefully not download much (0 B at 0 B/s). -o isn't safe because of MDEP-82 (see above).
# See https://issues.apache.org/jira/browse/SCM-729 for why the release.properties file is required.
run: |
echo "scm.url=scm\:git\:git@github.com\:${GITHUB_REPOSITORY}.git" > release.properties
echo "scm.tag=${{ github.event.inputs.perform_version }}" >> release.properties
mvn ${MAVEN_FLAGS} release:perform
uses: killbill/gh-actions-shared/.github/workflows/release.yml@main
with:
parent_version: ${{ github.event.inputs.parent_version }}
perform_version: ${{ github.event.inputs.perform_version }}
secrets:
BUILD_USER: ${{ secrets.BUILD_USER }}
BUILD_TOKEN: ${{ secrets.BUILD_TOKEN }}
CLOUDSMITH_CENTRAL_PASSWORD: ${{ secrets.CLOUDSMITH_CENTRAL_PASSWORD }}
CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD: ${{ secrets.CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD }}
CLOUDSMITH_DISTRIBUTION_MAN_USERNAME: ${{ secrets.CLOUDSMITH_DISTRIBUTION_MAN_USERNAME }}
CLOUDSMITH_DISTRIBUTION_MAN_PASSWORD: ${{ secrets.CLOUDSMITH_DISTRIBUTION_MAN_PASSWORD }}
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
extra-env: '{ "AVATAX_URL": "${{ secrets.AVATAX_URL }}", "AVATAX_ACCOUNT_ID": "${{ secrets.AVATAX_ACCOUNT_ID }}", "AVATAX_LICENSE_KEY": "${{ secrets.AVATAX_LICENSE_KEY }}", "AVATAX_COMPANY_CODE": "${{ secrets.AVATAX_COMPANY_CODE }}", "AVATAX_COMMIT_DOCUMENTS": false, "AVATAX_TAXRATESAPI_URL": "${{ secrets.AVATAX_TAXRATESAPI_URL }}", "AVATAX_TAXRATESAPI_ACCOUNT_ID": "${{ secrets.AVATAX_TAXRATESAPI_ACCOUNT_ID }}", "AVATAX_TAXRATESAPI_LICENSE_KEY": "${{ secrets.AVATAX_TAXRATESAPI_LICENSE_KEY }}" }'
14 changes: 14 additions & 0 deletions .github/workflows/snapshot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: snapshot

on:
push:
workflow_dispatch:

jobs:
snapshot:
uses: killbill/gh-actions-shared/.github/workflows/snapshot.yml@main
secrets:
CLOUDSMITH_CENTRAL_PASSWORD: ${{ secrets.CLOUDSMITH_CENTRAL_PASSWORD }}
CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD: ${{ secrets.CLOUDSMITH_KILLBILL_MAVEN_REPO_PASSWORD }}
CLOUDSMITH_DISTRIBUTION_MAN_USERNAME: ${{ secrets.CLOUDSMITH_DISTRIBUTION_MAN_USERNAME }}
CLOUDSMITH_DISTRIBUTION_MAN_PASSWORD: ${{ secrets.CLOUDSMITH_DISTRIBUTION_MAN_PASSWORD }}
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@ The easiest way to get started with the AvaTax plugin is to take a look at our [
| 0.7.y | 0.22.z | Legacy REST API |
| 0.8.y | 0.22.z | REST API |
| 0.9.y | 0.24.z | REST API |
| 0.10.y | 0.26.z | REST API |

We've upgraded numerous dependencies in 0.8.x (required for Java 11 support).
We've upgraded numerous dependencies in 0.8.x (required for Java 11 support). In 0.10.x, the Java EE `javax` namespace
is replaced by the `jakarta` namespace.

## Requirements

Expand Down
2 changes: 1 addition & 1 deletion docker/docker-compose.ci.mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: '3.8'
services:
killbill:
network_mode: host
image: killbill/killbill:0.24.15
image: xsalefter/killbill:0.25.4
environment:
- KILLBILL_CATALOG_URI=SpyCarAdvanced.xml
- KILLBILL_DAO_URL=jdbc:mysql://127.0.0.1:3306/killbill
Expand Down
2 changes: 1 addition & 1 deletion docker/docker-compose.ci.postgresql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: '3.8'
services:
killbill:
network_mode: host
image: killbill/killbill:0.24.15
image: xsalefter/killbill:0.25.4
environment:
- KILLBILL_CATALOG_URI=SpyCarAdvanced.xml
- KILLBILL_DAO_URL=jdbc:postgresql://127.0.0.1:5432/killbill
Expand Down
49 changes: 27 additions & 22 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@
<parent>
<groupId>org.kill-bill.billing</groupId>
<artifactId>killbill-oss-parent</artifactId>
<version>0.146.63</version>
<version>0.147.30</version>
</parent>
<groupId>org.kill-bill.billing.plugin.java</groupId>
<artifactId>avatax-plugin</artifactId>
<version>0.9.4-SNAPSHOT</version>
<version>0.10.0-SNAPSHOT</version>
<packaging>bundle</packaging>
<name>Kill Bill OSGI AvaTax plugin</name>
<description>Kill Bill AvaTax plugin</description>
Expand All @@ -45,6 +45,7 @@
<check.spotbugs-exclude-filter-file>spotbugs-exclude.xml</check.spotbugs-exclude-filter-file>
<maven.javadoc.failOnError>false</maven.javadoc.failOnError>
<osgi.private>org.killbill.billing.plugin.avatax.*</osgi.private>
<repository.cloudsmith.repo>killbill-avatax-plugin</repository.cloudsmith.repo>
</properties>
<dependencies>
<dependency>
Expand All @@ -59,22 +60,10 @@
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>com.google.inject</groupId>
<artifactId>guice</artifactId>
</dependency>
<dependency>
<groupId>io.airlift</groupId>
<artifactId>command</artifactId>
Expand All @@ -90,15 +79,19 @@
<artifactId>embedded-postgres</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</dependency>
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
Expand All @@ -114,10 +107,6 @@
<artifactId>flyway-core</artifactId>
<version>7.7.3</version>
</dependency>
<dependency>
<groupId>org.jooby</groupId>
<artifactId>jooby</artifactId>
</dependency>
<dependency>
<groupId>org.jooq</groupId>
<artifactId>jooq</artifactId>
Expand Down Expand Up @@ -157,12 +146,28 @@
<dependency>
<groupId>org.kill-bill.billing.plugin.java</groupId>
<artifactId>killbill-base-plugin</artifactId>
<exclusions>
<exclusion>
<groupId>org.kill-bill.commons</groupId>
<artifactId>killbill-jooby</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.kill-bill.billing.plugin.java</groupId>
<artifactId>killbill-base-plugin</artifactId>
<type>test-jar</type>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.kill-bill.commons</groupId>
<artifactId>killbill-jooby</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.kill-bill.commons</groupId>
<artifactId>killbill-jooby</artifactId>
</dependency>
<dependency>
<groupId>org.kill-bill.commons</groupId>
Expand Down
5 changes: 5 additions & 0 deletions spotbugs-exclude.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,9 @@
<Match>
<Bug pattern="EI_EXPOSE_REP,EI_EXPOSE_REP2"/>
</Match>
<!-- justification: model classes are Jackson-deserialized DTOs; fields are written via reflection, not direct assignment -->
<Match>
<Class name="~org\.killbill\.billing\.plugin\.avatax\.client\.model\..*"/>
<Bug pattern="UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD,UWF_NULL_FIELD"/>
</Match>
</FindBugsFilter>
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
import java.util.Map;
import java.util.UUID;

import javax.annotation.Nullable;
import jakarta.annotation.Nullable;

import org.joda.time.LocalDate;
import org.killbill.billing.account.api.Account;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import java.util.Set;
import java.util.UUID;

import javax.annotation.Nullable;
import jakarta.annotation.Nullable;

import org.joda.time.LocalDate;
import org.killbill.billing.account.api.Account;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

import java.util.UUID;

import javax.annotation.Nullable;
import jakarta.annotation.Nullable;

import org.killbill.billing.plugin.api.PluginTenantContext;

Expand Down
Loading
Loading