* merge get-cc-url into get-version * add `get-cc` * remove `apt update` * rename `get-version` -> `get-info` * rm unnecessary file * - Add support for ios - Fix missing top folder for macos * - Fix directory names * - Fix with binary r/w * iOS的plist文件先转换为明文 * add IOS * 整合新action * Finishing touch * Update action.yml * Test chmod * - Xcode build test * - Build with default keychain * - Test iOS only * - Use macos-11 * - Change keychain operations' sequence * - Allow provisioning updates * - Set build directory * - Specify build path * - Pack bare app * - Add quiet option * 测试:输出touchrelease位置 * - Test with ad hoc cert * - Fix wrong variable * - Use Release instead of Distribution * - Chmod CCloader to add execute permission * 继续测试ios触屏问题 * 继续测试ios触屏问题 * - Use macos latest - Re-enable other runs * - Sign CCloader after build * - Remove redundant inputs in build.yml * - Install test * - Export test * - install test * - Try fastlane * - Use builtin ruby * - CI Test * - Update python script to fix ios versioning * - Use static lib * - Test static cc * - Fix locations * Update readme.md Co-authored-by: Imple Lee <80144331+ImpleLee@users.noreply.github.com> Co-authored-by: Trebor-Huang <2300936257@qq.com> Co-authored-by: Trebor Huang <41145779+Trebor-Huang@users.noreply.github.com> Co-authored-by: YunyushuLiu <kunluntree@qq.com> Co-authored-by: MrZ626 <1046101471@qq.com> Co-authored-by: 梦飞翔 <1149761294@qq.com>
139 lines
5.0 KiB
YAML
139 lines
5.0 KiB
YAML
name: Techmino CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ main, ci* ]
|
|
pull_request:
|
|
branches: [ main, ci* ]
|
|
|
|
jobs:
|
|
get-info:
|
|
runs-on: ubuntu-20.04
|
|
outputs:
|
|
name: ${{ steps.actual-get-info.outputs.name }}
|
|
code: ${{ steps.actual-get-info.outputs.code }}
|
|
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: |
|
|
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=commit::$(git rev-parse --short ${{ GITHUB.SHA }})"
|
|
|
|
build-windows:
|
|
runs-on: windows-latest
|
|
needs: get-info
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ./.github/actions/snapshot-update
|
|
with:
|
|
commit: ${{ needs.get-info.outputs.commit }}
|
|
- 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.name }}
|
|
icon: .\.github\build\Windows\icon_snapshot.ico
|
|
- name: Upload
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_Windows
|
|
path: love
|
|
|
|
build-linux:
|
|
runs-on: ubuntu-20.04
|
|
needs: get-info
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ./.github/actions/snapshot-update
|
|
with:
|
|
commit: ${{ needs.get-info.outputs.commit }}
|
|
- uses: ./.github/actions/build-linux
|
|
with:
|
|
icon: .github/build/Linux/icon_snapshot.png
|
|
- name: Upload
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_Linux
|
|
path: Techmino.AppImage
|
|
|
|
build-android:
|
|
runs-on: ubuntu-20.04
|
|
needs: get-info
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ./.github/actions/snapshot-update
|
|
with:
|
|
commit: ${{ needs.get-info.outputs.commit }}
|
|
- uses: ./.github/actions/build-android
|
|
with:
|
|
type: Snapshot
|
|
code: ${{ needs.get-info.outputs.code }}
|
|
name: ${{ needs.get-info.outputs.name }}
|
|
file-path: Techmino_Snapshot.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
|
|
path: Techmino_Snapshot.apk
|
|
|
|
build-macOS:
|
|
runs-on: macos-10.15
|
|
needs: get-info
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ./.github/actions/snapshot-update
|
|
with:
|
|
commit: ${{ needs.get-info.outputs.commit }}
|
|
- uses: ./.github/actions/build-macos
|
|
with:
|
|
name: ${{ needs.get-info.outputs.name }}
|
|
icon: .github/build/macOS/icon_snapshot.icns
|
|
MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }}
|
|
MACOS_CERTIFICATE_ID: ${{ secrets.MACOS_CERTIFICATE_ID }}
|
|
MACOS_CERTIFICATE_PWD: ${{ secrets.MACOS_CERTIFICATE_PWD }}
|
|
- name: Pack Techmino
|
|
run: |
|
|
zip -r -y Techmino.zip Techmino.app
|
|
- name: Upload
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Techmino_${{ needs.get-info.outputs.name }}_${{ GITHUB.RUN_NUMBER }}_${{ needs.get-info.outputs.commit }}_macOS
|
|
path: Techmino.zip
|
|
|
|
build-iOS:
|
|
runs-on: macos-latest
|
|
needs: get-info
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ./.github/actions/snapshot-update
|
|
with:
|
|
commit: ${{ needs.get-info.outputs.commit }}
|
|
- uses: ./.github/actions/build-ios
|
|
with:
|
|
name: ${{ needs.get-info.outputs.name }}
|
|
APP_STORE_CONNECT_TEAM_ID: '${{ secrets.APP_STORE_CONNECT_TEAM_ID }}'
|
|
DEVELOPER_APP_ID: '${{ secrets.DEVELOPER_APP_ID }}'
|
|
DEVELOPER_APP_IDENTIFIER: '${{ secrets.DEVELOPER_APP_IDENTIFIER }}'
|
|
DEVELOPER_PORTAL_TEAM_ID: '${{ secrets.DEVELOPER_PORTAL_TEAM_ID }}'
|
|
FASTLANE_APPLE_ID: '${{ secrets.FASTLANE_APPLE_ID }}'
|
|
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: '${{ secrets.FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD }}'
|
|
MATCH_PASSWORD: '${{ secrets.MATCH_PASSWORD }}'
|
|
GIT_AUTHORIZATION: '${{ secrets.GIT_AUTHORIZATION }}'
|
|
PROVISIONING_PROFILE_SPECIFIER: '${{ secrets.PROVISIONING_PROFILE_SPECIFIER }}'
|
|
TEMP_KEYCHAIN_PASSWORD: '${{ secrets.TEMP_KEYCHAIN_PASSWORD }}'
|
|
TEMP_KEYCHAIN_USER: '${{ secrets.TEMP_KEYCHAIN_USER }}'
|
|
APPLE_KEY_ID: '${{ secrets.APPLE_KEY_ID }}'
|
|
APPLE_ISSUER_ID: '${{ secrets.APPLE_ISSUER_ID }}'
|
|
APPLE_KEY_CONTENT: '${{ secrets.APPLE_KEY_CONTENT }}'
|