8 changed files with 0 additions and 327 deletions
@ -1,23 +0,0 @@ |
|||||||
name: Clean build artifacts |
|
||||||
on: |
|
||||||
schedule: |
|
||||||
- cron: '0 10 * * *' # Once per day at 10am UTC |
|
||||||
|
|
||||||
permissions: |
|
||||||
contents: read |
|
||||||
|
|
||||||
jobs: |
|
||||||
main: |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository == 'spring-projects/spring-security' }} |
|
||||||
permissions: |
|
||||||
contents: none |
|
||||||
steps: |
|
||||||
- name: Delete artifacts in cron job |
|
||||||
env: |
|
||||||
GH_ACTIONS_REPO_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }} |
|
||||||
run: | |
|
||||||
echo "Running clean build artifacts logic" |
|
||||||
output=$(curl -X GET -H "Authorization: token $GH_ACTIONS_REPO_TOKEN" https://api.github.com/repos/spring-projects/spring-security/actions/artifacts | grep '"id"' | cut -d : -f2 | sed 's/,*$//g') |
|
||||||
echo Output is $output |
|
||||||
for id in $output; do curl -X DELETE -H "Authorization: token $GH_ACTIONS_REPO_TOKEN" https://api.github.com/repos/spring-projects/spring-security/actions/artifacts/$id; done; |
|
||||||
@ -1,128 +0,0 @@ |
|||||||
name: CI |
|
||||||
|
|
||||||
on: |
|
||||||
push: |
|
||||||
branches-ignore: |
|
||||||
- "dependabot/**" |
|
||||||
schedule: |
|
||||||
- cron: '0 10 * * *' # Once per day at 10am UTC |
|
||||||
workflow_dispatch: # Manual trigger |
|
||||||
|
|
||||||
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 |
|
||||||
strategy: |
|
||||||
matrix: |
|
||||||
java-version: [ 17 ] |
|
||||||
with: |
|
||||||
java-version: ${{ matrix.java-version }} |
|
||||||
test-args: --refresh-dependencies -PforceMavenRepositories=snapshot -PisOverrideVersionCatalog -PspringFrameworkVersion=6.0.+ -PreactorVersion=2022.0.+ -PspringDataVersion=2022.0.+ --stacktrace |
|
||||||
secrets: inherit |
|
||||||
check-samples: |
|
||||||
name: Check Samples |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository_owner == 'spring-projects' }} |
|
||||||
steps: |
|
||||||
- uses: actions/checkout@v4 |
|
||||||
- name: Set up gradle |
|
||||||
uses: spring-io/spring-gradle-build-action@v2 |
|
||||||
with: |
|
||||||
java-version: 17 |
|
||||||
distribution: temurin |
|
||||||
- name: Check samples project |
|
||||||
env: |
|
||||||
LOCAL_REPOSITORY_PATH: ${{ github.workspace }}/build/publications/repos |
|
||||||
SAMPLES_DIR: ../spring-security-samples |
|
||||||
run: | |
|
||||||
# Extract version from gradle.properties |
|
||||||
version=$(cat gradle.properties | grep "version=" | awk -F'=' '{print $2}') |
|
||||||
# Extract samplesBranch from gradle.properties |
|
||||||
samples_branch=$(cat gradle.properties | grep "samplesBranch=" | awk -F'=' '{print $2}') |
|
||||||
./gradlew publishMavenJavaPublicationToLocalRepository |
|
||||||
./gradlew cloneRepository -PrepositoryName="spring-projects/spring-security-samples" -Pref="$samples_branch" -PcloneOutputDirectory="$SAMPLES_DIR" |
|
||||||
./gradlew --project-dir "$SAMPLES_DIR" --init-script spring-security-ci.gradle -PlocalRepositoryPath="$LOCAL_REPOSITORY_PATH" -PspringSecurityVersion="$version" :runAllTests |
|
||||||
check-tangles: |
|
||||||
name: Check for Package Tangles |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository_owner == 'spring-projects' }} |
|
||||||
steps: |
|
||||||
- uses: actions/checkout@v4 |
|
||||||
- name: Set up gradle |
|
||||||
uses: spring-io/spring-gradle-build-action@v2 |
|
||||||
with: |
|
||||||
java-version: 17 |
|
||||||
distribution: temurin |
|
||||||
- name: Check for package tangles |
|
||||||
env: |
|
||||||
STRUCTURE101_LICENSEID: ${{ secrets.STRUCTURE101_LICENSEID }} |
|
||||||
run: | |
|
||||||
./gradlew check s101 -Ps101.licenseId="$STRUCTURE101_LICENSEID" --stacktrace |
|
||||||
deploy-artifacts: |
|
||||||
name: Deploy Artifacts |
|
||||||
needs: [ build, test, check-samples, check-tangles ] |
|
||||||
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, test, check-samples, check-tangles ] |
|
||||||
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, test, check-samples, check-tangles ] |
|
||||||
uses: spring-io/spring-security-release-tools/.github/workflows/deploy-schema.yml@v1 |
|
||||||
with: |
|
||||||
should-deploy-schema: ${{ needs.build.outputs.should-deploy-artifacts }} |
|
||||||
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/security/spring-security-core |
|
||||||
slack-announcing-id: spring-security-announcing |
|
||||||
secrets: inherit |
|
||||||
notify_result: |
|
||||||
name: Check for failures |
|
||||||
needs: [ perform-release ] |
|
||||||
if: failure() |
|
||||||
runs-on: ubuntu-latest |
|
||||||
permissions: |
|
||||||
actions: read |
|
||||||
steps: |
|
||||||
- name: Send Slack message |
|
||||||
# Workaround while waiting for Gamesight/slack-workflow-status#38 to be fixed |
|
||||||
# See https://github.com/Gamesight/slack-workflow-status/issues/38 |
|
||||||
uses: sjohnr/slack-workflow-status@v1-beta |
|
||||||
with: |
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }} |
|
||||||
slack_webhook_url: ${{ secrets.SLACK_WEBHOOK_URL }} |
|
||||||
channel: '#spring-security-ci' |
|
||||||
name: 'CI Notifier' |
|
||||||
@ -1,33 +0,0 @@ |
|||||||
name: Deploy Docs |
|
||||||
on: |
|
||||||
push: |
|
||||||
branches-ignore: |
|
||||||
- "gh-pages" |
|
||||||
- "dependabot/**" |
|
||||||
tags: '**' |
|
||||||
repository_dispatch: |
|
||||||
types: request-build-reference # legacy |
|
||||||
#schedule: |
|
||||||
#- cron: '0 10 * * *' # Once per day at 10am UTC |
|
||||||
workflow_dispatch: |
|
||||||
permissions: read-all |
|
||||||
jobs: |
|
||||||
build: |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: github.repository_owner == 'spring-projects' |
|
||||||
steps: |
|
||||||
- name: Checkout |
|
||||||
uses: actions/checkout@v4 |
|
||||||
with: |
|
||||||
ref: docs-build |
|
||||||
fetch-depth: 1 |
|
||||||
- name: Dispatch (partial build) |
|
||||||
if: github.ref_type == 'branch' |
|
||||||
env: |
|
||||||
GH_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }} |
|
||||||
run: gh workflow run deploy-docs.yml -r $(git rev-parse --abbrev-ref HEAD) -f build-refname=${{ github.ref_name }} |
|
||||||
- name: Dispatch (full build) |
|
||||||
if: github.ref_type == 'tag' |
|
||||||
env: |
|
||||||
GH_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }} |
|
||||||
run: gh workflow run deploy-docs.yml -r $(git rev-parse --abbrev-ref HEAD) |
|
||||||
@ -1,40 +0,0 @@ |
|||||||
name: Check Milestone |
|
||||||
on: |
|
||||||
milestone: |
|
||||||
types: [created, opened, edited] |
|
||||||
env: |
|
||||||
DUE_ON: ${{ github.event.milestone.due_on }} |
|
||||||
TITLE: ${{ github.event.milestone.title }} |
|
||||||
permissions: |
|
||||||
contents: read |
|
||||||
jobs: |
|
||||||
spring-releasetrain-checks: |
|
||||||
name: Check DueOn is on a Release Date |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository == 'spring-projects/spring-security' }} |
|
||||||
permissions: |
|
||||||
contents: none |
|
||||||
steps: |
|
||||||
- name: Print Milestone Being Checked |
|
||||||
run: echo "Validating DueOn '$DUE_ON' for milestone '$TITLE'" |
|
||||||
- name: Validate DueOn |
|
||||||
if: env.DUE_ON != '' |
|
||||||
run: | |
|
||||||
export TOOL_VERSION=0.1.1 |
|
||||||
wget "https://repo.maven.apache.org/maven2/io/spring/releasetrain/spring-release-train-tools/$TOOL_VERSION/spring-release-train-tools-$TOOL_VERSION.jar" |
|
||||||
java -cp "spring-release-train-tools-$TOOL_VERSION.jar" io.spring.releasetrain.CheckMilestoneDueOnMain --dueOn "$DUE_ON" --expectedDayOfWeek MONDAY --expectedMondayCount 3 |
|
||||||
notify_result: |
|
||||||
name: Check for failures |
|
||||||
needs: [spring-releasetrain-checks] |
|
||||||
if: failure() |
|
||||||
runs-on: ubuntu-latest |
|
||||||
permissions: |
|
||||||
actions: read |
|
||||||
steps: |
|
||||||
- name: Send Slack message |
|
||||||
uses: Gamesight/slack-workflow-status@v1.3.0 |
|
||||||
with: |
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }} |
|
||||||
slack_webhook_url: ${{ secrets.SLACK_WEBHOOK_URL }} |
|
||||||
channel: '#spring-security-ci' |
|
||||||
name: 'CI Notifier' |
|
||||||
@ -1,44 +0,0 @@ |
|||||||
name: PR Build |
|
||||||
|
|
||||||
on: pull_request |
|
||||||
|
|
||||||
env: |
|
||||||
DEVELOCITY_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }} |
|
||||||
|
|
||||||
permissions: |
|
||||||
contents: read |
|
||||||
|
|
||||||
jobs: |
|
||||||
build: |
|
||||||
name: Build |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository == 'spring-projects/spring-security' }} |
|
||||||
steps: |
|
||||||
- uses: actions/checkout@v4 |
|
||||||
- name: Set up gradle |
|
||||||
uses: spring-io/spring-gradle-build-action@v2 |
|
||||||
with: |
|
||||||
java-version: '17' |
|
||||||
distribution: 'temurin' |
|
||||||
- name: Build with Gradle |
|
||||||
run: ./gradlew clean build --continue |
|
||||||
generate-docs: |
|
||||||
name: Generate Docs |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.repository == 'spring-projects/spring-security' }} |
|
||||||
steps: |
|
||||||
- uses: actions/checkout@v4 |
|
||||||
- name: Set up gradle |
|
||||||
uses: spring-io/spring-gradle-build-action@v2 |
|
||||||
with: |
|
||||||
java-version: '17' |
|
||||||
distribution: 'temurin' |
|
||||||
- name: Run Antora |
|
||||||
run: ./gradlew -PbuildSrc.skipTests=true :spring-security-docs:antora |
|
||||||
- name: Upload Docs |
|
||||||
id: upload |
|
||||||
uses: actions/upload-artifact@v4 |
|
||||||
with: |
|
||||||
name: docs |
|
||||||
path: docs/build/site |
|
||||||
overwrite: true |
|
||||||
@ -1,24 +0,0 @@ |
|||||||
name: Release Scheduler |
|
||||||
on: |
|
||||||
schedule: |
|
||||||
- cron: '15 15 * * MON' # Every Monday at 3:15pm UTC |
|
||||||
workflow_dispatch: |
|
||||||
permissions: read-all |
|
||||||
jobs: |
|
||||||
dispatch_scheduled_releases: |
|
||||||
name: Dispatch scheduled releases |
|
||||||
if: github.repository_owner == 'spring-projects' |
|
||||||
strategy: |
|
||||||
matrix: |
|
||||||
# List of active maintenance branches. |
|
||||||
branch: [ main, 6.0.x, 5.8.x, 5.7.x ] |
|
||||||
runs-on: ubuntu-latest |
|
||||||
steps: |
|
||||||
- name: Checkout |
|
||||||
uses: actions/checkout@v4 |
|
||||||
with: |
|
||||||
fetch-depth: 1 |
|
||||||
- name: Dispatch |
|
||||||
env: |
|
||||||
GH_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }} |
|
||||||
run: gh workflow run update-scheduled-release-version.yml -r ${{ matrix.branch }} |
|
||||||
@ -1,22 +0,0 @@ |
|||||||
name: Trigger Dependabot Auto Merge Forward |
|
||||||
|
|
||||||
on: |
|
||||||
push: |
|
||||||
branches: |
|
||||||
- '*.x' |
|
||||||
|
|
||||||
permissions: read-all |
|
||||||
|
|
||||||
jobs: |
|
||||||
trigger-worflow: |
|
||||||
name: Trigger Workflow |
|
||||||
runs-on: ubuntu-latest |
|
||||||
if: ${{ github.event.commits[0].author.username == 'dependabot[bot]' && github.repository == 'spring-projects/spring-security' }} |
|
||||||
steps: |
|
||||||
- name: Checkout |
|
||||||
id: checkout |
|
||||||
uses: actions/checkout@v4 |
|
||||||
- id: trigger |
|
||||||
env: |
|
||||||
GH_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }} |
|
||||||
run: gh workflow run dependabot-auto-merge-forward.yml -r main |
|
||||||
@ -1,13 +0,0 @@ |
|||||||
name: Update Scheduled Release Version |
|
||||||
|
|
||||||
on: |
|
||||||
workflow_dispatch: # Manual trigger only. Triggered by release-scheduler.yml on main. |
|
||||||
|
|
||||||
permissions: |
|
||||||
contents: read |
|
||||||
|
|
||||||
jobs: |
|
||||||
update-scheduled-release-version: |
|
||||||
name: Update Scheduled Release Version |
|
||||||
uses: spring-io/spring-security-release-tools/.github/workflows/update-scheduled-release-version.yml@v1 |
|
||||||
secrets: inherit |
|
||||||
Loading…
Reference in new issue