name: Build and Deploy on: push: branches: - '**' schedule: - cron: '0 10 * * *' # Once per day at 10am UTC workflow_dispatch: env: DEVELOCITY_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }} permissions: contents: read jobs: build: name: Build uses: spring-io/spring-security-release-tools/.github/workflows/build.yml@v1 strategy: matrix: os: [ubuntu-latest, windows-latest] jdk: [17] with: runs-on: ${{ matrix.os }} java-version: ${{ matrix.jdk }} distribution: temurin secrets: inherit test: name: Test Against Snapshots uses: spring-io/spring-security-release-tools/.github/workflows/test.yml@v1 with: test-args: --refresh-dependencies --stacktrace -PforceMavenRepositories=snapshot -PspringFrameworkVersion=7.+ -PspringSecurityVersion=7.+ secrets: inherit deploy-artifacts: name: Deploy Artifacts needs: [build, test] uses: spring-io/spring-security-release-tools/.github/workflows/deploy-artifacts.yml@v1 with: should-deploy-artifacts: ${{ needs.build.outputs.should-deploy-artifacts }} default-publish-milestones-central: true secrets: inherit deploy-docs: name: Deploy Docs needs: [build, test] uses: spring-io/spring-security-release-tools/.github/workflows/deploy-docs.yml@v1 with: should-deploy-docs: ${{ needs.build.outputs.should-deploy-artifacts }} secrets: inherit perform-release: name: Perform Release needs: [deploy-artifacts, deploy-docs] uses: spring-io/spring-security-release-tools/.github/workflows/perform-release.yml@v1 with: should-perform-release: ${{ needs.deploy-artifacts.outputs.artifacts-deployed }} project-version: ${{ needs.deploy-artifacts.outputs.project-version }} milestone-repo-url: https://repo1.maven.org/maven2 release-repo-url: https://repo1.maven.org/maven2 artifact-path: org/springframework/security/spring-security-oauth2-authorization-server slack-announcing-id: spring-authorization-server-announcing secrets: inherit