mirai/.github/workflows/release.yml

117 lines
3.4 KiB
YAML
Raw Normal View History

2021-02-06 15:41:09 +08:00
# This is a basic workflow to help you get started with Actions
name: Release Publish
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
push:
tags:
- '*-dev*'
- '*-release'
2021-03-26 10:40:08 +08:00
- 'v*'
2021-02-06 15:41:09 +08:00
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
publish-mirai:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Checkout submodules
run: git submodule update --init --recursive
2021-02-06 15:41:09 +08:00
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: chmod -R 777 *
run: chmod -R 777 *
- name: Keys setup
shell: bash
run: |
mkdir build-gpg-sign
echo "$GPG_PRIVATE" > build-gpg-sign/keys.gpg
echo "$GPG_PUBLIC_" > build-gpg-sign/keys.gpg.pub
mkdir build-secret-keys
echo "$SONATYPE_USER" > build-secret-keys/sonatype.key
echo "$SONATYPE_KEY" >> build-secret-keys/sonatype.key
env:
GPG_PRIVATE: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_PUBLIC_: ${{ secrets.GPG_PUBLIC_KEY }}
SONATYPE_USER: ${{ secrets.SONATYPE_USER }}
SONATYPE_KEY: ${{ secrets.SONATYPE_KEY }}
2021-02-06 16:38:43 +08:00
- name: Init gradle project
run: ./gradlew clean --scan
2021-02-06 16:38:43 +08:00
2021-02-06 15:41:09 +08:00
- name: Check keys
2021-05-25 12:13:43 +08:00
run: ./gradlew ensureMavenCentralAvailable
2021-02-06 15:41:09 +08:00
- name: fillBuildConstants
run: >
./gradlew
fillBuildConstants --scan
2021-02-06 15:41:09 +08:00
- name: Assemble
run: ./gradlew assemble --scan
2021-02-06 15:41:09 +08:00
- name: Check
2021-05-31 16:14:51 +08:00
run: >
./gradlew check --scan
-Dmirai.network.show.all.components=true
2021-05-31 16:20:09 +08:00
-Dkotlinx.coroutines.debug=on
-Dmirai.network.show.packet.details=true
2021-02-06 15:41:09 +08:00
- name: Gradle :mirai-core-utils:publish
run: >
./gradlew :mirai-core-utils:publish --scan
2021-02-06 15:41:09 +08:00
- name: Gradle :mirai-core-api:publish
run: >
./gradlew :mirai-core-api:publish --scan
2021-02-06 15:41:09 +08:00
- name: Gradle :mirai-core:publish
run: >
./gradlew :mirai-core:publish --scan
2021-02-06 15:41:09 +08:00
- name: Gradle :mirai-core-all:publish
run: >
./gradlew :mirai-core-all:publish --info
- name: Gradle :mirai-console:publish
run: >
./gradlew
:mirai-console:publish --info
- name: Gradle :mirai-console-terminal:publish
run: >
./gradlew
:mirai-console-terminal:publish --info
- name: Gradle :mirai-console-compiler-common:publish
run: >
./gradlew
:mirai-console-compiler-common:publish --info
- name: Gradle :mirai-console-compiler-annotations:publish
run: >
./gradlew
:mirai-console-compiler-annotations:publish --info
- name: Publish Gradle plugin
run: >
./gradlew
:mirai-console-gradle:publishPlugins --scan
-Dgradle.publish.key=${{ secrets.GRADLE_PUBLISH_KEY }} -Pgradle.publish.key=${{ secrets.GRADLE_PUBLISH_KEY }}
-Dgradle.publish.secret=${{ secrets.GRADLE_PUBLISH_SECRET }} -Pgradle.publish.secret=${{ secrets.GRADLE_PUBLISH_SECRET }}
2021-02-06 22:28:09 +08:00
- name: Gradle :ci-release-helper:closeAndReleaseRepository
run: >
./gradlew
:ci-release-helper:closeAndReleaseRepository --info