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
4 changes: 2 additions & 2 deletions .github/workflows/cross-platform-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: "Checkout Cross Platform Tests Repo"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
repository: mParticle/crossplatform-sdk-tests

- name: "Checkout Android SDK Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
repository: ${{github.event.pull_request.head.repo.full_name}}
ref: ${{github.head_ref}}
Expand Down
38 changes: 19 additions & 19 deletions .github/workflows/daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
GIT_COMMITTER_EMAIL: developers@mparticle.com
steps:
- name: "Clone branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
token: ${{ secrets.MP_SEMANTIC_RELEASE_BOT }}
repository: mparticle/mparticle-android-sdk
Expand All @@ -69,7 +69,7 @@ jobs:
# needs: create-regression-branch
# steps:
# - name: "Checkout future release branch"
# uses: actions/checkout@v6.0.2
# uses: actions/checkout@v6
# with:
# repository: mparticle/mparticle-android-sdk
# ref: regression/${{ github.run_number }}
Expand Down Expand Up @@ -102,7 +102,7 @@ jobs:
# needs: create-regression-branch
# steps:
# - name: "Checkout Branch"
# uses: actions/checkout@v6.0.2
# uses: actions/checkout@v6
# with:
# repository: mparticle/mparticle-android-sdk
# ref: regression/${{ github.run_number }}
Expand Down Expand Up @@ -192,7 +192,7 @@ jobs:
needs: create-regression-branch
steps:
- name: "Checkout future release branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
repository: mparticle/mparticle-android-sdk
ref: regression/${{ github.run_number }}
Expand Down Expand Up @@ -221,7 +221,7 @@ jobs:
needs: create-regression-branch
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
ref: regression/${{ github.run_number }}
- name: "Install JDK 17"
Expand All @@ -233,10 +233,10 @@ jobs:
- name: "Run Android Core SDK Lint"
run: ./gradlew lint
- name: "Setup Android Kit Lint"
run: ./gradlew publishReleaseLocal
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Run Android Kit Lint"
run: ./gradlew publishReleaseLocal -c settings-kits.gradle lint
- name: "Run Isolated Kit Lint (urbanairship)"
run: ./gradlew lint -c settings-kits.gradle
- name: "Run Isolated Kit Lint (urbanairship-kit)"
working-directory: kits/urbanairship/urbanairship-20
run: ./gradlew lint
- name: "Archive Test Results"
Expand All @@ -259,7 +259,7 @@ jobs:
needs: create-regression-branch
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
ref: regression/${{ github.run_number }}
- name: "Install JDK 17"
Expand All @@ -271,10 +271,10 @@ jobs:
- name: "Run Android Core SDK Kotlin Lint"
run: ./gradlew ktlintCheck
- name: "Setup Android Kit Kotlin Lint"
run: ./gradlew publishReleaseLocal
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Run Android Kit Kotlin Lint"
run: ./gradlew publishReleaseLocal -c settings-kits.gradle ktlintCheck
- name: "Run Isolated Kit Kotlin Lint (urbanairship)"
run: ./gradlew ktlintCheck -c settings-kits.gradle
- name: "Run Isolated Kit Kotlin Lint (urbanairship-kit)"
working-directory: kits/urbanairship/urbanairship-20
run: ./gradlew ktlintCheck
- name: "Archive Test Results"
Expand All @@ -301,7 +301,7 @@ jobs:
GIT_COMMITTER_EMAIL: developers@mparticle.com
steps:
- name: "Checkout future release branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
repository: mparticle/mparticle-android-sdk
ref: regression/${{ github.run_number }}
Expand All @@ -312,12 +312,12 @@ jobs:
java-version: "17"
cache: "gradle"
- name: "Build Android Core"
run: ./gradlew -PisRelease=true clean publishReleaseLocal
run: ./gradlew clean publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Test Kits"
run: ./gradlew -PisRelease=true clean testRelease publishReleaseLocal -c settings-kits.gradle
- name: "Test Isolated Kits (urbanairship)"
run: ./gradlew clean testRelease -c settings-kits.gradle
- name: "Test Isolated Kits (urbanairship-kit)"
working-directory: kits/urbanairship/urbanairship-20
run: ./gradlew -PisRelease=true clean testRelease publishReleaseLocal
run: ./gradlew clean testRelease

semantic-release-dryrun:
name: "Test Semantic Release - Dry Run"
Expand All @@ -331,7 +331,7 @@ jobs:
GIT_COMMITTER_EMAIL: developers@mparticle.com
steps:
- name: "Checkout public main branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
fetch-depth: 0
ref: main
Expand Down Expand Up @@ -362,7 +362,7 @@ jobs:
GIT_COMMITTER_EMAIL: developers@mparticle.com
steps:
- name: "Checkout repo"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
with:
token: ${{ secrets.MP_SEMANTIC_RELEASE_BOT }}
fetch-depth: 0
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
- name: "Install JDK 17"
uses: actions/setup-java@v5
with:
Expand All @@ -95,11 +95,11 @@ jobs:

lint-checks:
name: "Lint Checks"
timeout-minutes: 15
timeout-minutes: 20
runs-on: macos-latest
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
- name: "Install JDK 17"
uses: actions/setup-java@v5
with:
Expand All @@ -108,7 +108,7 @@ jobs:
- name: "Run Android Core SDK Lint"
run: ./gradlew lint
- name: "Setup Android Kit Lint"
run: ./gradlew publishReleaseLocal
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Run Android Kit Lint"
run: ./gradlew -c settings-kits.gradle lint
- name: "Archive Lint Test Results"
Expand All @@ -124,7 +124,7 @@ jobs:
runs-on: macos-latest
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
- name: "Install JDK 17"
uses: actions/setup-java@v5
with:
Expand All @@ -133,7 +133,7 @@ jobs:
- name: "Run Android Core SDK Kotlin Lint"
run: ./gradlew ktlintCheck
- name: "Setup Android Kit Kotlin Lint"
run: ./gradlew publishReleaseLocal
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Run Android Kit Kotlin Lint"
run: ./gradlew -c settings-kits.gradle ktlintCheck
- name: "Archive Kotlin Lint Test Results"
Expand All @@ -155,18 +155,18 @@ jobs:
if: github.event_name == 'pull_request'
steps:
- name: "Checkout Branch"
uses: actions/checkout@v6.0.2
uses: actions/checkout@v6
- name: "Install JDK 17"
uses: actions/setup-java@v5
with:
distribution: "zulu"
java-version: "17"
- name: "Generate Core Release Build"
run: ./gradlew -PisRelease=true publishLocal
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=$(head -n 1 VERSION)
- name: "Run Kit-Base Release Tests and Build"
run: ./gradlew -PisRelease=true :android-kit-base:testRelease
run: ./gradlew :android-kit-base:testRelease -PVERSION=$(head -n 1 VERSION)
- name: "Run Kit Release Tests and Build"
run: ./gradlew -PisRelease=true -p kits testRelease -c ../settings-kits.gradle
run: ./gradlew -p kits testRelease -c ../settings-kits.gradle -PVERSION=$(head -n 1 VERSION)
- name: "Run Isolated Kit Compatibility Tests (urbanairship)"
working-directory: kits/urbanairship/urbanairship-20
run: ./gradlew -PisRelease=true testRelease
Expand Down
76 changes: 76 additions & 0 deletions .github/workflows/release-draft.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: Release – Draft

on:
workflow_dispatch: # checkov:skip=CKV_GHA_7
inputs:
bump-type:
description: "Specify if the version should be bumped as patch, minor, or major"
required: true
type: choice
options:
- patch
- minor
- major

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
contents: write
pull-requests: write

jobs:
publish-draft-release:
runs-on: ubuntu-latest
env:
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.MAVEN_CENTRAL_SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.MAVEN_CENTRAL_SIGNING_KEY_PASSWORD }}
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Install JDK 17
uses: actions/setup-java@v5
with:
distribution: "zulu"
java-version: "17"

- name: Setup Gradle
uses: gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2

- name: Get current version
id: version-file
run: |
version_from_file=$(head -n 1 VERSION)
echo "release-version=$version_from_file" >> $GITHUB_OUTPUT

- name: Bump version
id: bump-version
uses: actions-ecosystem/action-bump-semver@34e334551143a5301f38c830e44a22273c6ff5c5 # v1.0.0
with:
current_version: ${{ steps.version-file.outputs.release-version }}
level: ${{ github.event.inputs.bump-type || 'patch' }}

- name: Save bumped version to file
run: |
echo "${{ steps.bump-version.outputs.new_version }}" > VERSION

- name: Publish to Maven local (smoke test)
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=${{ steps.bump-version.outputs.new_version }}

- name: Create Pull Request
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
with:
token: ${{ secrets.MP_SEMANTIC_RELEASE_BOT }}
commit-message: "chore: prepare release ${{ steps.bump-version.outputs.new_version }}"
branch: release/${{ steps.bump-version.outputs.new_version }}
title: "Prepare release ${{ steps.bump-version.outputs.new_version }}"
base: main
body: |
Preparing for release ${{ steps.bump-version.outputs.new_version }}
- Bumped version to ${{ steps.bump-version.outputs.new_version }}
64 changes: 64 additions & 0 deletions .github/workflows/release-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Release – Publish

on:
push:
branches:
- main
paths:
- VERSION

permissions:
contents: write

jobs:
setup-and-version:
runs-on: ubuntu-latest
outputs:
final_version: ${{ steps.version-file.outputs.release-version }}
steps:
- name: Checkout repository
uses: actions/checkout@v6

- name: Get current version
id: version-file
run: |
version_from_file=$(head -n 1 VERSION)
echo "release-version=$version_from_file" >> $GITHUB_OUTPUT

build-and-release:
needs: setup-and-version
runs-on: ubuntu-latest
env:
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.MAVEN_CENTRAL_SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.MAVEN_CENTRAL_SIGNING_KEY_PASSWORD }}
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
steps:
- name: Checkout repository
uses: actions/checkout@v6

- name: Install JDK 17
uses: actions/setup-java@v5
with:
distribution: "zulu"
java-version: "17"

- name: Setup Gradle
uses: gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2

- name: Publish core to Maven local (required before kits can compile)
run: ./gradlew publishMavenPublicationToMavenLocal -PVERSION=${{ needs.setup-and-version.outputs.final_version }}

- name: Publish core to Maven Central
run: ./gradlew publishMavenPublicationToMavenCentralRepository -PVERSION=${{ needs.setup-and-version.outputs.final_version }}

- name: Publish kits to Maven Central
run: ./gradlew publishMavenPublicationToMavenCentralRepository -PVERSION=${{ needs.setup-and-version.outputs.final_version }} -c settings-kits.gradle

- name: Create GitHub release
uses: ncipollo/release-action@b7eabc95ff50cbeeedec83973935c8f306dfcd0b # v1.20.0
with:
makeLatest: true
tag: ${{ needs.setup-and-version.outputs.final_version }}
body: |
Release ${{ needs.setup-and-version.outputs.final_version }}
Loading
Loading