1+ name : Release PerfTest
2+
3+ on :
4+ workflow_dispatch :
5+
6+ jobs :
7+ build :
8+ runs-on : ubuntu-22.04
9+
10+ steps :
11+ - uses : actions/checkout@v4
12+ - name : Evaluate release type
13+ run : ci/evaluate-release.sh
14+ - name : Set up JDK
15+ uses : actions/setup-java@v3
16+ with :
17+ distribution : ' temurin'
18+ java-version : ' 11'
19+ cache : ' maven'
20+ server-id : ${{ env.maven_server_id }}
21+ server-username : MAVEN_USERNAME
22+ server-password : MAVEN_PASSWORD
23+ gpg-private-key : ${{ secrets.MAVEN_GPG_PRIVATE_KEY }}
24+ gpg-passphrase : MAVEN_GPG_PASSPHRASE
25+ - name : Release PerfTest (GA)
26+ if : ${{ env.ga_release == 'true' }}
27+ run : |
28+ git config user.name "rabbitmq-ci"
29+ git config user.email "[email protected] " 30+ ci/release-perf-test.sh
31+ env :
32+ MAVEN_USERNAME : ${{ secrets.OSSRH_USERNAME }}
33+ MAVEN_PASSWORD : ${{ secrets.OSSRH_TOKEN }}
34+ MAVEN_GPG_PASSPHRASE : ${{ secrets.MAVEN_GPG_PASSPHRASE }}
35+ - name : Release PerfTest (Milestone/RC)
36+ if : ${{ env.ga_release != 'true' }}
37+ run : |
38+ git config user.name "rabbitmq-ci"
39+ git config user.email "[email protected] " 40+ ci/release-perf-test.sh
41+ env :
42+ MAVEN_USERNAME : ' '
43+ MAVEN_PASSWORD : ${{ secrets.PACKAGECLOUD_TOKEN }}
44+ MAVEN_GPG_PASSPHRASE : ${{ secrets.MAVEN_GPG_PASSPHRASE }}
45+ - name : Package Perf Test
46+ run : ci/package-perf-test.sh
47+ env :
48+ MAVEN_GPG_PASSPHRASE : ${{ secrets.MAVEN_GPG_PASSPHRASE }}
49+ - name : Push to GitHub Release (GA)
50+ uses : softprops/action-gh-release@v1
51+ with :
52+ files : packages/*
53+ name : ${{ env.release_name }}
54+ tag_name : ${{ env.tag_name }}
55+ target_commitish : ${{ env.release_branch }}
56+ prerelease : ${{ env.prerelease }}
57+ token : ${{ secrets.CI_GITHUB_TOKEN }}
58+ repository : rabbitmq/rabbitmq-perf-test
59+ - name : Trigger Perf Test Docker image build (GA)
60+ uses : peter-evans/repository-dispatch@v2
61+ if : ${{ env.ga_release == 'true' }}
62+ with :
63+ event-type : new_snapshot
64+ client-payload : >-
65+ {"archive_url" : "https://github.com/rabbitmq/rabbitmq-perf-test/releases/download/${{ env.tag_name }}/perf-test-${{ env.release_version}}.jar",
66+ "tags": "pivotalrabbitmq/perf-test:latest,pivotalrabbitmq/perf-test:${{ env.release_version }}"}
67+ - name : Trigger Perf Test Docker image build (Milestone/RC)
68+ uses : peter-evans/repository-dispatch@v2
69+ if : ${{ env.ga_release != 'true' }}
70+ with :
71+ event-type : new_snapshot
72+ client-payload : >-
73+ {"archive_url" : "https://github.com/rabbitmq/rabbitmq-perf-test/releases/download/${{ env.tag_name }}/perf-test-${{ env.release_version}}.jar",
74+ "tags": "pivotalrabbitmq/perf-test:${{ env.release_version }}"}
75+ - name : Generate documentation
76+ run : |
77+ rm -rf target/generated-docs
78+ make doc
79+ - name : Publish documentation to GitHub Pages
80+ run : |
81+ git config user.name "rabbitmq-ci"
82+ git config user.email "[email protected] " 83+ ci/publish-documentation-to-github-pages.sh
84+ - name : Prepare worker
85+ if : ${{ env.ga_release == 'true' }}
86+ run : |
87+ mkdir ci/worker/public
88+ cp target/generated-docs/index.html ci/worker/public
89+ - name : Publish documentation to Cloudflare (GA)
90+ uses :
cloudflare/[email protected] 91+ if : ${{ env.ga_release == 'true' }}
92+ with :
93+ apiToken : ${{ secrets.CLOUDFLARE_API_TOKEN }}
94+ preCommands : npm i -D @cloudflare/kv-asset-handler
95+ command : deploy --name perftest --route https://perftest.rabbitmq.com/*
96+ workingDirectory : ' ci/worker'
0 commit comments