Huly Code Release #88
This file contains hidden or 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
name: Huly Code Release | |
on: | |
workflow_dispatch: | |
env: | |
artifacts_dir: 'out/huly-code/artifacts' | |
android_commit: 'ff218016a18ba47053032d874cfa77e7bc5d7e16' | |
jobs: | |
# a single job for all OSes cannot be used due to free disk space lack on runners | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
submodules: recursive | |
- uses: ./.github/actions/build_ide | |
with: | |
os: linux | |
arch: x64 | |
extension: tar.gz | |
- uses: ./.github/actions/upload_ide | |
with: | |
os: linux | |
extension: tar.gz | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
build-windows: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
submodules: recursive | |
- uses: ./.github/actions/build_ide | |
with: | |
os: windows | |
arch: x64 | |
extension: exe | |
- uses: ./.github/actions/upload_ide | |
with: | |
os: windows | |
extension: exe | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
- uses: ./.github/actions/upload_ide | |
with: | |
os: windows | |
extension: win.zip | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
build-macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
submodules: recursive | |
- name: Checkout JetBrains/android | |
uses: actions/[email protected] | |
with: | |
repository: JetBrains/android | |
path: android | |
ref: ${{env.android_commit}} | |
- name: Update submodule | |
shell: bash | |
# language=bash | |
run: git submodule update --init --remote --recursive | |
- name: Import certificates | |
uses: apple-actions/import-codesign-certs@v3 | |
with: | |
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }} | |
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }} | |
- name: Build macos aarch64 artifacts | |
env: | |
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }} | |
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }} | |
APPLE_PRIVATE_KEY: ${{ secrets.APPLE_PRIVATE_KEY }} | |
shell: bash | |
# language=bash | |
run: | | |
chmod +x ./installers-huly.cmd | |
./installers-huly.cmd -Dintellij.build.target.os=mac -Dintellij.build.target.arch=aarch64 -Dintellij.build.dev.mode=false -Dbuild.number=251.${{github.run_number}} | |
- name: Upload aarch64.dmg | |
uses: ./.github/actions/upload_ide | |
with: | |
os: mac | |
extension: aarch64.dmg | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
- name: Upload aarch64.sit | |
uses: ./.github/actions/upload_ide | |
with: | |
os: mac | |
extension: aarch64.sit | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
- name: Build macos x64 artifacts | |
env: | |
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }} | |
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }} | |
APPLE_PRIVATE_KEY: ${{ secrets.APPLE_PRIVATE_KEY }} | |
shell: bash | |
# language=bash | |
run: | | |
chmod +x ./installers-huly.cmd | |
./installers-huly.cmd -Dintellij.build.target.os=mac -Dintellij.build.target.arch=x64 -Dintellij.build.dev.mode=false -Dbuild.number=251.${{github.run_number}} | |
- name: Upload x64.dmg | |
uses: ./.github/actions/upload_ide | |
with: | |
os: mac | |
extension: dmg | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
- name: Upload x64.sit | |
uses: ./.github/actions/upload_ide | |
with: | |
os: mac | |
extension: sit | |
artifacts_dir: ${{env.artifacts_dir}} | |
name-prefix: artifact- | |
publish: | |
needs: [build-linux, build-windows, build-macos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download All Artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
path: publish | |
pattern: artifact-* | |
merge-multiple: true | |
- run: ls -R publish | |
- name: Publish artifacts to R2 | |
uses: ryand56/r2-upload-action@latest | |
with: | |
r2-account-id: ${{ secrets.R2_ACCOUNT_ID }} | |
r2-access-key-id: ${{ secrets.R2_ACCESS_KEY_ID }} | |
r2-secret-access-key: ${{ secrets.R2_SECRET_ACCESS_KEY }} | |
r2-bucket: desktop-distro | |
source-dir: ./publish/ | |
destination-dir: ./code/ | |
create-update: | |
needs: publish | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: | |
repository: hcengineering/huly-code-updater | |
- run: chmod +x ./gradlew && ./gradlew run --args='${{github.run_number}}' | |
- name: Publish artifacts to R2 | |
uses: ryand56/r2-upload-action@latest | |
with: | |
r2-account-id: ${{ secrets.R2_ACCOUNT_ID }} | |
r2-access-key-id: ${{ secrets.R2_ACCESS_KEY_ID }} | |
r2-secret-access-key: ${{ secrets.R2_SECRET_ACCESS_KEY }} | |
r2-bucket: desktop-distro | |
source-dir: ./build/update/ | |
destination-dir: ./code/update/ |