Skip to content

Commit

Permalink
Update build config
Browse files Browse the repository at this point in the history
  • Loading branch information
ReneeVandervelde committed Jul 5, 2024
1 parent 52a5063 commit 54dfba6
Show file tree
Hide file tree
Showing 11 changed files with 525 additions and 489 deletions.
7 changes: 7 additions & 0 deletions .github/workflows/pushes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: Latest Build
on:
push:
branches: [master]
jobs:
tests:
uses: inkapplications/.github/.github/workflows/[email protected]
126 changes: 0 additions & 126 deletions .github/workflows/release.yml

This file was deleted.

41 changes: 0 additions & 41 deletions .github/workflows/snapshots.yml

This file was deleted.

115 changes: 115 additions & 0 deletions .github/workflows/tags.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
on:
push:
tags: ['*']
name: Release
jobs:
tests:
uses: inkapplications/.github/.github/workflows/[email protected]
sdk-publish:
name: Publish to Maven Central
needs: [tests]
secrets: inherit
uses: inkapplications/.github/.github/workflows/[email protected]
with:
version: ${{ github.ref_name }}
draft-release: false
android-publish:
name: Publish Android Artifacts
needs: [tests]
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/[email protected]
-
name: Configure Java
uses: actions/[email protected]
with:
java-version: 17
distribution: temurin
-
name: Keystore Setup
run: echo "${{secrets.ANDROID_KEYSTORE_64}}" | base64 --decode > glassconsole.keystore
-
env:
ORG_GRADLE_PROJECT_signingFile: glassconsole.keystore
ORG_GRADLE_PROJECT_signingKeyPassword: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }}
ORG_GRADLE_PROJECT_signingStorePassword: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }}
ORG_GRADLE_PROJECT_signingAlias: ${{ secrets.ANDROID_KEYSTORE_ALIAS }}
name: Build Android App
run: ./gradlew --no-daemon assembleRelease bundleRelease -Pcommit=${{ github.sha }} -PversionName=${{ github.ref_name }} -PversionCode=$((($GITHUB_RUN_NUMBER * 10) + $GITHUB_RUN_ATTEMPT))
-
name: Build Client Publication
run: ./gradlew --no-daemon client:build -Pversion=${GITHUB_TAG/refs\/tags\//}
-
name: Build Structures Publication
run: ./gradlew --no-daemon structures:build -Pversion=${GITHUB_TAG/refs\/tags\//}
-
name: Prepare Uploads
run: |
mkdir -p build
mkdir -p build/output
cp android/build/outputs/apk/release/android-release.apk build/output/GlassConsole-${{ github.ref_name }}.apk
cp android/build/outputs/bundle/release/android-release.aab build/output/GlassConsole-${{ github.ref_name }}.aab
-
name: Archive APK
uses: actions/[email protected]
with:
name: Android-APK
path: build/output/GlassConsole-${{ github.ref_name }}.apk
-
name: Archive Bundle
uses: actions/[email protected]
with:
name: Android-AAB
path: build/output/GlassConsole-${{ github.ref_name }}.aab
-
name: Play Service Account Setup
run: echo '${{secrets.PLAY_CONSOLE_SERVICE_JSON}}' > service_account.json
-
name: Deploy to Play Store
uses: r0adkll/[email protected]
with:
serviceAccountJson: service_account.json
packageName: com.inkapplications.glassconsole
releaseFile: build/output/GlassConsole-${{ github.ref_name }}.aab
track: internal
create-release:
name: Draft Github Release
needs: [android-publish]
runs-on: ubuntu-latest
steps:
-
name: Create Release
id: create_release
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref_name }}
draft: true
prerelease: false
-
name: Download Artifacts
uses: actions/download-artifact@v2
-
name: Upload AAB Release Asset
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: Android-AAB/GlassConsole-${{ github.ref_name }}.aab
asset_name: GlassConsole-${{ github.ref_name }}.aab
asset_content_type: application/octet-stream
-
name: Upload APK Release Asset
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: Android-APK/GlassConsole-${{ github.ref_name }}.apk
asset_name: GlassConsole-${{ github.ref_name }}.apk
asset_content_type: application/octet-stream
40 changes: 0 additions & 40 deletions buildSrc/src/main/kotlin/library.gradle.kts

This file was deleted.

28 changes: 28 additions & 0 deletions buildSrc/src/main/kotlin/multiplatform.tier1.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
plugins {
kotlin("multiplatform")
}

repositories {
mavenCentral()
}

kotlin {
applyDefaultHierarchyTemplate()
jvmToolchain(11)
jvm()
js(IR) {
nodejs()
browser {
testTask {
useKarma {
useFirefoxHeadless()
}
}
}
}
macosX64()
macosArm64()
iosSimulatorArm64()
iosX64()
}

22 changes: 22 additions & 0 deletions buildSrc/src/main/kotlin/multiplatform.tier2.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
plugins {
kotlin("multiplatform")
id("multiplatform.tier1")
}

repositories {
mavenCentral()
}

kotlin {
linuxX64()
linuxArm64()
watchosSimulatorArm64()
watchosX64()
watchosArm32()
watchosArm64()
tvosSimulatorArm64()
tvosX64()
tvosArm64()
iosArm64()
}

Loading

0 comments on commit 54dfba6

Please sign in to comment.