Merge pull request #179 from avianlabs/renovate/ktor-monorepo #210
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'Main Branch Build' | |
concurrency: | |
group: main | |
cancel-in-progress: false | |
on: | |
push: | |
branches: | |
- main | |
permissions: | |
pull-requests: write | |
deployments: write | |
checks: write | |
statuses: write | |
contents: write | |
packages: write | |
jobs: | |
dependency-submission: | |
name: Submit dependency graph | |
runs-on: macos-14 | |
steps: | |
- name: Setup Xcode | |
uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: '15.3' | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: '18' | |
distribution: 'temurin' | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
- name: Generate and submit dependency graph | |
uses: gradle/actions/dependency-submission@v4 | |
with: | |
dependency-graph-include-configurations: '.+(Compile|Runtime)Classpath' | |
build: | |
name: Build Project | |
runs-on: macos-14 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: '18' | |
distribution: 'temurin' | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
- name: Cache konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} | |
restore-keys: ${{ runner.os }}-konan- | |
- name: Run tests | |
run: ./gradlew check | |
- name: Import GPG key | |
uses: crazy-max/ghaction-import-gpg@v6 | |
with: | |
gpg_private_key: ${{ secrets.GPG_KEY }} | |
passphrase: ${{ secrets.GPG_KEY_PASSWORD }} | |
- name: Publish to GitHub Packages | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
ORG_GRADLE_PROJECT_signingGnupgKeyName: ${{ secrets.GPG_KEY_ID }} | |
ORG_GRADLE_PROJECT_signingGnupgPassphrase: ${{ secrets.GPG_KEY_PASSWORD }} | |
run: ./gradlew -Psnapshot=true publishAllPublicationsToGitHubPackagesRepository | |
- name: Bundle the failed build report | |
if: failure() | |
run: find ./build -type d -name 'reports' | zip -@ -r build-reports.zip | |
- name: Upload the failed build report | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: error-report | |
path: build-reports.zip | |
retention-days: 7 |