From c412e07153236e4dac0dd335db7dbe5d5d82f727 Mon Sep 17 00:00:00 2001 From: ParticleG Date: Mon, 8 Nov 2021 02:48:38 +0800 Subject: [PATCH] - Add Upload Action --- .github/actions/upload-artifact/action.yml | 47 +++ .github/workflows/dev.yml | 45 ++- .github/workflows/release.yml | 360 +++++++++++---------- .github/workflows/test.yml | 62 +++- 4 files changed, 331 insertions(+), 183 deletions(-) create mode 100644 .github/actions/upload-artifact/action.yml diff --git a/.github/actions/upload-artifact/action.yml b/.github/actions/upload-artifact/action.yml new file mode 100644 index 00000000..277ce58d --- /dev/null +++ b/.github/actions/upload-artifact/action.yml @@ -0,0 +1,47 @@ +name: "upload artifact" +description: "upload file with webdav" +inputs: + WEBDAV_USERNAME: + required: true + description: "webdav username" + WEBDAV_PASSWORD: + required: true + description: "webdav password" + ARTIFACT_TYPE: + required: true + description: "file build type" + ARTIFACT_PLATFORM: + required: true + description: "file platform" + ARTIFACT_NAME: + required: true + description: "file name" +runs: + using: "composite" + steps: + - name: Install Webdav 4 + shell: bash + run: | + pip install webdav4 + - name: Update release + shell: python + run: | + import re + from webdav4.client import Client + + client = Client( + "http://mc.yuhao7370.top:5212/dav", + auth=("${{ inputs.WEBDAV_USERNAME }}", "${{ inputs.WEBDAV_PASSWORD }}") + ) + if '${{ inputs.ARTIFACT_TYPE }}' == 'release': + for file in client.ls('Techmino distribution'): + if re.search(r'(Techmino_a[0-9]+\.[0-9]+\.[0-9]_${{ inputs.ARTIFACT_PLATFORM }}.*)', file['name']): + client.remove(file['name']) + client.upload_file("${{ inputs.ARTIFACT_NAME }}", 'Techmino distribution/${{ inputs.ARTIFACT_NAME }}') + + if '${{ inputs.ARTIFACT_TYPE }}' == 'test': + for file in client.ls('Techmino Snapshot'): + if re.search(r'(Techmino_pre[0-9]+\.[0-9]+\.[0-9]_[0-9a-z]{7}_${{ inputs.ARTIFACT_PLATFORM }}.*)', file['name']): + client.remove(file['name']) + client.upload_file("${{ inputs.ARTIFACT_NAME }}", 'Techmino Snapshot/${{ inputs.ARTIFACT_NAME }}') + diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml index 4fa0940d..dee4e5d0 100644 --- a/.github/workflows/dev.yml +++ b/.github/workflows/dev.yml @@ -97,6 +97,34 @@ jobs: with: name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_Android path: Techmino_Snapshot.apk + + build-android-mini: + runs-on: ubuntu-20.04 + needs: get-info + steps: + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + with: + commit: ${{ needs.get-info.outputs.commit }} + type: snapshot + - name: remove media + run: | + rm -rf media/music media/effect media/vocal + - uses: ./.github/actions/build-android + with: + type: Snapshot + apkCode: ${{ needs.get-info.outputs.apkCode }} + name: ${{ needs.get-info.outputs.name }} + file-path: Techmino_Snapshot_Mini.apk + SIGNING_KEY: ${{ secrets.SIGNING_KEY }} + KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} + ALIAS: ${{ secrets.ALIAS }} + KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} + - name: Upload + uses: actions/upload-artifact@v2 + with: + name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_Android_Mini + path: Techmino_Snapshot_Mini.apk build-macOS: runs-on: macos-10.15 @@ -157,4 +185,19 @@ jobs: uses: actions/upload-artifact@v2 with: name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_iOS - path: "Techmino.ipa" + path: Techmino.ipa + + build-love: + runs-on: ubuntu-20.04 + needs: get-info + steps: + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-love + with: + file-path: Techmino.love + - name: Upload + uses: actions/upload-artifact@v2 + with: + name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_Love + path: Techmino.love diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1650bd40..59a72ac0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,7 +3,7 @@ name: Techmino Release CI on: push: tags: - - 'v*' + - "v*" jobs: get-info: @@ -17,213 +17,221 @@ jobs: updateNote: ${{ steps.actual-get-info.outputs.updateNote }} commit: ${{ steps.actual-get-info.outputs.commit }} steps: - - uses: actions/checkout@v2 - - name: Install lua - run: | - sudo apt-get install lua5.3 -y - - name: Get Version - id: actual-get-info - run: | - UPDATE_NOTE=$(lua .github/workflows/getVersion.lua -updateNote) - UPDATE_NOTE="${UPDATE_NOTE//'%'/'%25'}" - UPDATE_NOTE="${UPDATE_NOTE//$'\n'/'%0A'}" - UPDATE_NOTE="${UPDATE_NOTE//$'\r'/'%0D'}" - echo "::set-output name=name::$(lua .github/workflows/getVersion.lua -name)" - echo "::set-output name=apkCode::$(lua .github/workflows/getVersion.lua -apkCode)" - echo "::set-output name=code::$(lua .github/workflows/getVersion.lua -code)" - echo "::set-output name=release::$(lua .github/workflows/getVersion.lua -release)" - echo "::set-output name=updateTitle::$(lua .github/workflows/getVersion.lua -updateTitle)" - echo "::set-output name=updateNote::$UPDATE_NOTE" - echo "::set-output name=commit::$(git rev-parse --short ${{ GITHUB.SHA }})" + - uses: actions/checkout@v2 + - name: Install lua + run: | + sudo apt-get install lua5.3 -y + - name: Get Version + id: actual-get-info + run: | + UPDATE_NOTE=$(lua .github/workflows/getVersion.lua -updateNote) + UPDATE_NOTE="${UPDATE_NOTE//'%'/'%25'}" + UPDATE_NOTE="${UPDATE_NOTE//$'\n'/'%0A'}" + UPDATE_NOTE="${UPDATE_NOTE//$'\r'/'%0D'}" + echo "::set-output name=name::$(lua .github/workflows/getVersion.lua -name)" + echo "::set-output name=apkCode::$(lua .github/workflows/getVersion.lua -apkCode)" + echo "::set-output name=code::$(lua .github/workflows/getVersion.lua -code)" + echo "::set-output name=release::$(lua .github/workflows/getVersion.lua -release)" + echo "::set-output name=updateTitle::$(lua .github/workflows/getVersion.lua -updateTitle)" + echo "::set-output name=updateNote::$UPDATE_NOTE" + echo "::set-output name=commit::$(git rev-parse --short ${{ GITHUB.SHA }})" build-windows-x64: runs-on: windows-latest needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-windows - with: - love-url: https://github.com/love2d/love/releases/download/11.3/love-11.3-win64.zip - love-dir: love-11.3-win64 - arch: win64 - version: ${{ needs.get-info.outputs.release }} - icon: .\.github\build\Windows\icon.ico - - name: Pack Techmino - run: 7z a -tzip .\Techmino.a${{ needs.get-info.outputs.release }}.Win64.zip .\love - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.Win64.zip + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-windows + with: + love-url: https://github.com/love2d/love/releases/download/11.3/love-11.3-win64.zip + love-dir: love-11.3-win64 + arch: win64 + version: ${{ needs.get-info.outputs.release }} + icon: .\.github\build\Windows\icon.ico + - name: Pack Techmino + run: 7z a -tzip .\Techmino_a${{ needs.get-info.outputs.release }}_Win64.zip .\love + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_Win64.zip + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: Win64 + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_Win64.zip build-windows-x86: runs-on: windows-latest needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-windows - with: - love-url: https://github.com/love2d/love/releases/download/11.3/love-11.3-win32.zip - love-dir: love-11.3-win32 - arch: win32 - version: ${{ needs.get-info.outputs.release }} - icon: .\.github\build\Windows\icon.ico - - name: Pack Techmino - run: 7z a -tzip .\Techmino.a${{ needs.get-info.outputs.release }}.Win32.zip .\love - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.Win32.zip + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-windows + with: + love-url: https://github.com/love2d/love/releases/download/11.3/love-11.3-win32.zip + love-dir: love-11.3-win32 + arch: win32 + version: ${{ needs.get-info.outputs.release }} + icon: .\.github\build\Windows\icon.ico + - name: Pack Techmino + run: 7z a -tzip .\Techmino_a${{ needs.get-info.outputs.release }}_Win32.zip .\love + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_Win32.zip + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: Win32 + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_Win32.zip build-linux: runs-on: ubuntu-20.04 needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-linux - with: - file-path: Techmino.a${{ needs.get-info.outputs.release }}.AppImage - icon: .github/build/Linux/icon.png - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.AppImage + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-linux + with: + file-path: Techmino_a${{ needs.get-info.outputs.release }}_Linux.AppImage + icon: .github/build/Linux/icon.png + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_Linux.AppImage + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: Linux + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_Linux.AppImage build-android: runs-on: ubuntu-20.04 needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-android - with: - type: Release - apkCode: ${{ needs.get-info.outputs.apkCode }} - name: ${{ needs.get-info.outputs.name }} - file-path: Techmino.a${{ needs.get-info.outputs.release }}.apk - SIGNING_KEY: ${{ secrets.SIGNING_KEY }} - KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} - ALIAS: ${{ secrets.ALIAS }} - KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.apk - - build-android-mini: - runs-on: ubuntu-20.04 - needs: get-info - steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - name: remove media - run: | - rm -rf media/music media/effect media/vocal - - uses: ./.github/actions/build-android - with: - type: Release - apkCode: ${{ needs.get-info.outputs.apkCode }} - name: ${{ needs.get-info.outputs.name }} - file-path: Techmino.a${{ needs.get-info.outputs.release }}.mini.apk - SIGNING_KEY: ${{ secrets.SIGNING_KEY }} - KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} - ALIAS: ${{ secrets.ALIAS }} - KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.mini.apk + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-android + with: + type: Release + apkCode: ${{ needs.get-info.outputs.apkCode }} + name: ${{ needs.get-info.outputs.name }} + file-path: Techmino_a${{ needs.get-info.outputs.release }}_Android.apk + SIGNING_KEY: ${{ secrets.SIGNING_KEY }} + KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }} + ALIAS: ${{ secrets.ALIAS }} + KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_Android.apk + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: Android + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_Android.apk build-macOS: runs-on: macos-10.15 needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-macos - with: - name: ${{ needs.get-info.outputs.name }} - icon: .github/build/macOS/icon.icns - APPLE_API_ID: '${{ secrets.APPLE_API_ID }}' - APPLE_API_ISSUER: '${{ secrets.APPLE_API_ISSUER }}' - APPLE_API_KEY: '${{ secrets.APPLE_API_KEY }}' - APPLE_APP_IDENTIFIER: '${{ secrets.APPLE_APP_IDENTIFIER }}' - APPLE_KEYCHAIN_NAME: '${{ secrets.APPLE_KEYCHAIN_NAME }}' - APPLE_KEYCHAIN_PWD: '${{ secrets.APPLE_KEYCHAIN_PWD }}' - FASTLANE_MATCH_PWD: '${{ secrets.FASTLANE_MATCH_PWD }}' - FASTLANE_MATCH_TOKEN: '${{ secrets.FASTLANE_MATCH_TOKEN }}' - - name: Pack Techmino - run: | - mv Techmino.dmg Techmino.a${{ needs.get-info.outputs.release }}.macOS.dmg - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.macOS.dmg + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-macos + with: + name: ${{ needs.get-info.outputs.name }} + icon: .github/build/macOS/icon.icns + APPLE_API_ID: "${{ secrets.APPLE_API_ID }}" + APPLE_API_ISSUER: "${{ secrets.APPLE_API_ISSUER }}" + APPLE_API_KEY: "${{ secrets.APPLE_API_KEY }}" + APPLE_APP_IDENTIFIER: "${{ secrets.APPLE_APP_IDENTIFIER }}" + APPLE_KEYCHAIN_NAME: "${{ secrets.APPLE_KEYCHAIN_NAME }}" + APPLE_KEYCHAIN_PWD: "${{ secrets.APPLE_KEYCHAIN_PWD }}" + FASTLANE_MATCH_PWD: "${{ secrets.FASTLANE_MATCH_PWD }}" + FASTLANE_MATCH_TOKEN: "${{ secrets.FASTLANE_MATCH_TOKEN }}" + - name: Pack Techmino + run: | + mv Techmino.dmg Techmino_a${{ needs.get-info.outputs.release }}_MacOS.dmg + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_MacOS.dmg + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: MacOS + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_MacOS.dmg build-iOS: runs-on: macos-latest needs: get-info steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-ios - with: - name: ${{ needs.get-info.outputs.name }} - type: 'release' - APPLE_API_ID: '${{ secrets.APPLE_API_ID }}' - APPLE_API_ISSUER: '${{ secrets.APPLE_API_ISSUER }}' - APPLE_API_KEY: '${{ secrets.APPLE_API_KEY }}' - APPLE_APP_BUILD: '${{ needs.get-info.outputs.code }}.0.${{ github.run_number }}.${{ github.run_attempt }}' - APPLE_APP_CHANGELOG: '${{ needs.get-info.outputs.updateNote }}' - APPLE_APP_ID: '${{ secrets.APPLE_APP_ID }}' - APPLE_APP_IDENTIFIER: '${{ secrets.APPLE_APP_IDENTIFIER }}' - APPLE_APP_PROFILE: '${{ secrets.APPLE_APP_PROFILE }}' - APPLE_KEYCHAIN_NAME: '${{ secrets.APPLE_KEYCHAIN_NAME }}' - APPLE_KEYCHAIN_PWD: '${{ secrets.APPLE_KEYCHAIN_PWD }}' - FASTLANE_ACTION_ID: '${{ github.run_id }}' - FASTLANE_DISCORD_WEBHOOK: '${{ secrets.FASTLANE_DISCORD_WEBHOOK }}' - FASTLANE_MATCH_PWD: '${{ secrets.FASTLANE_MATCH_PWD }}' - FASTLANE_MATCH_TOKEN: '${{ secrets.FASTLANE_MATCH_TOKEN }}' - - name: Rename ipa - shell: bash - run: | - mv Techmino.ipa Techmino.a${{ needs.get-info.outputs.release }}.ipa - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.ipa - - build-love: - runs-on: ubuntu-20.04 - needs: get-info - steps: - - uses: actions/checkout@v2 - - uses: ./.github/actions/update-version - - uses: ./.github/actions/build-love - with: - file-path: Techmino.a${{ needs.get-info.outputs.release }}.love - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - files: Techmino.a${{ needs.get-info.outputs.release }}.love + - uses: actions/checkout@v2 + - uses: ./.github/actions/update-version + - uses: ./.github/actions/build-ios + with: + name: ${{ needs.get-info.outputs.name }} + type: "release" + APPLE_API_ID: "${{ secrets.APPLE_API_ID }}" + APPLE_API_ISSUER: "${{ secrets.APPLE_API_ISSUER }}" + APPLE_API_KEY: "${{ secrets.APPLE_API_KEY }}" + APPLE_APP_BUILD: "${{ needs.get-info.outputs.code }}.0.${{ github.run_number }}.${{ github.run_attempt }}" + APPLE_APP_CHANGELOG: "${{ needs.get-info.outputs.updateNote }}" + APPLE_APP_ID: "${{ secrets.APPLE_APP_ID }}" + APPLE_APP_IDENTIFIER: "${{ secrets.APPLE_APP_IDENTIFIER }}" + APPLE_APP_PROFILE: "${{ secrets.APPLE_APP_PROFILE }}" + APPLE_KEYCHAIN_NAME: "${{ secrets.APPLE_KEYCHAIN_NAME }}" + APPLE_KEYCHAIN_PWD: "${{ secrets.APPLE_KEYCHAIN_PWD }}" + FASTLANE_ACTION_ID: "${{ github.run_id }}" + FASTLANE_DISCORD_WEBHOOK: "${{ secrets.FASTLANE_DISCORD_WEBHOOK }}" + FASTLANE_MATCH_PWD: "${{ secrets.FASTLANE_MATCH_PWD }}" + FASTLANE_MATCH_TOKEN: "${{ secrets.FASTLANE_MATCH_TOKEN }}" + - name: Rename ipa + shell: bash + run: | + mv Techmino.ipa Techmino_a${{ needs.get-info.outputs.release }}_iOS.ipa + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + files: Techmino_a${{ needs.get-info.outputs.release }}_iOS.ipa + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: release + ARTIFACT_PLATFORM: iOS + ARTIFACT_NAME: Techmino_a${{ needs.get-info.outputs.release }}_iOS.ipa Add-Release-note: runs-on: ubuntu-20.04 needs: get-info steps: - - uses: actions/checkout@v2 - - name: Release - uses: softprops/action-gh-release@v1 - with: - name: ${{ needs.get-info.outputs.updateTitle }} - body: ${{ needs.get-info.outputs.updateNote }} + - uses: actions/checkout@v2 + - name: Release + uses: softprops/action-gh-release@v1 + with: + name: ${{ needs.get-info.outputs.updateTitle }} + body: ${{ needs.get-info.outputs.updateNote }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0ad19bdd..514a466b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -47,8 +47,18 @@ jobs: - name: Upload uses: actions/upload-artifact@v2 with: - name: Techmino.pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}.Windows + name: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Windows path: love + - name: Pack Techmino + run: 7z a -tzip .\Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Windows.zip .\love + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: test + ARTIFACT_PLATFORM: Windows + ARTIFACT_NAME: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Windows.zip build-linux: runs-on: ubuntu-20.04 @@ -65,8 +75,18 @@ jobs: - name: Upload uses: actions/upload-artifact@v2 with: - name: Techmino.pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}.Linux + name: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Linux path: Techmino.AppImage + - name: Pack Techmino + run: mv Techmino.AppImage Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Linux.AppImage + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: test + ARTIFACT_PLATFORM: Linux + ARTIFACT_NAME: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Linux.AppImage build-android: runs-on: ubuntu-20.04 @@ -90,8 +110,18 @@ jobs: - name: Upload uses: actions/upload-artifact@v2 with: - name: Techmino.pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}.Android + name: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Android path: Techmino_Snapshot.apk + - name: Pack Techmino + run: mv Techmino_Snapshot.apk Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Android.apk + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: test + ARTIFACT_PLATFORM: Android + ARTIFACT_NAME: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_Android.apk build-macOS: runs-on: macos-10.15 @@ -117,8 +147,18 @@ jobs: - name: Upload uses: actions/upload-artifact@v2 with: - name: Techmino.pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}.macOS + name: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_MacOS path: Techmino.dmg + - name: Pack Techmino + run: mv Techmino.dmg Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_MacOS.dmg + - name: Upload artifact to server + uses: ./.github/actions/upload-artifact + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: test + ARTIFACT_PLATFORM: MacOS + ARTIFACT_NAME: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_MacOS.dmg build-iOS: runs-on: macos-latest @@ -150,5 +190,15 @@ jobs: - name: Upload uses: actions/upload-artifact@v2 with: - name: Techmino.pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}.iOS - path: "Techmino.ipa" + name: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_iOS + path: Techmino.ipa + - name: Pack Techmino + run: mv Techmino.ipa Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_iOS.ipa + - name: Upload artifact to server + uses: ./.github/actions/upload-artifacts + with: + WEBDAV_USERNAME: ${{ secrets.WEBDAV_USERNAME }} + WEBDAV_PASSWORD: ${{ secrets.WEBDAV_PASSWORD }} + ARTIFACT_TYPE: test + ARTIFACT_PLATFORM: iOS + ARTIFACT_NAME: Techmino_pre${{ needs.get-info.outputs.release }}_${{ needs.get-info.outputs.commit }}_iOS.ipa