kotlin-result/.github/workflows/ci.yaml

95 lines
2.8 KiB
YAML
Raw Normal View History

2019-12-20 14:51:24 +00:00
name: ci
2021-01-30 17:00:12 +00:00
on: [ push, pull_request ]
2019-12-20 14:51:24 +00:00
jobs:
2021-12-28 17:04:50 +00:00
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, macos-11, windows-latest ]
2019-12-20 14:51:24 +00:00
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v1
with:
path: ~/.konan
key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle.kts') }}-${{ hashFiles('buildSrc/src/main/kotlin/Versions.kt') }}
restore-keys: |
${{ runner.os }}-konan-
2019-12-20 14:51:24 +00:00
- uses: actions/cache@v1
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.*') }}
restore-keys: |
${{ runner.os }}-gradle-wrapper-
- uses: actions/cache@v1
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle.kts') }}-${{ hashFiles('buildSrc/src/main/kotlin/Versions.kt') }}
2019-12-20 14:51:24 +00:00
restore-keys: |
${{ runner.os }}-gradle-caches-
- uses: actions/setup-java@v1
with:
java-version: 1.8
2021-03-25 12:22:53 +00:00
- run: ./gradlew linuxX64Test
if: matrix.os == 'ubuntu-latest'
2021-03-25 12:22:53 +00:00
- run: ./gradlew mingwX64Test
if: matrix.os == 'windows-latest'
2021-12-27 23:22:10 +00:00
- run: ./gradlew build
if: matrix.os == 'macos-11'
2021-01-30 17:00:12 +00:00
publish:
2021-12-28 17:04:50 +00:00
needs: build
if: github.ref == 'refs/heads/master' && github.event_name == 'push' && needs.build.result == 'success'
2021-03-25 12:22:53 +00:00
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, macos-11, windows-latest ]
2021-03-25 12:22:53 +00:00
env:
ORG_GRADLE_PROJECT_ossrhUsername: ${{ secrets.OSSRH_USERNAME }}
ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.OSSRH_PASSWORD }}
ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.SIGNING_KEY_ID }}
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.SIGNING_PASSWORD }}
2021-01-30 17:00:12 +00:00
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v1
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('gradle/wrapper/gradle-wrapper.*') }}
restore-keys: |
${{ runner.os }}-gradle-wrapper-
- uses: actions/cache@v1
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle.kts') }}-${{ hashFiles('buildSrc/src/main/kotlin/Versions.kt') }}
restore-keys: |
${{ runner.os }}-gradle-caches-
- uses: actions/setup-java@v1
with:
java-version: 1.8
2021-03-25 12:22:53 +00:00
- run: ./gradlew publishLinuxX64PublicationToMavenRepository
if: matrix.os == 'ubuntu-latest'
- run: ./gradlew publishMingwX64PublicationToMavenRepository
if: matrix.os == 'windows-latest'
2021-01-30 17:00:12 +00:00
- run: ./gradlew publish
if: matrix.os == 'macos-11'