name: build on: push: branches: [ master ] jobs: taoyao-signal-server: name: Build taoyao signal server strategy: matrix: runs-on: [ macos-latest, ubuntu-latest, windows-latest ] runs-on: ${{ matrix.runs-on }} steps: - name: Checkout repository uses: actions/checkout@v3 - name: Set up JDK uses: actions/setup-java@v1 with: java-version: 17 - name: Build with Maven run: mvn clean package -P prd -D maven.test.skip=true -B -V --file ./taoyao-signal-server/pom.xml taoyao-client-web: name: Build taoyao client web strategy: matrix: runs-on: [ macos-latest, ubuntu-latest, windows-latest ] runs-on: ${{ matrix.runs-on }} steps: - name: Checkout repository uses: actions/checkout@v3 - name: Use Node.js 16.x uses: actions/setup-node@v3 with: cache: npm node-version: 16.x cache-dependency-path: ./taoyao-client-web - name: Build with NodeJS run: | npm install npm run build working-directory: ./taoyao-client-web taoyao-client-media: name: Build taoyao client media strategy: matrix: runs-on: [ macos-latest, ubuntu-latest, windows-latest ] runs-on: ${{ matrix.runs-on }} steps: - name: Checkout repository uses: actions/checkout@v3 - name: Use Node.js 16.x uses: actions/setup-node@v3 with: cache: npm node-version: 16.x cache-dependency-path: ./taoyao-client-media - name: Build with NodeJS run: | npm install working-directory: ./taoyao-client-media taoyao-client-android: name: Build taoyao client android strategy: matrix: runs-on: [ macos-latest, ubuntu-latest, windows-latest ] runs-on: ${{ matrix.runs-on }} steps: - name: Git config longpaths if: runner.os == 'windows' run: git config --system core.longpaths true - name: Checkout repository uses: actions/checkout@v3 - name: Checkout WebRTC uses: actions/checkout@v3 with: repository: acgist/webrtc path: ./taoyao-client-android/taoyao/media/deps - name: WebRTC Install run: | cd ./taoyao-client-android/taoyao/media/deps/webrtc/lib tar zxvf x86.tar.gz tar zxvf x86_64.tar.gz tar zxvf arm64-v8a.tar.gz tar zxvf armeabi-v7a.tar.gz - name: Checkout libmediasoupclient uses: actions/checkout@v3 with: repository: versatica/libmediasoupclient path: ./taoyao-client-android/taoyao/media/deps/libmediasoupclient - name: Set up JDK uses: actions/setup-java@v1 with: java-version: 17 - name: Setup Android SDK uses: android-actions/setup-android@v2 - name: Build with Gradle if: runner.os != 'windows' run: | cd ./taoyao-client-android/taoyao sh ./gradlew --no-daemon assembleRelease - name: Build with Gradle if: runner.os == 'windows' run: | cd ./taoyao-client-android/taoyao ./gradlew.bat --no-daemon assembleRelease