mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-11-04 08:08:55 +01:00 
			
		
		
		
	Add workflow steps for creating releases
This commit is contained in:
		
							
								
								
									
										95
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,95 @@
 | 
			
		||||
name: CI
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - dev
 | 
			
		||||
    tags:
 | 
			
		||||
      - v*
 | 
			
		||||
  pull_request:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  check_wrapper:
 | 
			
		||||
    name: Validate Gradle Wrapper
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Clone repo
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Validate Gradle Wrapper
 | 
			
		||||
        uses: gradle/wrapper-validation-action@v1
 | 
			
		||||
 | 
			
		||||
  build:
 | 
			
		||||
    name: Build app
 | 
			
		||||
    needs: check_wrapper
 | 
			
		||||
    if: "!startsWith(github.event.head_commit.message, '[SKIP CI]')"
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Cancel previous runs
 | 
			
		||||
        uses: styfle/cancel-workflow-action@0.5.0
 | 
			
		||||
        with:
 | 
			
		||||
          access_token: ${{ github.token }}
 | 
			
		||||
 | 
			
		||||
      - name: Clone repo
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Set up JDK 1.8
 | 
			
		||||
        uses: actions/setup-java@v1
 | 
			
		||||
        with:
 | 
			
		||||
          java-version: 1.8
 | 
			
		||||
 | 
			
		||||
      - name: Copy CI gradle.properties
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir -p ~/.gradle
 | 
			
		||||
          cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties
 | 
			
		||||
 | 
			
		||||
      - name: Build app
 | 
			
		||||
        uses: eskatos/gradle-command-action@v1
 | 
			
		||||
        with:
 | 
			
		||||
          arguments: assembleStandardRelease
 | 
			
		||||
          wrapper-cache-enabled: true
 | 
			
		||||
          dependencies-cache-enabled: true
 | 
			
		||||
          configuration-cache-enabled: true
 | 
			
		||||
 | 
			
		||||
      # Sign APK and create release for tags
 | 
			
		||||
 | 
			
		||||
      - name: Get tag name
 | 
			
		||||
        if: startsWith(github.ref, 'refs/tags/') && github.repository == 'inorichi/tachiyomi'
 | 
			
		||||
        id: get_tag_name
 | 
			
		||||
        run: |
 | 
			
		||||
          set -x
 | 
			
		||||
          echo "VERSION_TAG=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
 | 
			
		||||
 | 
			
		||||
      - name: Sign APK
 | 
			
		||||
        if: startsWith(github.ref, 'refs/tags/') && github.repository == 'inorichi/tachiyomi'
 | 
			
		||||
        uses: jobobby04/sign-android-release@v1.0.2
 | 
			
		||||
        with:
 | 
			
		||||
          releaseDirectory: app/build/outputs/apk/standard/release
 | 
			
		||||
          signingKeyBase64: ${{ secrets.SIGNING_KEY }}
 | 
			
		||||
          alias: ${{ secrets.ALIAS }}
 | 
			
		||||
          keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
 | 
			
		||||
          keyPassword: ${{ secrets.KEY_PASSWORD }}
 | 
			
		||||
 | 
			
		||||
      - name: Create release
 | 
			
		||||
        if: startsWith(github.ref, 'refs/tags/') && github.repository == 'inorichi/tachiyomi'
 | 
			
		||||
        id: create_release
 | 
			
		||||
        uses: actions/create-release@v1
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        with:
 | 
			
		||||
          tag_name: ${{ env.VERSION_TAG }}
 | 
			
		||||
          release_name: Tachiyomi ${{ env.VERSION_TAG }}
 | 
			
		||||
          draft: true
 | 
			
		||||
          prerelease: false
 | 
			
		||||
 | 
			
		||||
      - name: Upload APK to release
 | 
			
		||||
        if: startsWith(github.ref, 'refs/tags/') && github.repository == 'inorichi/tachiyomi'
 | 
			
		||||
        uses: actions/upload-release-asset@v1
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        with:
 | 
			
		||||
          upload_url: ${{ steps.create_release.outputs.upload_url }}
 | 
			
		||||
          asset_path: ${{ env.SIGNED_RELEASE_FILE }}
 | 
			
		||||
          asset_name: tachiyomi-${{ env.VERSION_TAG }}.apk
 | 
			
		||||
          asset_content_type: application/vnd.android.package-archive
 | 
			
		||||
							
								
								
									
										52
									
								
								.github/workflows/build_check.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										52
									
								
								.github/workflows/build_check.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,52 +0,0 @@
 | 
			
		||||
name: CI
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - dev
 | 
			
		||||
      - master
 | 
			
		||||
  pull_request:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  check_wrapper:
 | 
			
		||||
    name: Validate Gradle Wrapper
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Clone repo
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Validate Gradle Wrapper
 | 
			
		||||
        uses: gradle/wrapper-validation-action@v1
 | 
			
		||||
 | 
			
		||||
  build:
 | 
			
		||||
    name: Build app
 | 
			
		||||
    needs: check_wrapper
 | 
			
		||||
    if: "!startsWith(github.event.head_commit.message, '[SKIP CI]')"
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Cancel previous runs
 | 
			
		||||
        uses: styfle/cancel-workflow-action@0.5.0
 | 
			
		||||
        with:
 | 
			
		||||
          access_token: ${{ github.token }}
 | 
			
		||||
 | 
			
		||||
      - name: Clone repo
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      - name: Set up JDK 1.8
 | 
			
		||||
        uses: actions/setup-java@v1
 | 
			
		||||
        with:
 | 
			
		||||
          java-version: 1.8
 | 
			
		||||
 | 
			
		||||
      - name: Copy CI gradle.properties
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir -p ~/.gradle
 | 
			
		||||
          cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties
 | 
			
		||||
 | 
			
		||||
      - name: Build app
 | 
			
		||||
        uses: eskatos/gradle-command-action@v1
 | 
			
		||||
        with:
 | 
			
		||||
          arguments: assembleStandardDebug
 | 
			
		||||
          wrapper-cache-enabled: true
 | 
			
		||||
          dependencies-cache-enabled: true
 | 
			
		||||
          configuration-cache-enabled: true
 | 
			
		||||
		Reference in New Issue
	
	Block a user