Skip to content

Commit 149aef0

Browse files
mcserepintjftw
andcommitted
Thrift and ODB cache for GitHub Actions.
Co-authored-by: Anett Fekete <anett.fekete@ericsson.com>
1 parent 4cc4014 commit 149aef0

1 file changed

Lines changed: 27 additions & 9 deletions

File tree

.github/workflows/ci.yml

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: Build project
22

3-
on: [push, pull_request]
3+
on: [push, pull_request, workflow_dispatch]
44

55
env:
66
BUILD_TYPE: Release
@@ -64,20 +64,34 @@ jobs:
6464
if: ${{ matrix.os == 'ubuntu-18.04' && matrix.db == 'sqlite3' }}
6565
run: sudo apt-get install libsqlite3-dev
6666

67-
- name: Install Thrift
67+
- name: Cache Thrift Ubuntu 18
68+
id: thrift-cache
6869
if: ${{ matrix.os == 'ubuntu-18.04' }}
70+
uses: actions/cache@v2
71+
with:
72+
path: ~/thrift_install
73+
key: ${{ matrix.db }}-thrift-v2
74+
75+
- name: Install Thrift
76+
if: ${{ matrix.os == 'ubuntu-18.04' && steps.thrift-cache.outputs.cache-hit != 'true' }}
6977
run: |
7078
cd $HOME
7179
wget -O thrift-0.13.0.tar.gz "http://www.apache.org/dyn/mirrors/mirrors.cgi?action=download&filename=thrift/0.13.0/thrift-0.13.0.tar.gz"
7280
tar -xvf ./thrift-0.13.0.tar.gz
7381
cd thrift-0.13.0
7482
./configure --prefix=$HOME/thrift_install --without-python --enable-libtool-lock --enable-tutorial=no --enable-tests=no --with-libevent --with-zlib --without-nodejs --without-lua --without-ruby --without-csharp --without-erlang --without-perl --without-php --without-php_extension --without-dart --without-haskell --without-go --without-rs --without-haxe --without-dotnetcore --without-d --without-qt4 --without-qt5 --without-java --without-swift
7583
make install -j $(nproc)
76-
echo "CMAKE_PREFIX_PATH=$HOME/thrift_install:$CMAKE_PREFIX_PATH" >> $GITHUB_ENV
77-
echo "PATH=$HOME/thrift_install/bin:$PATH" >> $GITHUB_ENV
7884
79-
- name: Install ODB
85+
- name: Cache ODB Ubuntu 18
86+
id: odb-cache
8087
if: ${{ matrix.os == 'ubuntu-18.04' }}
88+
uses: actions/cache@v2
89+
with:
90+
path: ~/odb_install
91+
key: ${{ matrix.db }}-odb-v2
92+
93+
- name: Install ODB
94+
if: ${{ matrix.os == 'ubuntu-18.04' && steps.odb-cache.outputs.cache-hit != 'true' }}
8195
run: |
8296
cd $HOME
8397
mkdir /tmp/build2src
@@ -95,8 +109,14 @@ jobs:
95109
bpkg build libodb-sqlite --yes
96110
bpkg build libodb-pgsql --yes
97111
bpkg install --all --recursive
98-
echo "CMAKE_PREFIX_PATH=$HOME/odb_install:$CMAKE_PREFIX_PATH" >> $GITHUB_ENV
99-
echo "PATH=$HOME/odb_install/bin:$PATH" >> $GITHUB_ENV
112+
113+
- name: Export environment variables Ubuntu 18
114+
if: ${{ matrix.os == 'ubuntu-18.04' }}
115+
run: |
116+
ls $HOME/odb_install/bin
117+
ls $HOME/thrift_install/bin
118+
echo "CMAKE_PREFIX_PATH=$HOME/thrift_install:$HOME/odb_install:$CMAKE_PREFIX_PATH" >> $GITHUB_ENV
119+
echo "PATH=$HOME/thrift_install/bin:$HOME/odb_install/bin:$PATH" >> $GITHUB_ENV
100120
101121
- name: Install GoogleTest
102122
run: |
@@ -138,5 +158,3 @@ jobs:
138158
- name: Run tests
139159
working-directory: ${{github.workspace}}/build
140160
run: make test ARGS=-V
141-
142-

0 commit comments

Comments
 (0)