diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f128920..411675f 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -8,11 +8,6 @@ on:
branches:
- master
-env:
- REGISTRY: europe-north1-docker.pkg.dev/artifact-registry-5n/dapla-pseudo-maven
- IMAGE: dapla-dlp-pseudo-func
- TAG: ${{ github.ref_name }}-${{ github.sha }}
-
jobs:
build:
runs-on: ubuntu-latest
@@ -44,6 +39,6 @@ jobs:
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- - name: Build with Maven
- run: mvn --batch-mode -P ssb-bip package
+ - name: Build with Maven and deploy to Artifact Registry
+ run: mvn --batch-mode -P ssb-bip deploy
diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml
index c0d6ab8..5dea360 100644
--- a/.github/workflows/release-drafter.yml
+++ b/.github/workflows/release-drafter.yml
@@ -24,7 +24,7 @@ jobs:
pull-requests: write
runs-on: ubuntu-latest
steps:
- # Draft the next Release notes as Pull Requests are merged into master
+ # Draft the next Release notes as Pull Requests are merged into main
- uses: release-drafter/release-drafter@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
\ No newline at end of file
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index b2c6e94..6f352fb 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -5,20 +5,24 @@ on:
branches:
- release
-env:
- REGISTRY: europe-north1-docker.pkg.dev/artifact-registry-5n/dapla-pseudo-maven
- IMAGE: dapla-dlp-pseudo-func
-
jobs:
release:
runs-on: ubuntu-latest
permissions:
- contents: read
+ contents: write
id-token: write
+ packages: write
steps:
+ - uses: actions/create-github-app-token@v1
+ id: app-token
+ with:
+ app-id: ${{ secrets.DAPLA_BOT_APP_ID }}
+ private-key: ${{ secrets.DAPLA_BOT_PRIVATE_KEY }}
+
- uses: actions/checkout@v3
with:
+ token: ${{ steps.app-token.outputs.token }}
ref: refs/heads/master
- name: Set up JDK 21
@@ -45,39 +49,52 @@ jobs:
- name: Configure Git user
run: |
- git config user.email "ghactions@ssb.no"
- git config user.name "GitHub Actions"
+ git config user.name "dapla-bot[bot]"
+ git config user.email "143391972+dapla-bot[bot]@users.noreply.github.com"
- - name: Perform release and publish jar
+ - name: Setup Maven authentication to GitHub packages
+ uses: s4u/maven-settings-action@v2.8.0
+ id: maven_settings
+ with:
+ servers: '[{"id": "github","configuration": {"httpHeaders": {"property": {"name": "Authorization","value": "Bearer ${{ secrets.GITHUB_TOKEN }}"}}}}]'
+
+ - name: Maven release and deploy to GitHub packages
id: release_jar
env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
run: |
- mvn --batch-mode -P ssb-bip -DskipTests release:prepare
+ # Get the release version from the pom.xml before the next snapshot increment
+ VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout | sed "s/-SNAPSHOT//")
+ echo "version=${VERSION}" >> $GITHUB_OUTPUT
+ # Perform the release/deploy and increment the version to the next snapshot
+ mvn --batch-mode release:prepare -Darguments="-Dmaven.deploy.skip=true -DskipTests"
+ mvn --batch-mode release:perform
TAG=$(git describe --abbrev=0 --tags)
echo "tag=${TAG}" >> $GITHUB_OUTPUT
- mvn --batch-mode -P ssb-bip -DskipTests release:perform
- ARTIFACT_ID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout)
- echo "artifact_id=${ARTIFACT_ID}" >> $GITHUB_OUTPUT
- ARTIFACT_PATH=$(realpath ./target/$ARTIFACT_ID*.jar)
- echo "artifact_path=${ARTIFACT_PATH}" >> $GITHUB_OUTPUT
-
- - env:
- EVENT_CONTEXT: ${{ toJSON(github.event) }}
- run: |
- echo $EVENT_CONTEXT
- name: Create GitHub release draft
uses: release-drafter/release-drafter@v5
id: create_github_release
env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
with:
tag: ${{ steps.release_jar.outputs.tag }}
+ - name: Upload assets to GitHub release draft
+ env:
+ GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
+ run: |
+ ARTIFACT_ID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout)
+ # Get all files matching the artifact id and version (source, javadoc, etc.)
+ ARTIFACT_GLOB=(./target/$ARTIFACT_ID-${{ steps.release_jar.outputs.version }}*.jar)
+ for file in "${ARTIFACT_GLOB[@]}"; do
+ echo "Uploading $file"
+ gh release upload ${{ steps.create_github_release.outputs.tag_name }} $file
+ done
+
- name: Publish GitHub release
uses: eregon/publish-release@v1
env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
with:
- release_id: ${{ steps.create_github_release.outputs.id }}
+ release_id: ${{ steps.create_github_release.outputs.id }}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 512e973..d4d2555 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,11 +9,12 @@
dapla-dlp-pseudo-func
- 11
+ 21
${java.version}
${java.version}
UTF-8
- artifactregistry://europe-north1-maven.pkg.dev/artifact-registry-5n/dapla-pseudo-maven
+ artifactregistry://europe-north1-maven.pkg.dev/artifact-registry-5n/dapla-pseudo-maven/
+ statisticsnorway/dapla-dlp-pseudo-func
3.24.2
@@ -31,12 +32,12 @@
2.1.4
10.8.1
- 3.1.2
- 3.8.1
- 3.3.0
- 3.2.4
- 2.22.2
- 3.2.1
+ 3.3.1
+ 3.11.0
+ 3.6.2
+ 3.5.1
+ 3.2.2
+ 3.3.0
0.8.8
3.9.1.2184
@@ -220,7 +221,7 @@
artifact-registry
- ${artifact-registry.url}/maven-releases
+ ${artifact-registry.url}
true
@@ -230,7 +231,7 @@
artifact-registry-snapshot
- ${artifact-registry.url}/maven-snapshots
+ ${artifact-registry.url}
false
@@ -296,14 +297,21 @@
artifact-registry
- ${artifact-registry.url}/maven-releases
+ ${artifact-registry.url}
artifact-registry-snapshots
- ${artifact-registry.url}/maven-snapshots
+ ${artifact-registry.url}
+
+
+ github
+ GitHub Packages
+ https://maven.pkg.github.com/${github.repository}
+
+