1name: linux-ci 2 3on: 4 push: 5 branches: [ master ] 6 pull_request: 7 branches: [ master ] 8 9jobs: 10 build: 11 runs-on: ubuntu-18.04 12 13 steps: 14 - uses: actions/checkout@v2 15 - name: install dependencies 16 run: sudo apt-get install pkg-config gcc ragel gcovr gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev python3 python3-setuptools ninja-build gobject-introspection libgirepository1.0-dev 17 - run: sudo pip3 install fonttools meson==0.47.0 18 - name: run 19 run: meson build -Db_coverage=true --auto-features=enabled -Dgraphite=enabled -Dchafa=disabled -Doptimization=2 20 - name: ci 21 run: meson test --print-errorlogs -Cbuild 22 23 - name: generate documentations 24 run: ninja -Cbuild harfbuzz-doc 25 - name: deploy documentations 26 if: github.event_name == 'push' && github.ref == 'refs/heads/master' 27 run: .ci/deploy-docs.sh 28 env: 29 GH_TOKEN: ${{ secrets.GH_TOKEN }} 30 REVISION: ${{ github.sha }} 31 32 # waiting for https://github.com/rhysd/github-action-benchmark/issues/36 to happen 33 # - name: benchmark 34 # run: build/perf/perf --benchmark_format=json > perf/result.json 35 # - name: store benchmark result 36 # uses: rhysd/github-action-benchmark@b2ee598 37 # if: github.event_name != 'pull_request' 38 # with: 39 # name: C++ Benchmark 40 # tool: 'googlecpp' 41 # output-file-path: perf/result.json 42 # gh-pages-branch: gh-pages 43 # github-token: ${{ secrets.PERSONAL_GITHUB_TOKEN }} 44 # auto-push: true 45 # alert-threshold: '150%' 46 # comment-on-alert: true 47 # fail-on-alert: true 48 49 - name: cov 50 run: ninja -Cbuild coverage 51 - uses: codecov/codecov-action@v1 52 with: 53 file: build/meson-logs/coverage.xml 54