From d8b3fb10fd563bb1f03678aabc0f385856538a9a Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Wed, 9 Oct 2024 21:27:11 +0530 Subject: [PATCH 1/9] Added code to allow developer to input LSP4IJ PR number --- .github/workflows/build.yaml | 46 ++++++++++++++++++++++++++++++++---- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 8364f04f2..c5af1e6a7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,6 +29,11 @@ on: required: true type: boolean default: false + lsp4ijPrNumber: + description: 'If you checked this, please make sure to enter only the LSP4IJ PR number below.' + required: true + type: boolean + default: false refLsp4ij: description: 'Reference/branch for Lsp4ij checkout' type: string @@ -45,7 +50,40 @@ on: branches: [ main ] jobs: + fetch_merge_commit_sha_from_lsp4ij_PR: + runs-on: ubuntu-latest + outputs: + pr_details: ${{ steps.extract.outputs.pr_details }} + checkout_name: ${{ steps.extract.outputs.checkout_name }} + env: + API_URL: https://api.github.com/repos/redhat-developer/lsp4ij/pulls + REF_LSP4IJ: ${{ inputs.refLsp4ij }} + LSP4IJ_BRANCH: ${{ inputs.lsp4ijBranch }} + name: Fetch Commit SHA ${{ inputs.refLsp4ij || '' }} + steps: + - name: Extract Merge Commit SHA + shell: bash + id: extract + run: | + pr_details="${{ env.REF_LSP4IJ }}" + checkout_name="${{ env.LSP4IJ_BRANCH }}" + + if [ "${{ inputs.lsp4ijPrNumber }}" == "true" ]; then + url="${{ env.API_URL }}/${{ env.REF_LSP4IJ }}" + pr_detail=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" "$url") + pr_details=$(jq -r '.merge_commit_sha' <<< "$pr_detail" | xargs) + echo "Merge commit SHA of PR ${{ env.REF_LSP4IJ }}: $pr_details" + checkout_name="${{ env.REF_LSP4IJ }}" + else + [ -z "$pr_details" ] && echo "No LSP4IJ checkout found. Using default case." || echo "Merge Commit SHA/Branch Name/Tag : $pr_details" + fi + + # Set output for further steps + echo "pr_details=$pr_details" >> $GITHUB_OUTPUT + echo "checkout_name=$checkout_name" >> $GITHUB_OUTPUT + build: + needs: fetch_merge_commit_sha_from_lsp4ij_PR runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -63,8 +101,8 @@ jobs: reportName: windows-test-report env: USE_LOCAL_PLUGIN: ${{ inputs.useLocalPlugin || false }} - REF_LSP4IJ: ${{ inputs.refLsp4ij }} - LSP4IJ_BRANCH: ${{ inputs.lsp4ijBranch || 'default' }} + REF_LSP4IJ: ${{ needs.fetch_merge_commit_sha_from_lsp4ij_PR.outputs.pr_details }} + LSP4IJ_BRANCH: ${{ needs.fetch_merge_commit_sha_from_lsp4ij_PR.outputs.checkout_name }} REF_LTI_TAG: ${{ inputs.refLTITag }} steps: - name: Configure pagefile @@ -108,7 +146,7 @@ jobs: if: ${{ runner.os == 'Linux' && !failure() }} uses: actions/upload-artifact@v4.3.4 with: - name: liberty-tools-intellij-LTI-${{ env.REF_LTI_TAG || 'default' }}-LSP4IJ-${{ env.LSP4IJ_BRANCH }} + name: liberty-tools-intellij-LTI-${{ env.REF_LTI_TAG || 'default' }}-LSP4IJ-${{ env.LSP4IJ_BRANCH || 'default' }} path: | ./**/*liberty-tools-intellij*.zip ./**/libs/*liberty-tools-intellij*.jar @@ -122,6 +160,6 @@ jobs: if: ${{ failure() && steps.run_tests.conclusion == 'failure' }} uses: actions/upload-artifact@v4.3.4 with: - name: ${{ matrix.reportName }}-LTI-${{ env.REF_LTI_TAG || 'default' }}-LSP4IJ-${{ env.LSP4IJ_BRANCH }} + name: ${{ matrix.reportName }}-LTI-${{ env.REF_LTI_TAG || 'default' }}-LSP4IJ-${{ env.LSP4IJ_BRANCH || 'default' }} path: | liberty-tools-intellij/build/reports/ \ No newline at end of file From 268fef1ca8ab038c2fc005b774fc632b3e8eaed5 Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Thu, 10 Oct 2024 13:09:19 +0530 Subject: [PATCH 2/9] change code to specify correct artifact name --- .github/workflows/build.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c5af1e6a7..513db3b1b 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -59,7 +59,7 @@ jobs: API_URL: https://api.github.com/repos/redhat-developer/lsp4ij/pulls REF_LSP4IJ: ${{ inputs.refLsp4ij }} LSP4IJ_BRANCH: ${{ inputs.lsp4ijBranch }} - name: Fetch Commit SHA ${{ inputs.refLsp4ij || '' }} + name: Fetch Commit ${{ inputs.refLsp4ij || '' }} steps: - name: Extract Merge Commit SHA shell: bash @@ -74,6 +74,9 @@ jobs: pr_details=$(jq -r '.merge_commit_sha' <<< "$pr_detail" | xargs) echo "Merge commit SHA of PR ${{ env.REF_LSP4IJ }}: $pr_details" checkout_name="${{ env.REF_LSP4IJ }}" + elif [ -z "$checkout_name" ]; then + echo "Merge Commit SHA/Branch Name/Tag : $pr_details" + checkout_name="${{ env.REF_LSP4IJ }}" else [ -z "$pr_details" ] && echo "No LSP4IJ checkout found. Using default case." || echo "Merge Commit SHA/Branch Name/Tag : $pr_details" fi From 642a14654a835c830c8e28cd737e1d8a1091cbef Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Thu, 10 Oct 2024 17:01:01 +0530 Subject: [PATCH 3/9] Added documentation for the change --- .github/workflows/build.yaml | 2 +- docs/LSP4IJ-Continuous-Integration.md | 8 ++++++++ .../Allow-developer-to-input-PR-number.png | Bin 0 -> 93955 bytes 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 docs/images/Allow-developer-to-input-PR-number.png diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 513db3b1b..b96faabed 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -30,7 +30,7 @@ on: type: boolean default: false lsp4ijPrNumber: - description: 'If you checked this, please make sure to enter only the LSP4IJ PR number below.' + description: 'If you checked this, please make sure to enter only the LSP4IJ PR number below' required: true type: boolean default: false diff --git a/docs/LSP4IJ-Continuous-Integration.md b/docs/LSP4IJ-Continuous-Integration.md index 9731e7a56..ad94e8155 100644 --- a/docs/LSP4IJ-Continuous-Integration.md +++ b/docs/LSP4IJ-Continuous-Integration.md @@ -218,6 +218,14 @@ For example, if you want to trigger the Build Workflow from the `main` branch of Example +If you want to check out LSP4IJ based on a PR number, you can check the box labeled `If you checked this, please make sure to enter only the LSP4IJ PR number below` and specify the PR number in the provided text field labeled `Reference/branch for LSP4IJ checkout`. Additionally, you can specify the tag or branch of the `liberty-tools-intellij` repository to be used. + +> NOTE: Make sure to enable the checkbox labeled `Use lsp4ij locally` as well for this case. + +For example, if you want to trigger the Build Workflow from a branch of the LTI repository and build against LSP4IJ PR number `500` while using the `main` branch of LTI, you would configure it as follows: + +Example + # How to specify LTI tags or branches in CI-CD builds The **LTI Tags/Branches** must be specified in two locations within the `cronJob.yaml` file. diff --git a/docs/images/Allow-developer-to-input-PR-number.png b/docs/images/Allow-developer-to-input-PR-number.png new file mode 100644 index 0000000000000000000000000000000000000000..7984d15f70ae849effa8ec4546fb5c3b949cdc75 GIT binary patch literal 93955 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�G6Gq0>+j7wp;D*0|j6x9iC7ir|cn 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 Date: Thu, 10 Oct 2024 17:23:12 +0530 Subject: [PATCH 4/9] fixed bug in displaying message --- .github/workflows/build.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index b96faabed..3bde120a0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -78,7 +78,11 @@ jobs: echo "Merge Commit SHA/Branch Name/Tag : $pr_details" checkout_name="${{ env.REF_LSP4IJ }}" else - [ -z "$pr_details" ] && echo "No LSP4IJ checkout found. Using default case." || echo "Merge Commit SHA/Branch Name/Tag : $pr_details" + if [ -z "$pr_details" ]; then + echo "No LSP4IJ checkout found. Using default case." + else + echo "Merge Commit SHA/Branch Name/Tag : $pr_details" + fi fi # Set output for further steps From ff9d671b570ecba316bac920279a436b4ae29bcc Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Thu, 10 Oct 2024 17:26:56 +0530 Subject: [PATCH 5/9] made a change --- .github/workflows/build.yaml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 3bde120a0..148f9009c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -77,12 +77,10 @@ jobs: elif [ -z "$checkout_name" ]; then echo "Merge Commit SHA/Branch Name/Tag : $pr_details" checkout_name="${{ env.REF_LSP4IJ }}" + elif [ -z "$pr_details" ]; then + echo "No LSP4IJ checkout found. Using default case." else - if [ -z "$pr_details" ]; then - echo "No LSP4IJ checkout found. Using default case." - else - echo "Merge Commit SHA/Branch Name/Tag : $pr_details" - fi + echo "Merge Commit SHA/Branch Name/Tag : $pr_details" fi # Set output for further steps From ac37b47021788d68160620494ca23330539bb45d Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Thu, 10 Oct 2024 20:30:59 +0530 Subject: [PATCH 6/9] Added warning for PR having merge commit sha has null --- .github/workflows/build.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 148f9009c..37caea2d8 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -74,11 +74,14 @@ jobs: pr_details=$(jq -r '.merge_commit_sha' <<< "$pr_detail" | xargs) echo "Merge commit SHA of PR ${{ env.REF_LSP4IJ }}: $pr_details" checkout_name="${{ env.REF_LSP4IJ }}" + if [[ "$pr_details" == "null" ]]; then + echo "::warning file=::The merge commit SHA of the entered PR is null. Please try again later or use a different PR number." + fi + elif [ -z "$pr_details" ]; then + echo "No LSP4IJ checkout found. Using default case." elif [ -z "$checkout_name" ]; then echo "Merge Commit SHA/Branch Name/Tag : $pr_details" checkout_name="${{ env.REF_LSP4IJ }}" - elif [ -z "$pr_details" ]; then - echo "No LSP4IJ checkout found. Using default case." else echo "Merge Commit SHA/Branch Name/Tag : $pr_details" fi From 606dac12ddf8d8827512750d7a42956bf39921c7 Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Fri, 15 Nov 2024 10:21:02 +0530 Subject: [PATCH 7/9] changed description to proper way Co-authored-by: Trevor Crawford --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 37caea2d8..375ebd959 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -30,7 +30,7 @@ on: type: boolean default: false lsp4ijPrNumber: - description: 'If you checked this, please make sure to enter only the LSP4IJ PR number below' + description: 'Run build with an LSP4IJ PR. Make sure to enter the LSP4IJ PR number in the \"Reference/branch/PR for LSP4IJ checkout\" input box.' required: true type: boolean default: false From d8e796f2ee51e92fa3d858377bc89e02ddac7a42 Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Fri, 15 Nov 2024 10:21:49 +0530 Subject: [PATCH 8/9] Updated description for LSP4IJ Checkout Co-authored-by: Trevor Crawford --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 375ebd959..9840839e9 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -35,7 +35,7 @@ on: type: boolean default: false refLsp4ij: - description: 'Reference/branch for Lsp4ij checkout' + description: 'Reference/branch/PR for LSP4IJ checkout' type: string required: true default: main From 299ee2df14f7ef63d6d72ae78f3206605f5727a9 Mon Sep 17 00:00:00 2001 From: vaisakhkannan <133869023+vaisakhkannan@users.noreply.github.com> Date: Fri, 15 Nov 2024 10:24:37 +0530 Subject: [PATCH 9/9] Updated the doc to specify how developer can use PR number for checkout Co-authored-by: Trevor Crawford --- docs/LSP4IJ-Continuous-Integration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/LSP4IJ-Continuous-Integration.md b/docs/LSP4IJ-Continuous-Integration.md index ad94e8155..0b0a44799 100644 --- a/docs/LSP4IJ-Continuous-Integration.md +++ b/docs/LSP4IJ-Continuous-Integration.md @@ -218,7 +218,7 @@ For example, if you want to trigger the Build Workflow from the `main` branch of Example -If you want to check out LSP4IJ based on a PR number, you can check the box labeled `If you checked this, please make sure to enter only the LSP4IJ PR number below` and specify the PR number in the provided text field labeled `Reference/branch for LSP4IJ checkout`. Additionally, you can specify the tag or branch of the `liberty-tools-intellij` repository to be used. +If you want to check out LSP4IJ based on a PR number, you can check the box labeled `Run build with an LSP4IJ PR.` and specify the PR number in the provided text field labeled `Reference/branch/PR for LSP4IJ checkout`. Additionally, you can specify the tag or branch of the `liberty-tools-intellij` repository to be used. > NOTE: Make sure to enable the checkbox labeled `Use lsp4ij locally` as well for this case.