diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml new file mode 100644 index 0000000000..eeff27df8c --- /dev/null +++ b/.github/actions/setup/action.yml @@ -0,0 +1,18 @@ +name: 'Setup build environment' +description: 'Sets up an environment for building Tusky' +runs: + using: "composite" + steps: + - uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'temurin' + + - name: Copy CI gradle.properties + shell: bash + run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties + + - name: Gradle Build Action + uses: gradle/actions/setup-gradle@v4 + with: + cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }} diff --git a/.github/workflows/check-and-build.yml b/.github/workflows/check-and-build.yml index 5e7637de64..6bd7308e9f 100644 --- a/.github/workflows/check-and-build.yml +++ b/.github/workflows/check-and-build.yml @@ -11,18 +11,8 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - uses: actions/setup-java@v4 - with: - java-version: '21' - distribution: 'temurin' - - - name: Copy CI gradle.properties - run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - - name: Gradle Build Action - uses: gradle/actions/setup-gradle@v4 - with: - cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }} + - name: Setup + uses: ./.github/actions/setup - name: ktlint run: ./gradlew clean ktlintCheck diff --git a/.github/workflows/deploy-release.yml b/.github/workflows/deploy-release.yml index 7c16de4264..b82e2dd717 100644 --- a/.github/workflows/deploy-release.yml +++ b/.github/workflows/deploy-release.yml @@ -8,13 +8,17 @@ on: - '*' jobs: - build: + check-and-build: + uses: ./.github/workflows/check-and-build.yml + deploy: runs-on: ubuntu-latest + needs: check-and-build steps: - name: Checkout uses: actions/checkout@v4 - - uses: ./.github/workflows/check-and-build.yml + - name: Setup + uses: ./.github/actions/setup - name: Build Blue aab run: ./gradlew app:bundleBlueRelease diff --git a/.github/workflows/deploy-test.yml b/.github/workflows/deploy-test.yml index b59da0b2d2..1db1cfd3a4 100644 --- a/.github/workflows/deploy-test.yml +++ b/.github/workflows/deploy-test.yml @@ -8,13 +8,17 @@ on: - develop jobs: - build: + check-and-build: + uses: ./.github/workflows/check-and-build.yml + deploy: runs-on: ubuntu-latest + needs: check-and-build steps: - name: Checkout uses: actions/checkout@v4 - - uses: ./.github/workflows/check-and-build.yml + - name: Setup + uses: ./.github/actions/setup - name: Build Green aab run: ./gradlew app:bundleGreenRelease