Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update versions and workflows #35

Merged
merged 2 commits into from
Sep 6, 2024
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
2 changes: 1 addition & 1 deletion .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Setup Gluon's GraalVM
uses: gluonhq/setup-graalvm@master
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
build:
runs-on: macos-14
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Setup Gluon's GraalVM
uses: gluonhq/setup-graalvm@master
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Setup Gluon's GraalVM
uses: gluonhq/setup-graalvm@master
Expand Down
97 changes: 97 additions & 0 deletions .github/workflows/macos-aarch64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: macOS AArch64

on:
push:
branches: [ master ]

jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4

- name: Setup Gluon's GraalVM
uses: gluonhq/setup-graalvm@master
env:
arch: 'aarch64'
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Developer ID Application certificate
uses: Apple-Actions/import-codesign-certs@v1
with:
keychain: ${{ github.run_id }}
keychain-password: ${{ github.run_id }}
p12-file-base64: ${{ secrets.GLUON_MACOS_CERTIFICATES_FILE_BASE64 }}
p12-password: ${{ secrets.GLUON_MACOS_CERTIFICATES_PASSWORD }}

- name: Make staging directory
run: mkdir staging

- name: Gluon License
uses: gluonhq/gluon-build-license@v1
with:
gluon-license: ${{ secrets.GLUON_LICENSE }}

- name: Gluon Build and Package
id: outputfile
run: |
./mvnw -Pdesktop,mac gluonfx:build gluonfx:package
echo ::set-output name=path::target/gluonfx/aarch64-darwin/HelloGluon-1.0.0.pkg

- name: Notarize Installer
uses: erwin1/xcode-notarizer@v1
with:
product-path: ${{ steps.outputfile.outputs.path }}
apple-id: ${{ secrets.NOTARIZATION_USERNAME }}
app-password: ${{ secrets.NOTARIZATION_PASSWORD }}
team-id: ${{ secrets.GLUON_MACSIGN_PREFIX }}

- name: Upload (pkg)
uses: actions/upload-artifact@v2
with:
name: Package
path: ${{ steps.outputfile.outputs.path }}

- name: Provisioning Profile
id: provisioning
uses: Apple-Actions/[email protected]
with:
bundle-id: com.gluonhq.hello.HelloGluonApp
profile-type: 'MAC_APP_STORE'
issuer-id: ${{ secrets.GLUON_IOS_APPSTORE_ISSUER_ID }}
api-key-id: ${{ secrets.GLUON_IOS_APPSTORE_KEY_ID }}
api-private-key: ${{ secrets.GLUON_IOS_APPSTORE_PRIVATE_KEY }}

- name: Rename profiles
run: |
find /Users/runner/Library/MobileDevice -name '*.mobileprovision' -exec sh -c 'mv "$0" "${0%.mobileprovision}.provisionprofile"' {} \;

- name: 3rd Party Mac certificate
uses: Apple-Actions/import-codesign-certs@v1
with:
keychain: ${{ github.run_id }}
keychain-password: ${{ github.run_id }}
create-keychain: false
p12-file-base64: ${{ secrets.GLUON_MACOS_STORE_CERTIFICATES_FILE_BASE64 }}
p12-password: ${{ secrets.GLUON_MACOS_STORE_CERTIFICATES_PASSWORD }}

- name: Gluon Package Store
id: outputfilestore
run: |
./mvnw -Pdesktop,macstore gluonfx:package
echo ::set-output name=path::target/gluonfx/aarch64-darwin/HelloGluon-1.0.0.pkg

- name: Upload (pkg store)
uses: actions/upload-artifact@v2
with:
name: PackageAppStore
path: ${{ steps.outputfilestore.outputs.path }}

- name: Upload App Store TestFlight
uses: Apple-Actions/upload-testflight-build@master
with:
app-path: ${{ steps.outputfilestore.outputs.path }}
app-type: osx
issuer-id: ${{ secrets.GLUON_IOS_APPSTORE_ISSUER_ID }}
api-key-id: ${{ secrets.GLUON_IOS_APPSTORE_KEY_ID }}
api-private-key: ${{ secrets.GLUON_IOS_APPSTORE_PRIVATE_KEY }}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: macOS
name: macOS x86_64

on:
push:
Expand All @@ -8,7 +8,7 @@ jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Setup Gluon's GraalVM
uses: gluonhq/setup-graalvm@master
Expand Down Expand Up @@ -81,12 +81,14 @@ jobs:
echo ::set-output name=path::target/gluonfx/x86_64-darwin/HelloGluon-1.0.0.pkg

- name: Upload (pkg store)
if: false # only upload aarch64 version
uses: actions/upload-artifact@v2
with:
name: PackageAppStore
path: ${{ steps.outputfilestore.outputs.path }}

- name: Upload App Store TestFlight
if: false # only upload aarch64 version
uses: Apple-Actions/upload-testflight-build@master
with:
app-path: ${{ steps.outputfilestore.outputs.path }}
Expand Down
6 changes: 3 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.release>11</maven.compiler.release>
<javafx.version>22.0.2</javafx.version>
<maven.compiler.release>21</maven.compiler.release>
<javafx.version>24-ea+5</javafx.version>
<charm.version>6.2.3</charm.version>
<attach.version>4.0.21</attach.version>
<connect.version>2.0.1</connect.version>
<javafx.maven.plugin.version>0.0.8</javafx.maven.plugin.version>
<gluonfx.maven.plugin.version>1.0.23</gluonfx.maven.plugin.version>
<gluonfx.maven.plugin.version>1.0.24-SNAPSHOT</gluonfx.maven.plugin.version>
<main.class>com.gluonhq.hello.HelloGluonApp</main.class>
<app.identifier>${main.class}</app.identifier>
<app.description>The HelloGluon app</app.description>
Expand Down