Skip to content

Commit

Permalink
ci: Add workflow to automate the rebase and tag
Browse files Browse the repository at this point in the history
  • Loading branch information
kumy authored and actions-user committed Jun 11, 2024
1 parent a0d9b29 commit 6f97421
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 2 deletions.
22 changes: 20 additions & 2 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ on:
- '*'
tags:
- '*'
workflow_dispatch:
inputs:
ref:
type: string
description: "The tag to use"

jobs:
build:
Expand All @@ -14,7 +19,9 @@ jobs:
steps:

- name: checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
ref: ${{ inputs.ref || github.ref }}

- name: setup jdk
uses: actions/setup-java@v2
Expand Down Expand Up @@ -43,10 +50,16 @@ jobs:
release:
name: Sign/Release APK
needs: build
if: startsWith(github.ref, 'refs/tags/v')
if: startsWith(inputs.ref || github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
steps:

- name: checkout code
uses: actions/checkout@v4
with:
ref: ${{ inputs.ref || github.ref }}
fetch-depth: 0

- name: Download APK from build
uses: actions/download-artifact@v3
with:
Expand All @@ -70,9 +83,14 @@ jobs:
env:
BUILD_TOOLS_VERSION: "32.0.0"

- name: 'Get Previous tag'
id: previoustag
uses: "WyriHaximus/github-action-get-previous-tag@v1"

- name: Upload Release APK
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.previoustag.outputs.tag }}
files: |
Olvid.apk
Olvid-nogoogle.apk
Expand Down
70 changes: 70 additions & 0 deletions .github/workflows/rebase.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Rebase and tag

on:
workflow_dispatch:
# inputs:
# sync_test_mode: # Adds a boolean option that appears during manual workflow run for easy test mode config
# description: 'Test Mode'
# type: boolean
# default: false

jobs:
sync_latest_from_upstream:
name: Sync latest commits from upstream repo and tag
runs-on: ubuntu-latest
permissions:
contents: write
steps:

- name: checkout code
uses: actions/checkout@v4
with:
ref: build-apk
fetch-depth: 0

- name: Sync upstream changes
id: sync
uses: aormsby/[email protected]
with:
target_sync_branch: build-apk
# REQUIRED 'target_repo_token' exactly like this!
target_repo_token: ${{ secrets.GITHUB_TOKEN }}
target_branch_push_args: '--force'
upstream_sync_branch: main
upstream_sync_repo: olvid-io/olvid-android
upstream_pull_args: '--rebase --tags'

# Set test_mode true during manual dispatch to run tests instead of the true action!!
test_mode: ${{ inputs.sync_test_mode }}

- name: New commits found
if: steps.sync.outputs.has_new_commits == 'true'
run: echo "New commits were found to sync."

- name: No new commits
if: steps.sync.outputs.has_new_commits == 'false'
run: echo "There were no new commits."

- name: Show value of 'has_new_commits'
run: echo ${{ steps.sync.outputs.has_new_commits }}

- name: 'Get Previous tag'
if: steps.sync.outputs.has_new_commits == 'true'
id: previoustag
uses: "WyriHaximus/github-action-get-previous-tag@v1"

- name: Bump version and push tag
if: steps.sync.outputs.has_new_commits == 'true'
uses: EndBug/latest-tag@latest
with:
github_token: ${{ secrets.GH_TOKEN }}
ref: "${{ steps.previoustag.outputs.tag }}-kumy1"

- name: Trigger build
if: steps.sync.outputs.has_new_commits == 'true'
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
run: |
gh workflow run android.yml \
-R kumy/olvid-android \
-F "ref=refs/tags/${{ steps.previoustag.outputs.tag }}-kumy1"

0 comments on commit 6f97421

Please sign in to comment.