name: Techmino Release CI on: push: tags: - '*' jobs: get-version: runs-on: ubuntu-20.04 outputs: name: ${{ steps.actual-get-version.outputs.name }} code: ${{ steps.actual-get-version.outputs.code }} release: ${{ steps.actual-get-version.outputs.release }} updateTitle: ${{ steps.actual-get-version.outputs.updateTitle }} commit: ${{ steps.actual-get-version.outputs.commit }} steps: - uses: actions/checkout@v2 - name: Install lua run: | sudo apt-get update -y sudo apt-get install lua5.3 -y - name: Get Version id: actual-get-version run: | echo "::set-output name=name::$(lua .github/workflows/getVersion.lua -name)" 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=commit::$(git rev-parse --short ${{ GITHUB.SHA }})" get-cc-url: runs-on: ubuntu-20.04 outputs: url: ${{ steps.get-url.outputs.url }} steps: - uses: actions/checkout@v2 - name: Get URL id: get-url run: | echo "::set-output name=url::https://github.com/26F-Studio/cold_clear_ai_love2d_wrapper/releases/download/$(python .github/workflows/getLatest.py)" build-windows-x64: runs-on: windows-latest needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python .\.github\workflows\updateVersion.py -T 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 cc-url: ${{ needs.get-cc-url.outputs.url }}/win64.zip version: ${{ needs.get-version.outputs.release }} icon: .\.github\build\Windows\icon.ico - name: Pack Techmino run: 7z a -tzip .\Techmino.a${{ needs.get-version.outputs.release }}.Win64.zip .\love - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.release }}.Win64.zip build-windows-x86: runs-on: windows-latest needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python .\.github\workflows\updateVersion.py -T 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 cc-url: ${{ needs.get-cc-url.outputs.url }}/win32.zip version: ${{ needs.get-version.outputs.release }} icon: .\.github\build\Windows\icon.ico - name: Pack Techmino run: 7z a -tzip .\Techmino.a${{ needs.get-version.outputs.release }}.Win32.zip .\love - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.release }}.Win32.zip build-linux: runs-on: ubuntu-20.04 needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python3 .github/workflows/updateVersion.py -T Version - uses: ./.github/actions/build-linux with: cc-url: ${{ needs.get-cc-url.outputs.url }}/linux.zip file-path: Techmino.a${{ needs.get-version.outputs.release }}.AppImage icon: .github/build/Linux/icon.png - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.release }}.AppImage build-android: runs-on: ubuntu-20.04 needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python3 .github/workflows/updateVersion.py -T Version - uses: ./.github/actions/build-android with: type: Release cc-url: ${{ needs.get-cc-url.outputs.url }} code: ${{ needs.get-version.outputs.code }} name: ${{ needs.get-version.outputs.name }} file-path: Techmino.a${{ needs.get-version.outputs.Version }}.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-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.Version }}.apk build-android-mini: runs-on: ubuntu-20.04 needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python3 .github/workflows/updateVersion.py -T Version - name: remove media run: | rm -rf media/music media/effect media/vocal - uses: ./.github/actions/build-android with: type: Release cc-url: ${{ needs.get-cc-url.outputs.url }} code: ${{ needs.get-version.outputs.code }} name: ${{ needs.get-version.outputs.name }} file-path: Techmino.a${{ needs.get-version.outputs.Version }}.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-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.Version }}.mini.apk build-macOS: runs-on: macos-10.15 needs: [get-version, get-cc-url] steps: - uses: actions/checkout@v2 - name: Update Version run: | python3 .github/workflows/updateVersion.py -T Version - uses: ./.github/actions/build-macos with: cc-url: ${{ needs.get-cc-url.outputs.url }}/macOS.zip name: ${{ needs.get-version.outputs.name }} icon: .github/build/macOS/icon.icns MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }} MACOS_CERTIFICATE_PWD: ${{ secrets.MACOS_CERTIFICATE_PWD }} - name: Pack Techmino run: | zip -r -y Techmino.a${{ needs.get-version.outputs.Version }}.macOS.zip Techmino.app ".github/build/macOS/打不开?Can’t open the App?.pdf" - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.Version }}.macOS.zip build-love: runs-on: ubuntu-20.04 needs: get-version steps: - uses: actions/checkout@v2 - name: Update Version run: | python3 .github/workflows/updateVersion.py -T Version - uses: ./.github/actions/build-love with: file-path: Techmino.a${{ needs.get-version.outputs.release }}.love - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} files: Techmino.a${{ needs.get-version.outputs.release }}.love Add-Release-note: runs-on: ubuntu-20.04 needs: get-version steps: - uses: actions/checkout@v2 - name: Install lua run: | sudo apt-get update -y sudo apt-get upgrade -y sudo apt-get install lua5.3 -y - name: Get ReleaseNote run: | lua .github/workflows/getVersion.lua -updateNote > updateNote.txt - name: Release uses: softprops/action-gh-release@v1 with: name: ${{ needs.get-version.outputs.updateTitle }} body_path: updateNote.txt