Skip to content

Migrate to Gradle build #600

Migrate to Gradle build

Migrate to Gradle build #600

Workflow file for this run

name: CI
on:
push:
branches-ignore:
- "automated/dependency_version_update"
- "automated/dependency_version_update_tmp"
repository_dispatch:
types:
check_connector_for_breaking_changes
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# Setup Ballerina Environment
- name: Set Up Ballerina
uses: ballerina-platform/[email protected]
with:
version: latest
# Build Ballerina Project
- name: Ballerina Build
run: bal pack ./ballerina
env:
JAVA_HOME: /usr/lib/jvm/default-jvm
# Build Module Examples
- name: Ballerina Examples Build
run: chmod +x ./examples/build.sh && ./examples/build.sh build
env:
JAVA_HOME: /usr/lib/jvm/default-jvm
# Test Ballerina Project
- name: Ballerina Test
working-directory: ./ballerina
run: bal test --test-report --code-coverage --coverage-format=xml
env:
JAVA_OPTS: -DBALLERINA_DEV_COMPILE_BALLERINA_ORG=true
CLIENT_ID: ${{ secrets.CLIENT_ID }}
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
REFRESH_TOKEN: ${{ secrets.REFRESH_TOKEN }}
REFRESH_URL: ${{ secrets.REFRESH_URL }}
RECIPIENT: ${{ secrets.RECIPIENT }}
SENDER: ${{ secrets.SENDER }}
CC: ${{ secrets.CC }}
ATTACHMENT_PATH: ${{ secrets.ATTACHMENT_PATH }}
ATTACHMENT_CONTENT_TYPE: ${{ secrets.ATTACHMENT_CONTENT_TYPE }}
INLINE_IMAGE_PATH: ${{ secrets.INLINE_IMAGE_PATH }}
INLINE_IMAGE_NAME: ${{ secrets.INLINE_IMAGE_NAME }}
IMAGE_CONTENT_TYPE: ${{ secrets.IMAGE_CONTENT_TYPE }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
# Send notification when build fails
- name: Alert notifier on failure
if: failure() && (github.event.action == 'check_connector_for_breaking_changes')
run: |
curl -X POST \
'https://api.github.com/repos/ballerina-platform/ballerina-release/dispatches' \
--header 'Accept: application/vnd.github.v3+json' \
--header 'Authorization: Bearer ${{ secrets.BALLERINA_BOT_TOKEN }}' \
--data-raw '{
"event_type": "notify-ballerinax-connector-build-failure",
"client_payload": {
"repoName": "module-ballerinax-googleapis.gmail",
"workflow": "CI"
}
}'