Skip to content

0.9.1

0.9.1 #160

Workflow file for this run

name: ci
on:
pull_request:
types:
- opened
- synchronize
- closed
env:
GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
jobs:
build:
runs-on: ubuntu-latest
name: Build Ackpine
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Copy gradle.properties
run: |
mkdir -p ~/.gradle
cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v3
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: adopt
java-version: 17
cache: gradle
- name: Validate binary compatibility
run: |
./gradlew apiCheck || { exit_code=$?; printf "*** This PR changes Ackpine's public API. If this is intentional, run './gradlew apiDump' and commit the new API dumps. ***"; exit $exit_code; }
- name: Build
run: |
./gradlew :buildAckpine --stacktrace
publish:
name: Upload artifacts
runs-on: ubuntu-latest
if: github.repository == 'solrudev/Ackpine' && github.event.pull_request.base.ref == 'master' && github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'release')
needs: [ build ]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Copy gradle.properties
run: |
mkdir -p ~/.gradle
cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: adopt
java-version: 17
cache: gradle
- name: Publish
run: |
./gradlew publishAndReleaseToMavenCentral --no-configuration-cache
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.OSSRH_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.OSSRH_PASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.SIGNING_KEY_ID }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_PASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }}
publish-docs:
name: Publish documentation
runs-on: ubuntu-latest
if: github.repository == 'solrudev/Ackpine' && github.event.pull_request.base.ref == 'master' && github.event.pull_request.merged == true
needs: [ build ]
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false
- name: Copy gradle.properties
run: |
mkdir -p ~/.gradle
cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: adopt
java-version: 17
cache: gradle
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.11.4
- name: Prepare API docs
run: |
./gradlew :api-documentation:dokkaGenerate
- name: Build MkDocs
run: |
pip3 install --upgrade pip && pip3 install -v "mkdocs-material==9.3.2" && pip3 install mkdocs-minify-plugin
mkdocs build
- name: Deploy docs
if: success()
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: site
single-commit: true