Update all dependencies #260
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 Pipeline" | |
on: | |
push: | |
branches: [ "main" ] | |
tags: | |
- '*' | |
pull_request: | |
branches: ['*'] | |
workflow_dispatch: | |
inputs: | |
type: | |
description: 'Release Library' | |
required: true | |
default: '...no release' | |
type: choice | |
options: | |
- '...no release' | |
- major | |
- minor | |
- patch | |
jobs: | |
build: | |
name: Build + unit tests | |
uses: ./.github/workflows/callable.build.yml | |
if: | # avoid unnecessary pipeline runs during artifact release process ('gradle release plugin') | |
!contains(github.event.head_commit.message, '[Gradle Release Plugin] - pre tag commit') | |
|| github.ref_type == 'tag' | |
code_analysis: | |
name: Code Analysis (multi) | |
permissions: | |
actions: read | |
contents: read | |
security-events: write | |
uses: ./.github/workflows/callable.code-analysis.yml | |
needs: build | |
if: | | |
github.event_name != 'workflow_dispatch' | |
|| inputs.type == '...no release' | |
integration_test: | |
name: Integration tests | |
uses: ./.github/workflows/callable.integration-test.yml | |
needs: build | |
gradle_release: | |
name: Create release | |
uses: ./.github/workflows/callable.gradle-release.yml | |
secrets: inherit | |
with: | |
type: ${{ inputs.type }} | |
needs: integration_test | |
if: | | |
github.event_name == 'workflow_dispatch' | |
&& inputs.type != '...no release' | |
publish_sonatype: | |
name: Publish artifact (Maven Central) | |
uses: ./.github/workflows/callable.publish-sonatype.yml | |
secrets: inherit | |
needs: integration_test | |
if: | | |
( | |
github.event_name != 'workflow_dispatch' | |
|| inputs.type == '...no release' | |
) && ( | |
github.ref == 'refs/heads/main' | |
|| github.ref_type == 'tag' | |
) | |
publish_javadoc: | |
name: Publish javadoc (GitHub Pages) | |
permissions: | |
contents: write | |
uses: ./.github/workflows/callable.publish-javadoc.yml | |
needs: integration_test | |
if: | | |
( | |
github.ref == 'refs/heads/main' | |
&& ( inputs.type == '' || inputs.type == '...no release' ) | |
) || github.ref_type == 'tag' |