Skip to content

Report test timeouts into junit output (#886) #567

Report test timeouts into junit output (#886)

Report test timeouts into junit output (#886) #567

Workflow file for this run

name: Release
on:
push:
branches:
- main
jobs:
rust-binaries:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os: [macos-latest, ubuntu-20.04]
include:
- os: macos-latest
platform: macos
artifact: bazelfe-macos
- os: ubuntu-20.04
platform: linux-ubuntu-20.04
artifact: bazelfe-linux-ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Install Protoc
uses: arduino/setup-protoc@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- run: rustup component add rustfmt
# Handle the Linux MUSL cases
- if: ${{ runner.os == 'Linux' }}
uses: awalsh128/cache-apt-pkgs-action@v1
with:
packages: musl-tools # provides musl-gcc
version: 1.0
- if: ${{ runner.os == 'Linux' }}
run: rustup target add x86_64-unknown-linux-musl
- if: ${{ runner.os == 'Linux' }}
uses: actions-rs/cargo@v1
with:
command: build
args: --release --target=x86_64-unknown-linux-musl
- name: Prepare bazel-runner output
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/bazel-runner
if: ${{ runner.os == 'Linux' }}
- name: Prepare jvm-indexer
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/jvm-indexer
if: ${{ runner.os == 'Linux' }}
- name: Prepare bep-junit
run: ./.github/ci_scripts/prepare_output.sh bep-junit-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/bep-junit
if: ${{ runner.os == 'Linux' }}
- if: ${{ runner.os == 'Linux' }}
uses: actions-rs/cargo@v1
with:
command: build
args: --release --all-features --target=x86_64-unknown-linux-musl
- name: Prepare bazel-runner output (not Linux)
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-with-daemon-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/bazel-runner
if: ${{ runner.os == 'Linux' }}
- name: Prepare jvm-indexer (not Linux)
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-with-daemon-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/jvm-indexer
if: ${{ runner.os == 'Linux' }}
- name: Prepare bep-junit (not Linux)
run: ./.github/ci_scripts/prepare_output.sh bep-junit-with-daemon-${{ matrix.platform }} staging-directory target/x86_64-unknown-linux-musl/release/bep-junit
if: ${{ runner.os == 'Linux' }}
# Handle the non-Linux cases
- if: ${{ runner.os != 'Linux' }}
uses: actions-rs/cargo@v1
with:
command: build
args: --release
- name: Prepare bazel-runner output
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-${{ matrix.platform }} staging-directory target/release/bazel-runner
if: ${{ runner.os != 'Linux' }}
- name: Prepare jvm-indexer
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-${{ matrix.platform }} staging-directory target/release/jvm-indexer
if: ${{ runner.os != 'Linux' }}
- name: Prepare bep-junit
run: ./.github/ci_scripts/prepare_output.sh bep-junit-${{ matrix.platform }} staging-directory target/release/bep-junit
if: ${{ runner.os != 'Linux' }}
- if: ${{ runner.os != 'Linux' }}
uses: actions-rs/cargo@v1
with:
command: build
args: --release --all-features
- name: Prepare bazel-runner output (not Linux)
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-with-daemon-${{ matrix.platform }} staging-directory target/release/bazel-runner
if: ${{ runner.os != 'Linux' }}
- name: Prepare jvm-indexer (not Linux)
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-with-daemon-${{ matrix.platform }} staging-directory target/release/jvm-indexer
if: ${{ runner.os != 'Linux' }}
- name: Prepare bep-junit (not Linux)
run: ./.github/ci_scripts/prepare_output.sh bep-junit-with-daemon-${{ matrix.platform }} staging-directory target/release/bep-junit
if: ${{ runner.os != 'Linux' }}
- uses: actions/upload-artifact@master
with:
name: ${{ matrix.artifact }}
path: staging-directory
rust-crossbuild-macos-arm64:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Install Protoc
uses: arduino/setup-protoc@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- run: rustup component add rustfmt
- run: rustup target add aarch64-apple-darwin
- run: SDKROOT=$(xcrun -sdk macosx --show-sdk-path) MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx --show-sdk-platform-version) cargo build --target=aarch64-apple-darwin --release
- name: Prepare bazel-runner output
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-macos-arm64 staging-directory target/aarch64-apple-darwin/release/bazel-runner
- name: Prepare jvm-indexer
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-macos-arm64 staging-directory target/aarch64-apple-darwin/release/jvm-indexer
- name: Prepare bep-junit
run: ./.github/ci_scripts/prepare_output.sh bep-junit-macos-arm64 staging-directory target/aarch64-apple-darwin/release/bep-junit
- run: SDKROOT=$(xcrun -sdk macosx --show-sdk-path) MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx --show-sdk-platform-version) cargo build --target=aarch64-apple-darwin --release --all-features
- name: Prepare bazel-runner output
run: ./.github/ci_scripts/prepare_output.sh bazel-runner-with-daemon-macos-arm64 staging-directory target/aarch64-apple-darwin/release/bazel-runner
- name: Prepare jvm-indexer
run: ./.github/ci_scripts/prepare_output.sh jvm-indexer-with-daemon-macos-arm64 staging-directory target/aarch64-apple-darwin/release/jvm-indexer
- name: Prepare bep-junit
run: ./.github/ci_scripts/prepare_output.sh bep-junit-with-daemon-macos-arm64 staging-directory target/aarch64-apple-darwin/release/bep-junit
- uses: actions/upload-artifact@master
with:
name: bazelfe-macos-arm64
path: staging-directory
make_release:
name: Make release
needs: [rust-binaries, rust-crossbuild-macos-arm64]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Protoc
uses: arduino/setup-protoc@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Download linux ubuntu 20 bazelfe
uses: actions/download-artifact@v1
with:
name: bazelfe-linux-ubuntu-20.04
path: downloads
- name: Download macos bazelfe
uses: actions/download-artifact@v1
with:
name: bazelfe-macos
path: downloads
- name: Download macos arm64 bazelfe
uses: actions/download-artifact@v1
with:
name: bazelfe-macos-arm64
path: downloads
- uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "v0.1-${{ github.run_number }}"
prerelease: false
title: "Auto generated release for bazel-runner"
files: |
downloads/bazel-runner-macos
downloads/bazel-runner-macos.sha256
downloads/bazel-runner-with-daemon-macos
downloads/bazel-runner-with-daemon-macos.sha256
downloads/bazel-runner-macos-arm64
downloads/bazel-runner-macos-arm64.sha256
downloads/bazel-runner-with-daemon-macos-arm64
downloads/bazel-runner-with-daemon-macos-arm64.sha256
downloads/bazel-runner-linux-ubuntu-20.04
downloads/bazel-runner-linux-ubuntu-20.04.sha256
downloads/bazel-runner-with-daemon-linux-ubuntu-20.04
downloads/bazel-runner-with-daemon-linux-ubuntu-20.04.sha256
downloads/jvm-indexer-macos
downloads/jvm-indexer-macos.sha256
downloads/jvm-indexer-macos-arm64
downloads/jvm-indexer-macos-arm64.sha256
downloads/jvm-indexer-linux-ubuntu-20.04
downloads/jvm-indexer-linux-ubuntu-20.04.sha256
downloads/bep-junit-macos
downloads/bep-junit-macos.sha256
downloads/bep-junit-macos-arm64
downloads/bep-junit-macos-arm64.sha256
downloads/bep-junit-linux-ubuntu-20.04
downloads/bep-junit-linux-ubuntu-20.04.sha256
id: "automatic_releases"