continuous-integration-workflow.yml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. name: Build and Deploy
  2. on:
  3. push:
  4. branches:
  5. - '**'
  6. schedule:
  7. - cron: '0 10 * * *' # Once per day at 10am UTC
  8. workflow_dispatch:
  9. env:
  10. DEVELOCITY_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }}
  11. jobs:
  12. build:
  13. name: Build
  14. uses: spring-io/spring-security-release-tools/.github/workflows/build.yml@v1
  15. strategy:
  16. matrix:
  17. os: [ubuntu-latest, windows-latest]
  18. jdk: [17]
  19. with:
  20. runs-on: ${{ matrix.os }}
  21. java-version: ${{ matrix.jdk }}
  22. distribution: temurin
  23. secrets: inherit
  24. test:
  25. name: Test Against Snapshots
  26. uses: spring-io/spring-security-release-tools/.github/workflows/test.yml@v1
  27. with:
  28. test-args: --refresh-dependencies --stacktrace -PforceMavenRepositories=snapshot -PspringFrameworkVersion=7.+ -PspringSecurityVersion=7.+
  29. secrets: inherit
  30. deploy-artifacts:
  31. name: Deploy Artifacts
  32. needs: [build, test]
  33. uses: spring-io/spring-security-release-tools/.github/workflows/deploy-artifacts.yml@v1
  34. with:
  35. should-deploy-artifacts: ${{ needs.build.outputs.should-deploy-artifacts }}
  36. default-publish-milestones-central: true
  37. secrets: inherit
  38. deploy-docs:
  39. name: Deploy Docs
  40. needs: [build, test]
  41. uses: spring-io/spring-security-release-tools/.github/workflows/deploy-docs.yml@v1
  42. with:
  43. should-deploy-docs: ${{ needs.build.outputs.should-deploy-artifacts }}
  44. secrets: inherit
  45. perform-release:
  46. name: Perform Release
  47. needs: [deploy-artifacts, deploy-docs]
  48. uses: spring-io/spring-security-release-tools/.github/workflows/perform-release.yml@v1
  49. with:
  50. should-perform-release: ${{ needs.deploy-artifacts.outputs.artifacts-deployed }}
  51. project-version: ${{ needs.deploy-artifacts.outputs.project-version }}
  52. milestone-repo-url: https://repo1.maven.org/maven2
  53. release-repo-url: https://repo1.maven.org/maven2
  54. artifact-path: org/springframework/security/spring-security-oauth2-authorization-server
  55. slack-announcing-id: spring-authorization-server-announcing
  56. secrets: inherit