diff --git a/.github/workflows/continuous-integration-workflow.yml b/.github/workflows/continuous-integration-workflow.yml new file mode 100644 index 00000000..65a70ec2 --- /dev/null +++ b/.github/workflows/continuous-integration-workflow.yml @@ -0,0 +1,56 @@ +name: CI + +on: + push: + branches-ignore: + - "dependabot/**" + schedule: + - cron: '0 10 * * *' # Once per day at 10am UTC + workflow_dispatch: # Manual trigger + +jobs: + build: + name: Build + uses: spring-io/spring-security-release-tools/.github/workflows/build.yml@v1 + strategy: + matrix: + os: [ ubuntu-latest ] + jdk: [ 17 ] + with: + runs-on: ${{ matrix.os }} + java-version: ${{ matrix.jdk }} + distribution: temurin + secrets: inherit + deploy-artifacts: + name: Deploy Artifacts + needs: [ build ] + uses: spring-io/spring-security-release-tools/.github/workflows/deploy-artifacts.yml@v1 + with: + should-deploy-artifacts: ${{ needs.build.outputs.should-deploy-artifacts }} + secrets: inherit + deploy-docs: + name: Deploy Docs + needs: [ build ] + 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 + deploy-schema: + name: Deploy Schema + needs: [ build ] + uses: spring-io/spring-security-release-tools/.github/workflows/deploy-schema.yml@v1 + with: + should-deploy-schema: ${{ needs.build.outputs.should-deploy-schema }} + secrets: inherit + perform-release: + name: Perform Release + needs: [ deploy-artifacts, deploy-docs, deploy-schema ] + 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://repo.spring.io/artifactory/milestone + release-repo-url: https://repo1.maven.org/maven2 + artifact-path: org/springframework/ldap/spring-ldap-core + slack-announcing-id: spring-ldap-announcing + secrets: inherit diff --git a/.github/workflows/pr-build-workflow.yml b/.github/workflows/pr-build-workflow.yml new file mode 100644 index 00000000..cc7a2631 --- /dev/null +++ b/.github/workflows/pr-build-workflow.yml @@ -0,0 +1,28 @@ +name: PR Build + +on: pull_request + +jobs: + build: + name: Build + runs-on: ubuntu-latest + if: github.repository == 'spring-projects/spring-ldap' + strategy: + matrix: + jdk: [17] + fail-fast: false + steps: + - uses: actions/checkout@v4 + - name: Set up JDK ${{ matrix.jdk }} + uses: actions/setup-java@v4 + with: + java-version: ${{ matrix.jdk }} + distribution: 'temurin' + cache: 'gradle' + - name: Cache Gradle packages + uses: actions/cache@v4 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} + - name: Build with Gradle + run: ./gradlew clean build --no-daemon --stacktrace