Skip to content

What will happen

What will happen #201

Workflow file for this run

# @file SBCL-test.yml
---
name: SBCL-Tests
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Download sbcl
run: sudo apt install sbcl
- name: Download quicklisp
run: curl -o quicklisp.lisp 'https://beta.quicklisp.org/quicklisp.lisp'
- name: Install quicklisp
run: |
sbcl --noinform --non-interactive --load quicklisp.lisp --eval "(quicklisp-quickstart:install :path \"$GITHUB_WORKSPACE/quicklisp/\")"
sbcl --noinform --non-interactive --load "$GITHUB_WORKSPACE/quicklisp/setup.lisp" --eval '(ql-util:without-prompting (ql:add-to-init-file))'
- name: Download repo
uses: actions/checkout@v2
with:
path: quicklisp/local-projects/grpc
- name: Install cmake & required tooling
run: |
sudo apt install -y cmake
sudo apt install -y build-essential autoconf libtool pkg-config
- name: Clone gRPC Github repo
run: git clone --recurse-submodules --depth 1 --shallow-submodules https://github.com/grpc/grpc
- name: Build and install gRPC c++
run: |
cd grpc &&
mkdir cmake/build &&
pushd cmake/build &&
cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local/ ../.. &&
make -j 4 &&
sudo make install &&
sudo ldconfig &&
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH &&
cd $GITHUB_WORKSPACE/quicklisp/local-projects/grpc &&
sudo make &&
popd
- name: Download and install protobuf
run: sudo apt install -y protobuf-compiler libprotobuf-dev libprotoc-dev
- name: Install cl-protobufs (really only need protoc)
run: |
cd $GITHUB_WORKSPACE/quicklisp/local-projects
git clone https://github.com/qitab/cl-protobufs
cd cl-protobufs/protoc
PROTOC_ROOT=/usr/local make
echo "::add-path:$GITHUB_WORKSPACE/quicklisp/local-projects/cl-protobufs/protoc/"
echo $PATH
- name: Start gRPC
run: |
export PATH="$PATH:$GITHUB_WORKSPACE/quicklisp/local-projects/cl-protobufs/protoc/"
sbcl --noinform --non-interactive --eval '(ql:quickload :grpc)' --eval '(ql:quickload :clunit2)' --eval '(ql:quickload :flexi-streams)' --eval '(ql:quickload :bordeaux-threads)' --eval '(setf clunit:*clunit-report-format* :tap)' --eval '(asdf:test-system :grpc)' >> report
cat report