Skip to content

[2201.10.x] Add PR full build check for 2201.10.x #8966

[2201.10.x] Add PR full build check for 2201.10.x

[2201.10.x] Add PR full build check for 2201.10.x #8966

name: CI Full Build Ubuntu
on:
pull_request:
branches:
- master
- 2201.11.x
- 2201.10.x
jobs:
build-lang:
name: Build Ballerina Lang
runs-on: ubuntu-latest
timeout-minutes: 120
concurrency:
group: ${{ github.head_ref }}-FBP-lang
cancel-in-progress: true
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17.0.7'
- name: Checkout To Lang Branch
run: |
git checkout ${{ github.event.inputs.ballerina_lang_branch }}
- name: Get Lang Version
id: lang-version
run: |
VERSION=$((grep -w "version" | cut -d= -f2) < gradle.properties)
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Build ballerina-lang
run: |
./gradlew clean build -x check publishToMavenLocal --stacktrace --scan
- name: Archive Lang Artifacts
uses: actions/upload-artifact@v4
with:
name: Ballerina Lang Artifacts
path: ~/.m2/
outputs:
lang_version: ${{ steps.lang-version.outputs.version }}
build-stdlib-level:
needs: build-lang
name: Build Stdlib Level
runs-on: ubuntu-latest
timeout-minutes: 120
concurrency:
group: ${{ github.head_ref }}-FBP-stdlib-${{ matrix.level }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
level: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17.0.7'
- name: Setup NodeJs
uses: actions/setup-node@v4
with:
node-version: 10.22.1
- name: Download Ballerina Lang Artifacts
uses: actions/download-artifact@v4
with:
name: Ballerina Lang Artifacts
path: ~/.m2/
- name: Build
run: |
python -u dependabot/full_build_pipeline.py ./ --lang-version ${{ needs.build-lang.outputs.lang-version }} \
--build-released-versions --patch-level $PATCH_LEVEL --build-level ${{ matrix.level }} --skip-build-distribution \
--continue-on-error --remove-after-build
env:
packageUser: ${{ secrets.BALLERINA_BOT_USERNAME }}
packagePAT: ${{ secrets.BALLERINA_BOT_TOKEN }}
devCentralToken: ${{ secrets.BALLERINA_DEV_CENTRAL_ACCESS_TOKEN }}
CLIENT_ID: ${{ secrets.CLIENT_ID }}
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
REFRESH_TOKEN: ${{ secrets.REFRESH_TOKEN }}
TEST_MODE_ACTIVE: true
build-distribution:
needs: build-lang
name: Build Ballerina Distribution
runs-on: ubuntu-latest
timeout-minutes: 120
concurrency:
group: ${{ github.head_ref }}-FBP-distribution
cancel-in-progress: true
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17.0.7'
- name: Download Ballerina Lang Artifacts
uses: actions/download-artifact@v4
with:
name: Ballerina Lang Artifacts
path: ~/.m2/
- name: Build
run: |
python -u dependabot/full_build_pipeline.py ./ --lang-version ${{ needs.build-lang.outputs.lang-version }} \
--patch-level $PATCH_LEVEL --only-build-distribution --continue-on-error
env:
packageUser: ${{ secrets.BALLERINA_BOT_USERNAME }}
packagePAT: ${{ secrets.BALLERINA_BOT_TOKEN }}
devCentralToken: ${{ secrets.BALLERINA_DEV_CENTRAL_ACCESS_TOKEN }}
TEST_MODE_ACTIVE: true