1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- on:
- pull_request:
- push:
- branches:
- - dev
- env:
- LOG_DIR: /tmp/dolphinscheduler
- name: Unit Test
- jobs:
- build:
- name: Build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
-
- - name: checkout submodules
- shell: bash
- run: |
- git submodule sync --recursive
- git -c protocol.version=2 submodule update --init --force --recursive --depth=1
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-
- - name: Bootstrap database
- run: |
- sed -i "s/: root/: test/g" $(pwd)/docker/docker-swarm/docker-compose.yml
- docker-compose -f $(pwd)/docker/docker-swarm/docker-compose.yml create --force-recreate dolphinscheduler-zookeeper dolphinscheduler-postgresql
- sudo cp $(pwd)/sql/dolphinscheduler-postgre.sql $(docker volume inspect docker-swarm_dolphinscheduler-postgresql-initdb | grep "Mountpoint" | awk -F "\"" '{print $4}')
- docker-compose -f $(pwd)/docker/docker-swarm/docker-compose.yml up -d dolphinscheduler-zookeeper dolphinscheduler-postgresql
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
- with:
- java-version: 1.8
- - name: Git fetch unshallow
- run: |
- git fetch --unshallow
- git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
- git fetch origin
- - name: Compile
- run: |
- export MAVEN_OPTS='-Dmaven.repo.local=.m2/repository -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit -Xmx5g'
- mvn test -B -Dmaven.test.skip=false
- - name: Upload coverage report to codecov
- run: |
- CODECOV_TOKEN="09c2663f-b091-4258-8a47-c981827eb29a" bash <(curl -s https://codecov.io/bash)
- - name: Run SonarCloud Analysis
- run: >
- mvn verify --batch-mode
- org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.1.1688:sonar
- -Dsonar.coverage.jacoco.xmlReportPaths=target/site/jacoco/jacoco.xml
- -Dmaven.test.skip=true
- -Dsonar.host.url=https://sonarcloud.io
- -Dsonar.organization=apache
- -Dsonar.core.codeCoveragePlugin=jacoco
- -Dsonar.projectKey=apache-dolphinscheduler
- -Dsonar.login=e4058004bc6be89decf558ac819aa1ecbee57682
- -Dsonar.exclusions=dolphinscheduler-ui/src/**/i18n/locale/*.js
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- - name: Collect logs
- run: |
- mkdir -p ${LOG_DIR}
- docker-compose -f $(pwd)/docker/docker-swarm/docker-compose.yml logs dolphinscheduler-postgresql > ${LOG_DIR}/db.txt
- continue-on-error: true
|