-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #24 from yvasyliev/3.0.0
v3.0.0
- Loading branch information
Showing
154 changed files
with
5,014 additions
and
1,468 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,15 +3,112 @@ name: Release | |
on: | ||
workflow_dispatch: | ||
inputs: | ||
version: | ||
description: "Release version" | ||
required: true | ||
release_type: | ||
description: "Release type" | ||
type: choice | ||
options: | ||
- patch | ||
- minor | ||
- major | ||
- provided | ||
|
||
env: | ||
JAR_NAME_TEMPLATE: reddit-telegram-repeater-*-shaded.jar | ||
TAG: v${{ github.event.inputs.version }} | ||
|
||
jobs: | ||
test: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Set up JDK 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'corretto' | ||
cache: maven | ||
- name: Run test | ||
run: mvn test | ||
env: | ||
spring.jpa.hibernate.ddl-auto: create-drop | ||
telegram.admin.id: ${{ secrets.telegram.admin.id }} | ||
telegram.bot.token: ${{ secrets.test.telegram.bot.token }} | ||
telegram.channel.id: ${{ secrets.test.telegram.channel.id }} | ||
telegram.chat.id: ${{ secrets.test.telegram.chat.id }} | ||
telegram.schedule.posting.enabled: false | ||
|
||
|
||
release: | ||
runs-on: ubuntu-latest | ||
needs: test | ||
steps: | ||
- name: Install XMLStarlet | ||
run: sudo apt-get install xmlstarlet | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Set up JDK 17 | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: '17' | ||
distribution: 'corretto' | ||
cache: maven | ||
- name: Get current version | ||
id: get_current_version | ||
run: | | ||
current_version=$(xmlstarlet sel -N pom=http://maven.apache.org/POM/4.0.0 -t -v "/pom:project/pom:version" pom.xml) | ||
echo "current_version=$current_version" | ||
echo "VERSION=$current_version" >> $GITHUB_ENV | ||
- name: Validate current version | ||
if: github.event.inputs.release_type != 'provided' | ||
run: | | ||
echo ${{ env.VERSION }} | grep -qoP "^\d+\.\d+\.\d+((\.|-).+)?$" || (echo "::error::Unexpected artifact version found in pom.xml: ${{ env.VERSION }}. Expected format: x.y.z*" && exit 1) | ||
- name: Increment patch version | ||
if: github.event.inputs.release_type == 'patch' | ||
run: | | ||
patch_version=$(echo ${{ env.VERSION }} | grep -oP "^\d+\.\d+\.\K\d+") | ||
echo "patch_version=$patch_version" | ||
incremented_patch_version=$((patch_version + 1)) | ||
echo "incremented_patch_version=$incremented_patch_version" | ||
echo "VERSION=$(echo ${{ env.VERSION }} | grep -oP '^\d+\.\d+\.')$incremented_patch_version" >> $GITHUB_ENV | ||
- name: Increment minor version | ||
if: github.event.inputs.release_type == 'minor' | ||
run: | | ||
minor_version=$(echo ${{ env.VERSION }} | grep -oP "^\d+\.\K\d+") | ||
echo "minor_version=$minor_version" | ||
incremented_minor_version=$((minor_version + 1)) | ||
echo "incremented_minor_version=$incremented_minor_version" | ||
echo "VERSION=$(echo ${{ env.VERSION }} | grep -oP '^\d+\.')$incremented_minor_version.0" >> $GITHUB_ENV | ||
- name: Increment major version | ||
if: github.event.inputs.release_type == 'major' | ||
run: | | ||
major_version=$(echo ${{ env.VERSION }} | grep -oP "^\d+") | ||
echo "major_version=$major_version" | ||
incremented_major_version=$((major_version + 1)) | ||
echo "incremented_major_version=$incremented_major_version" | ||
echo "VERSION=$incremented_major_version.0.0" >> $GITHUB_ENV | ||
- name: Print new version | ||
run: echo "new_version=${{ env.VERSION }}" | ||
- name: Update pom.xml version | ||
run: xmlstarlet ed -P -L -N pom=http://maven.apache.org/POM/4.0.0 -u "/pom:project/pom:version" -v ${{ env.VERSION }} pom.xml | ||
- name: Set Tag name | ||
run: echo "TAG=v${{ env.VERSION }}" >> $GITHUB_ENV | ||
- name: Commit & Push changes | ||
run: | | ||
git config user.email "[email protected]" | ||
git config user.name "github-actions" | ||
git add pom.xml | ||
git commit -m "${{ env.TAG }}" | ||
git push | ||
- name: Create Release | ||
id: create_release | ||
uses: actions/create-release@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
tag_name: ${{ env.TAG }} | ||
release_name: ${{ env.TAG }} | ||
draft: true | ||
check_input: | ||
runs-on: ubuntu-latest | ||
steps: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,4 +2,7 @@ | |
/target/ | ||
.idea | ||
app_data.properties | ||
*.log | ||
*.log | ||
*.db | ||
*.gz | ||
*.pid |
Oops, something went wrong.