From 4a2b29a9931f2db807e58980eed140539170c23e Mon Sep 17 00:00:00 2001 From: Jerome Prinet Date: Thu, 28 Sep 2023 17:54:06 +0200 Subject: [PATCH] Unify publication workflow --- ... test-terms-of-service-acceptance-run.yml} | 0 README.md | 221 ++++++++++++------ doc/architecture.png | Bin 0 -> 116608 bytes maven-build-scan/load/action.yml | 68 ++++++ maven-build-scan/publish/action.yml | 29 +-- terms-of-service-acceptance/run/action.yml | 9 +- terms-of-service-acceptance/verify/action.yml | 41 ---- 7 files changed, 232 insertions(+), 136 deletions(-) rename .github/workflows/{test-terms-of-service-run.yml => test-terms-of-service-acceptance-run.yml} (100%) create mode 100644 doc/architecture.png create mode 100644 maven-build-scan/load/action.yml delete mode 100644 terms-of-service-acceptance/verify/action.yml diff --git a/.github/workflows/test-terms-of-service-run.yml b/.github/workflows/test-terms-of-service-acceptance-run.yml similarity index 100% rename from .github/workflows/test-terms-of-service-run.yml rename to .github/workflows/test-terms-of-service-acceptance-run.yml diff --git a/README.md b/README.md index c97e951..51dcc74 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,81 @@ A collection of composite Github Actions -## terms-of-service-acceptance/run +## Publish Build Scans® from forked repositories + +### Description +When submitting a pull request, a Github workflow that validates the change is usually triggered, however the Develocity Build Scans® can’t be published for 2 reasons: +- The Develocity Terms of Service have not been agreed to by the contributor +- Workflows from forked repositories do not have access to secrets although an access token is required to publish a Build Scan® + +This repository contains some actions which can be combined together to solve this. + +### Architecture +![Architecture](./doc/architecture.png) + +### Usage + +**Usage**: + +Insert the `Save Build Scan` step after each Maven execution step in the Github workflow called to validate a pull-request (`Build with Maven` here). + +```yaml +[...] + - name: Build with Maven + run: mvn clean package + - name: Save Build Scan + uses: gradle/github-actions/maven-build-scan/save@v1.0 +[...] +``` + +Add a workflow to publish the Build Scans® saved during the previous step + +_Note:_ +Some parameters need to be adjusted here: +- The workflow name (here `Build`) triggered when a pull-request is submitted +- The build workflow filename (here `build.yml`) has to be adjusted to the filename of the workflow using `maven-build-scan/save` +- The Develocity URL (here `https://`) +- The secret name holding the Develocity access key (here ``) + +```yaml +name: Upload Build Scans + +on: + workflow_run: + workflows: [ "Build" ] + types: [ completed ] + issue_comment: + types: [ created ] + +jobs: + + publish-build-scans: + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + steps: + - name: Load data + id: load + uses: gradle/github-actions/maven-build-scan/load@v1.0 + with: + build-workflow-filename: 'build.yml' + - name: Verify Terms of Service acceptance + uses: gradle/github-actions/terms-of-service-acceptance/run@v1.0 + with: + tos-location: 'https://foo.bar/tos.html' + pr-number: ${{ steps.load.outputs.pr-number }} + - name: Publish Maven Build Scans + uses: gradle/github-actions/maven-build-scan/publish@v1.0 + with: + develocity-url: 'https://' + develocity-access-key: ${{ secrets. }} + pr-number: ${{ steps.load.outputs.pr-number }} +``` + +### Implementation details + +#### terms-of-service-acceptance/run A composite action to verify that Develocity Terms of Service have been accepted. @@ -19,22 +93,21 @@ See the [cla-assistant-lite documentation](https://github.com/marketplace/action **Event Triggers**: This action should be configured to respond to the following event triggers: -- `pull_request_target`: to check if the user has previously accepted the Terms of Service when submitting the pull-request. -- `issue-comment`: to check if any new pull-request comment is accepting the Terms of Service. +- `workflow_run`: to check if the user has previously accepted the Terms of Service before publishing a Build Scan®. +- `issue_comment`: to check if any new pull-request comment is accepting the Terms of Service. **Permissions**: The following permissions are required for this action to operate: - `contents: write`: to create/edit the signature file - `pull-requests: write`: to comment the pull-request -- `actions: write`: to update the pull-request status check -- `statuses: write`: to update the pull-request status check **Action inputs**: | Name | Description | Default | |------------------------------------------|------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------| | `tos-location` | Terms Of Service location (URL) | | +| `pr-number` | pull-request number | | | `signature-branch` | *Optional*: Git branch where the signature file will be stored | `${{ github.event.repository.default_branch }}` | | `signature-location` | *Optional*: Signature file location | `.github/develocity-tos.json` | | `pr-comment-tos-acceptance-missing` | *Optional*: pull-request comment added when Terms of Service have not previously been accepted | `Please accept [Develocity Terms Of Service]({0}) to get your pull-request Build Scan published by commenting this pull-request with the following message:` | @@ -45,43 +118,21 @@ The following permissions are required for this action to operate: **Usage**: -```yaml -name: Gradle - Terms of Service acceptance verification - -on: - # issue_comment event is triggered when a pull-request is commented - issue_comment: - types: [ created ] - pull_request_target: +_Note:_ +Some parameters need to be adjusted here: +- The pull-request number (here `steps.load.outputs.pr-number`) has to be adjusted to the value set in the context -jobs: - run-terms-of-service-acceptance: - runs-on: ubuntu-latest - permissions: - # required to update signature file - contents: write - # required to comment pull-request - pull-requests: write - # required to update pull-request status check - actions: write - statuses: write - steps: - - name: Run Terms of Service acceptance verification +```yaml +[...] + - name: Verify Terms of Service acceptance uses: gradle/github-actions/terms-of-service-acceptance/run@v1.0 with: - # tos-location can also point to a file in a Github repository with this syntax: ///blob//tos.html tos-location: 'https://foo.bar/tos.html' - # Optional inputs - #pr-comment-tos-acceptance-missing: 'Please accept [Develocity Terms Of Service]({0}) to get your pull-request Build Scan published by commenting this pull-request with the following message:' - #pr-comment-tos-acceptance-request: 'I have read Develocity Terms Of Service and I hereby accept the Terms' - #pr-comment-tos-acceptance-validation: 'All Contributors have accepted Develocity Terms Of Service.' - #signature-branch: 'main' - #signature-location: '.github/develocity-tos.json' - #white-list: 'bot1,bot2' - #github-token: ${{ secrets.MY_PAT }} + pr-number: ${{ steps.load.outputs.pr-number }} +[...] ``` -## maven-build-scan/save +#### maven-build-scan/save A Composite action to save an unpublished Maven Build Scan®. The action saves unpublished Build Scan® data as a workflow artifact with name `maven-build-scan-data`, which can then be published in a dependent workflow. @@ -115,24 +166,74 @@ Insert the `Save Build Scan` step after each Maven execution step in the Github [...] ``` -## maven-build-scan/publish +#### maven-build-scan/load +A Composite action to load artifacts saved by `maven-build-scan/save`. + +Use this action in a separate workflow to prepare the Build Scan® publication. + +**Dependencies**: + +- [dawidd6/action-download-artifact](https://github.com/marketplace/actions/download-workflow-artifact) + +**Event Triggers**: + +This action should be configured to respond to the following event trigger (see `maven-build-scan/publish` for more details): +- `workflow_run`: to run after the pull-request workflow. +- `issue_comment`: to run after the pull-request is commented. + +The action fails for any other event trigger, or if the comment is different than `recheck` or `I have read Develocity Terms Of Service and I hereby accept the Terms` (can be overridden). + +**Action inputs**: + +| Name | Description | Default | +|-------------------------------------|----------------------------------------------------------------------------------------------|-------------------------------------------------------------------------| +| `build-workflow-filename` | Filename of the workflow using `maven-build-scan/save` (called upon pull-request submission) | | +| `pr-comment-tos-acceptance-request` | *Optional*: pull-request comment to accept the Terms of Service | `I have read Develocity Terms Of Service and I hereby accept the Terms` | + +**Action outputs**: + +| Name | Description | +|--------------|--------------------------------------------------------------| +| `pr-number` | pull-request number saved by `maven-build-scan/save` action | + +**Usage**: + +_Note:_ +Some parameters need to be adjusted here: +- The build workflow filename (here `build.yml`) has to be adjusted to the filename of the workflow using `maven-build-scan/save` + +```yaml +[...] + - name: Load Build Scan data + id: load + uses: gradle/github-actions/maven-build-scan/load@v1.0 + with: + build-workflow-filename: 'build.yml' +[...] +``` + +#### maven-build-scan/publish This action will publish all Maven Build Scans® that have been saved as workflow artifacts by the `maven-build-scan/save` action. -Use this action in a separate workflow with a `workflow_run` event trigger, that will run after an existing pull-request workflow has completed. The action will download any saved Build Scan® and publish them to Develocity. -This event allows access to the repository secrets (_Develocity Access Key_) which is required to publish a Build Scan® to Gradle Enterprise when authentication is enabled. +Use this action in a separate workflow with: +- a `workflow_run` event trigger, that will run after an existing pull-request workflow has completed. +- a `issue_comment` event trigger, that will run after a comment accepting the Terms of Service is added to the pull-request +These event allows access to the repository secrets (_Develocity Access Key_) which is required to publish a Build Scan® to Gradle Enterprise when authentication is enabled. + +The action will download any saved Build Scan® and publish them to Develocity. -The Build Scan® publication requires the Gradle Terms of Service to be accepted, this can be achieved by adding a workflow using the `terms-of-service-acceptance/run` action. -The `terms-of-service-acceptance/verify` action is used to ensure this workflow passed successfully. +The Build Scan® publication requires the Gradle Terms of Service to be accepted, this can be achieved by adding a previous step using the `terms-of-service-acceptance/run` action. **Dependencies**: -- [dawidd6/action-download-artifact](https://github.com/marketplace/actions/download-workflow-artifact) +N/A **Event Triggers**: This action should be configured to respond to the following event trigger: - `workflow_run`: to run after the pull-request workflow. +- `issue_comment`: to run after the pull-request is commented. **Permissions**: @@ -141,44 +242,28 @@ The following permissions are required for this action to operate: **Action inputs**: -| Name | Description | Default | -|-------------------------------|-----------------------------------------------|-----------------------| -| `develocity-url` | Develocity URL | | -| `develocity-access-key` | *Optional*: Develocity access key | | -| `develocity-allow-untrusted` | *Optional*: Develocity allow-untrusted flag | `false` | -| `github-token` | *Optional*: Github token | `${{ github.token }}` | +| Name | Description | Default | +|--------------------------------|---------------------------------------------|-----------------------| +| `develocity-url` | Develocity URL | | +| `pr-number` | pull-request number | | +| `develocity-access-key` | *Optional*: Develocity access key | | +| `develocity-allow-untrusted` | *Optional*: Develocity allow-untrusted flag | `false` | +| `github-token` | *Optional*: Github token | `${{ github.token }}` | **Usage**: _Note:_ Some parameters need to be adjusted here: -- The workflow name (here `PR Check`) has to be adjusted to the `name` used in the workflow run to validate pull-requests -- The workflow-job-name (here `run-terms-of-service-acceptance`) has to be adjusted to the job `name` used in the workflow to verify the Terms of Service approval. - The Develocity URL (here `https://`) - The secret name holding the Develocity access key (here ``) ```yaml -name: Publish Maven Build Scans - -on: - workflow_run: - workflows: [ "PR Check" ] - types: [ completed ] - -jobs: - - publish-build-scans: - runs-on: ubuntu-latest - permissions: - pull-requests: write - steps: - - name: Verify Terms of Service acceptance job passed - uses: gradle/github-actions/terms-of-service-acceptance/verify@v1.0 - with: - terms-of-service-acceptance-workflow-job-name: 'run-terms-of-service-acceptance' +[...] - name: Publish Maven Build Scans uses: gradle/github-actions/maven-build-scan/publish@v1.0 with: develocity-url: 'https://' develocity-access-key: ${{ secrets. }} + pr-number: ${{ steps.load.outputs.pr-number }} +[...] ``` diff --git a/doc/architecture.png b/doc/architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..26d0dd06ff4de2200a4a6f6d264b865a0d262387 GIT binary patch literal 116608 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

Yr1J?mw)U}e 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�GBoc8H>Yi11;`PsD4 zmhGj}xPL$&wlpWat1o*)@ygL4c&ng&9rvO22VZFoxOxWSbN%gh#l0^%28jWsqUf!C z5`cH>p@E~W=|T*A3jO{_iQoHg&JOx>2Us?GzDg1r1GNE}Y?=AoKS`~4D89QUB+sJ) z0}Rs)4R81(rbobY80x#gUqs0|4#+c?5JC>2jtewuxSv0DmnI-l9w9+wpV}87r@Z=Z z2sHJsTrs?Y;`MRax&SC%r-n$9RCQ&a5R;Z5VhGW*GA5+~5}D5` zn(u##$|JA}pTG+!u%dkuLAm_z$hT~#Ark!w#Q%;9P$2=5mYHu?F9Eu9KZPFpUbgG) zG2s}L^?s=&Rde(|^USFKl7@zs2yJ_grUYJ!95=Ln#qUzW4X+@7=*;muV*CCOge1qW z^&j~|0`Ts?GU2b{!9N>_rycp5%!Z`lK9q4PKD4mAY8?hnxq`9i1~M+dkVg)l;LbNl=o zt342W#|_>&Z<5XShXi0oXyD1OV^EQW;UW0_`*UqJrhN+Seg8W_uxxw!;a$_;1#P7u z*e34!K3J|S=lv0g9sW(GN@sC`y`kOz06%8>-EdB@xdl>2=C@huI zy$y;EK!nr8(*C#>PrxczL_bshvk19Oh(tT$MlT@}selP@(7oM9jXj-5ML=?$aJ(@S za02xT!rrIH?>g;^P7)+K62Ff~MuC~=rb^rR_eAsq1RQ5uWeoo2Pi?>(4###Q!Do;F zvMo1V;5h?cd!@iMw6{+Llv{v^wmlQp*c%0!5gNGpK@A9t<+#JZ?|~D!S1w#s@aF*^S4w8bvie|@^z}dE4AyD}Uo*yoMzD5CqL<{DUd}?2U8lbq3&1BH)uUbk% zOtO+^V*vDdrv*lJaVdNyX9O0~30m zJoQ(4poLt4CRgAMdjfHS5rUX+=L6>VMMnipd*1#ho8xte87(fKwDv{xF<8Qb7?1CN z_)g6|3dC>rY#%iE4`}^YCnHtw-UhERMqVi1D{IPmK_VLW!w8hBc1Zw!h=YOA!M?N* zlP^J&{4LGxzav)+mfb1s4C2~4Xv{Y`kz29npP<(nCM z$Zf62yyR&Oh`08KW}d6?l#3s;WKMf((frB_!xKf}2(T zD#LSVU|u??$botU{T|lY5Vt?%zOLAVWhb~T?xt?zWWb8jf+W-Sy(GDRc5`XK0K;Gt z@z3`cbOCa-4C8ER|ElF21Xd*%4doz?!NI7L6J!6q%mMhGwbm;3CT&@YvaB#$S7T(@`3Lm$2;g)=y{h_w*6{9 zSk((4#2LZ*Py+G)tfL4HjYE?7AB6vhwR?O3kFT=GTIK##DgNKT4q%qd3^Mrt{J(or z@?RbU&sfcnkx{unxP3!|40VE*;s4js|7XPiJ%e`H@!#aq|IqP&==fh07kd03>G}T> fi~mc|Y!jK>w5*itWc!2+{P*CF((Uw{`d> $GITHUB_OUTPUT + shell: bash diff --git a/maven-build-scan/publish/action.yml b/maven-build-scan/publish/action.yml index a2d9a83..1b89639 100644 --- a/maven-build-scan/publish/action.yml +++ b/maven-build-scan/publish/action.yml @@ -15,34 +15,13 @@ inputs: description: 'The token used for Github API requests' default: ${{ github.token }} required: false + pr-number: + description: 'PR number' + required: true runs: using: 'composite' steps: - - name: Download Build Scans - uses: dawidd6/action-download-artifact@v2 - env: - ARTIFACT_NAME: 'maven-build-scan-data' - with: - run_id: ${{ github.event.workflow_run.id }} - name: ${{ env.ARTIFACT_NAME }} - path: ${{ env.ARTIFACT_NAME }} - - name: Restore Build Scans - env: - ARTIFACT_NAME: 'maven-build-scan-data' - BUILD_SCAN_DIR: '~/.m2/.gradle-enterprise/build-scan-data/' - run: | - mkdir -p ${{ env.BUILD_SCAN_DIR }} - cp -r ${{ env.ARTIFACT_NAME }}/* ${{ env.BUILD_SCAN_DIR }} - shell: bash - - name: Collect pull-request number - id: pr - env: - BUILD_SCAN_DIR: '~/.m2/.gradle-enterprise/build-scan-data/' - run: | - source $(find ${{ env.BUILD_SCAN_DIR }} -type f -name "pr-number.properties") - echo "PR_NUMBER=$PR_NUMBER" >> $GITHUB_OUTPUT - shell: bash - name: Create Maven Project Structure env: PROJECT_DIR: 'maven-build-scan-publisher' @@ -128,7 +107,7 @@ runs: - name: Comment pull-request with Build Scan links uses: actions/github-script@v6 env: - PR: ${{ steps.pr.outputs.PR_NUMBER }} + PR: ${{ inputs.pr-number }} SCAN_LINKS: ${{ steps.publish.outputs.SCAN_LINKS }} with: github-token: ${{ inputs.github-token }} diff --git a/terms-of-service-acceptance/run/action.yml b/terms-of-service-acceptance/run/action.yml index 7a881cc..34684a9 100644 --- a/terms-of-service-acceptance/run/action.yml +++ b/terms-of-service-acceptance/run/action.yml @@ -5,6 +5,9 @@ inputs: tos-location: description: 'Terms of Service location as an URL (https://foo.com/tos.html) or a Github repository file (///blob//tos.html)' required: true + pr-number: + description: 'pull-request number' + required: true pr-comment-tos-acceptance-missing: description: 'pull-request comment added when Terms of Service are not accepted ({0} in the value will be replaced by tos-location input)' default: 'Please accept [Develocity Terms of Service]({0}) to get your pull-request Build Scan published by commenting this pull-request with the following message:' @@ -32,8 +35,9 @@ runs: using: 'composite' steps: - name: Run Terms of Service acceptance - if: (github.event.comment.body == 'recheck' || github.event.comment.body == ${{ inputs.pr-comment-tos-acceptance-request }}) || github.event_name == 'pull_request_target' || github.event_name == 'pull_request' - uses: contributor-assistant/github-action@v2.3.0 +# uses: contributor-assistant/github-action@v2.3.0 + id: check + uses: jprinet/check-terms-of-service@v1 env: GITHUB_TOKEN: ${{ inputs.github-token }} with: @@ -45,3 +49,4 @@ runs: allowlist: ${{ inputs.white-list }} path-to-document: 'unused' lock-pullrequest-aftermerge: false + pr-number: ${{ inputs.pr-number }} diff --git a/terms-of-service-acceptance/verify/action.yml b/terms-of-service-acceptance/verify/action.yml deleted file mode 100644 index 20b7c9b..0000000 --- a/terms-of-service-acceptance/verify/action.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Verify Terms of Service acceptance -description: Verify that the Terms of Service acceptance workflow has completed successfully - -inputs: - terms-of-service-acceptance-workflow-job-name: - description: 'The name of the workflow job that checks for Terms of Service acceptance' - required: true - github-token: - description: 'The token used for Github API requests' - default: ${{ github.token }} - required: false - -runs: - using: 'composite' - steps: - - name: Verify Terms of Service acceptance - uses: actions/github-script@v6 - env: - sha: ${{ github.event.workflow_run.head_sha }} - with: - github-token: ${{ inputs.github-token }} - result-encoding: string - script: | - // returns most recent check runs first by default - const checkRuns = await github.paginate('GET /repos/${{ github.repository }}/commits/{ref}/check-runs', { - ref: process.env.sha, - per_page: 50 - }); - for await (const cr of checkRuns) { - // check only last execution of the workflow - console.log('Checking execution of ' + cr.name); - if(cr.name == '${{ inputs.terms-of-service-acceptance-workflow-job-name }}') { - console.log('Found execution of ${{ inputs.terms-of-service-acceptance-workflow-job-name }} at ' + cr.completed_at); - if(cr.conclusion == 'success') { - return; - } else { - throw new Error('Found failed execution of ${{ inputs.terms-of-service-acceptance-workflow-job-name }} at ' + cr.completed_at); - } - } - } - throw new Error('No execution found for ${{ inputs.terms-of-service-acceptance-workflow-job-name }}');