Skip to content

Commit

Permalink
Add automated release workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
buinauskas committed Dec 18, 2023
1 parent 8d35955 commit f342b72
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 4 deletions.
15 changes: 11 additions & 4 deletions .github/workflows/CI.yml → .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,32 +8,39 @@ on:

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: '8'
distribution: 'temurin'
cache: maven
cache: 'maven'

- name: Build with Maven
run: mvn compile

- id: project
name: Extract Maven project version
run: echo "version=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)" >> "$GITHUB_OUTPUT"

- name: Test with Maven
run: mvn test --batch-mode --fail-at-end

- name: Publish Test Report
if: success() || failure()
uses: scacap/action-surefire-report@v1

- name: Package with maven
run: mvn package
- uses: actions/upload-artifact@v3

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: vinted-kafka-connect-vespa-${{ steps.project.outputs.version }}
path: |
target/kafka-connect-vespa-${{ steps.project.outputs.version }}-jar-with-dependencies.jar
target/components/packages/vinted-kafka-connect-vespa-${{ steps.project.outputs.version }}.zip
target/components/kafka-connect-vespa-${{ steps.project.outputs.version }}.jar
52 changes: 52 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Release

on:
release:
types: [ published ]

jobs:
release:
runs-on: ubuntu-latest
outputs:
version: ${{steps.build.outputs.version}}

steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- run: |
git config user.name github-actions
git config user.email [email protected]
- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: '8'
distribution: 'temurin'
cache: 'maven'

- id: build
name: Build with Maven
run: |
mvn -B -ntp versions:set -DnewVersion=${{ github.event.release.tag_name }}
mvn -B -V -ntp clean package -DskipTests
- id: project
name: Extract Maven project version
run: echo "version=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)" >> "$GITHUB_OUTPUT"

- name: Upload files to a GitHub release
uses: svenstaro/[email protected]
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: target/components/packages/kafka-connect-vespa-${{ steps.build.outputs.version }}.zip
tag: ${{ steps.build.outputs.version }}

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: vinted-kafka-connect-vespa-${{ steps.build.outputs.version }}
path: |
target/components/packages/vinted-kafka-connect-vespa-${{ steps.project.outputs.version }}.zip
target/components/kafka-connect-vespa-${{ steps.project.outputs.version }}.jar

0 comments on commit f342b72

Please sign in to comment.