✨ Add comprehensive integration test suite with CI/CD pipeline #321
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Global CI | |
| on: ["push", "pull_request", "workflow_dispatch"] | |
| jobs: | |
| build-addon: | |
| name: Build tackle2-addon-analyzer | |
| runs-on: ubuntu-24.04 | |
| outputs: | |
| api_tests_ref: ${{ steps.extract_info.outputs.API_TESTS_REF }} | |
| strategy: | |
| fail-fast: false | |
| steps: | |
| - name: Extract pull request number from PR description | |
| id: extract_info | |
| run: | | |
| ANALYZER_PR=$(echo "${{ github.event.pull_request.body }}" | grep -oP '[A|a]nalyzer.?[P|p][R|r]: \K\d+' || true) | |
| if [ -z "$ANALYZER_PR" ]; then | |
| echo "ANALYZER_REF=${GITHUB_BASE_REF}" >> $GITHUB_OUTPUT | |
| else | |
| echo "ANALYZER_REF=refs/pull/$ANALYZER_PR/merge" >> $GITHUB_OUTPUT | |
| fi | |
| API_TESTS_PR=$(echo "${{ github.event.pull_request.body }}" | grep -oP '[A|a]pi *[T|t]ests *[P|p][R|r]: \K\d+' || true) | |
| if [ -z "$API_TESTS_PR" ]; then | |
| echo "API_TESTS_REF=${GITHUB_BASE_REF}" >> $GITHUB_OUTPUT | |
| else | |
| echo "API_TESTS_REF=refs/pull/$API_TESTS_PR/merge" >> $GITHUB_OUTPUT | |
| fi | |
| - name: checkout | |
| uses: actions/checkout@v3 | |
| - name: Checkout tools repo | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: konveyor/analyzer-lsp | |
| path: analyzer-lsp | |
| ref: "${{ steps.extract_info.outputs.ANALYZER_REF }}" | |
| - uses: actions/checkout@v3 | |
| with: | |
| fetch-depth: 0 | |
| repository: konveyor/tackle2-addon-analyzer | |
| ref: main | |
| path: tackle2-addon-analyzer | |
| - name: Build bundle base image | |
| run: | | |
| podman build -t quay.io/konveyor/jdtls-server-base:latest . | |
| - name: build java provider and save image | |
| working-directory: analyzer-lsp | |
| run: | | |
| make build-java-provider | |
| podman tag java-provider quay.io/konveyor/java-external-provider:latest | |
| podman save -o /tmp/java-provider.tar quay.io/konveyor/java-external-provider:latest | |
| - name: Upload image as artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: java-provider | |
| path: /tmp/java-provider.tar | |
| retention-days: 1 | |
| e2e: | |
| needs: build-addon | |
| uses: konveyor/ci/.github/workflows/global-ci.yml@main | |
| with: | |
| component_name: java-provider | |
| api_tests_ref: "${{ needs.build-addon.outputs.api_tests_ref }}" |