Paramatized rust_static_library to enable CXX support #2566
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI (getdeps) | |
on: [push, pull_request] | |
jobs: | |
ci-getdeps: | |
strategy: | |
fail-fast: false | |
matrix: | |
ghc: [8.4.4, 8.6.5, 8.8.4, 8.10.2] | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/facebookincubator/hsthrift/ci-base:ghcup | |
options: --cpus 2 | |
env: | |
LD_LIBRARY_PATH: "/github/home/.hsthrift/lib" | |
PKG_CONFIG_PATH: "/github/home/.hsthrift/lib/pkgconfig" | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Env | |
run: env | |
- name: Install additional tools | |
run: | | |
apt-get update | |
apt-get install -y ninja-build libgmock-dev | |
- name: Drop system libfmt | |
run: apt-get remove -y libfmt-dev | |
- name: Install folly, fizz, wangle, fbthrift | |
run: ./new_install_deps.sh | |
- name: Add fbthrift/thrift1 to PATH | |
run: echo "$HOME/.hsthrift/bin" >> "$GITHUB_PATH" | |
- name: Install ${{ matrix.ghc }} | |
run: ghcup install ghc ${{ matrix.ghc }} --set | |
- name: Install cabal-install-3.6 | |
run: ghcup install cabal -u https://downloads.haskell.org/~cabal/cabal-install-3.6.0.0/cabal-install-3.6.0.0-x86_64-linux.tar.xz 3.6.0.0 --set | |
- name: Add GHC and cabal to PATH | |
run: echo "$HOME/.ghcup/bin" >> "$GITHUB_PATH" | |
- name: Populate hackage index | |
run: cabal update | |
- name: Generate C++ code from thrift files | |
run: make thrift-cpp | |
- name: Build everything up to thrift-compiler | |
run: cabal build --project-file=ci.cabal.project exe:thrift-compiler | |
- name: Generate Haskell code from thrift files | |
run: make thrift-hs | |
- name: Generate source distributions for all packages | |
run: cabal sdist --project-file=ci.cabal.project all | |
- name: Unpack source distributions in new directory | |
run: | | |
mkdir _sdists | |
cd _sdists | |
for f in $(ls ../dist-newstyle/sdist/*.tar.gz); do | |
tar xzf $f; | |
done | |
cp ../ci-sdist.cabal.project cabal.project | |
cd .. | |
- name: Build all packages | |
run: cabal build all | |
working-directory: ./_sdists | |
- name: Run testsuites | |
run: cabal test mangle fb-util thrift-compiler thrift-lib thrift-server thrift-tests --keep-going | |
working-directory: ./_sdists |