You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.5 KiB
62 lines
2.5 KiB
name: Build and deploy snapshot |
|
on: |
|
push: |
|
branches: |
|
- 6.1.x |
|
concurrency: |
|
group: ${{ github.workflow }}-${{ github.ref }} |
|
jobs: |
|
build-and-deploy-snapshot: |
|
if: ${{ github.repository == 'spring-projects/spring-framework' }} |
|
name: Build and deploy snapshot |
|
runs-on: ubuntu-latest |
|
steps: |
|
- name: Set up Java |
|
uses: actions/setup-java@v4 |
|
with: |
|
distribution: 'liberica' |
|
java-version: 17 |
|
- name: Check out code |
|
uses: actions/checkout@v4 |
|
- name: Set up Gradle |
|
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 |
|
with: |
|
cache-read-only: false |
|
- name: Configure Gradle properties |
|
shell: bash |
|
run: | |
|
mkdir -p $HOME/.gradle |
|
echo 'systemProp.user.name=spring-builds+github' >> $HOME/.gradle/gradle.properties |
|
echo 'systemProp.org.gradle.internal.launcher.welcomeMessageEnabled=false' >> $HOME/.gradle/gradle.properties |
|
echo 'org.gradle.daemon=false' >> $HOME/.gradle/gradle.properties |
|
echo 'org.gradle.daemon=4' >> $HOME/.gradle/gradle.properties |
|
- name: Build and publish |
|
id: build |
|
env: |
|
CI: 'true' |
|
GRADLE_ENTERPRISE_URL: 'https://ge.spring.io' |
|
DEVELOCITY_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_SECRET_ACCESS_KEY }} |
|
run: ./gradlew -PdeploymentRepository=$(pwd)/deployment-repository build publishAllPublicationsToDeploymentRepository |
|
- name: Deploy |
|
uses: spring-io/artifactory-deploy-action@v0.0.1 |
|
with: |
|
uri: 'https://repo.spring.io' |
|
username: ${{ secrets.ARTIFACTORY_USERNAME }} |
|
password: ${{ secrets.ARTIFACTORY_PASSWORD }} |
|
build-name: ${{ format('spring-framework-{0}', github.ref_name)}} |
|
repository: 'libs-snapshot-local' |
|
folder: 'deployment-repository' |
|
signing-key: ${{ secrets.GPG_PRIVATE_KEY }} |
|
signing-passphrase: ${{ secrets.GPG_PASSPHRASE }} |
|
artifact-properties: | |
|
/**/framework-api-*.zip::zip.name=spring-framework,zip.deployed=false |
|
/**/framework-api-*-docs.zip::zip.type=docs |
|
/**/framework-api-*-schema.zip::zip.type=schema |
|
- name: Send notification |
|
uses: ./.github/actions/send-notification |
|
if: always() |
|
with: |
|
webhook-url: ${{ secrets.GOOGLE_CHAT_WEBHOOK_URL }} |
|
status: ${{ job.status }} |
|
build-scan-url: ${{ steps.build.outputs.build-scan-url }} |
|
run-name: ${{ format('{0} | Linux | Java 17', github.ref_name) }} |