Skip to content

feat(ci): migrates circleci to github actions #16

feat(ci): migrates circleci to github actions

feat(ci): migrates circleci to github actions #16

name: Build and Test
on: [push]
jobs:
build:
runs-on: ubuntu-latest
container:
image: openjdk:8-jdk
env:
_JAVA_OPTIONS: "-Xmx3G -Xms2G"
defaults:
run:
working-directory: .
steps:
- uses: actions/checkout@v2
- name: Setup System Tools
run: |
apt update -y
apt install -y gnupg2 curl
- name: Install Node.js
run: |
curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
apt-get install -y nodejs
- name: Check Node.js version
run: node --version
- name: Verify files
run: |
curl -sSL https://secchannel.rsk.co/SUPPORT.asc | gpg2 --import -
gpg2 --verify SHA256SUMS.asc && sha256sum --check SHA256SUMS.asc
- name: List Files in gradle Directory
run: ls -al gradle && ls -al gradle/wrapper
- uses: actions/cache@v3
name: Cache Gradle
with:
path: |
.gradle/caches
gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/*gradle/wrapper/gradle-wrapper.jar') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build
run: |
./configure.sh
./gradlew --no-daemon dependencies
./gradlew --no-daemon --stacktrace build -x test
ls -la ./gradle/wrapper/gradle-wrapper.jar
tests:
needs: build
runs-on: ubuntu-latest
container:
image: openjdk:8-jdk
defaults:
run:
working-directory: .
steps:
- uses: actions/checkout@v2
- name: Setup System Tools
run: |
apt update -y
apt install -y curl
- name: Install Node.js
run: |
curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
apt-get install -y nodejs
- name: Check Node.js version
run: node --version
- uses: actions/cache@v3
name: Restore gradle cache
with:
path: |
.gradle/caches
gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/*gradle/wrapper/gradle-wrapper.jar') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Check Working Directory
run: pwd
- name: List Files in Current Directory
run: ls -al
- name: List Files in gradle Directory
run: ls -al gradle && ls -al gradle/wrapper
- name: Unit tests
run: |
chmod +x ./gradlew
./gradlew --no-daemon --stacktrace test
- name: Integration tests
run: |
chmod +x ./gradlew
./gradlew --no-daemon --stacktrace test
- name: Save test results
run: |
mkdir -p ~/junit/
find rskj-core/build/test-results -type f -name "*.xml" -exec cp {} ~/junit/ \;
if: always()
# mining-tests:
# needs: tests
# runs-on: ubuntu-latest
# container:
# image: alpine:3.10
# defaults:
# run:
# working-directory: .
# steps:
# - name: Setup System Tools
# run: |
# apt update -y
# apt install -y curl jq