aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.github/workflows
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2023-07-18 18:39:00 +0200
committerEgor Tensin <Egor.Tensin@gmail.com>2023-07-18 19:57:17 +0200
commit6a200443106bb83c6261c64c323ceb9f0563fdad (patch)
tree45d1f41f2da35631079bc4b559b1cb44b4c34e32 /.github/workflows
parentnet: don't copy data in struct buf (diff)
downloadcimple-6a200443106bb83c6261c64c323ceb9f0563fdad.tar.gz
cimple-6a200443106bb83c6261c64c323ceb9f0563fdad.zip
implement flame graph generation
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yml27
1 files changed, 26 insertions, 1 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 5ce967f..731d81c 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -55,7 +55,7 @@ jobs:
- name: Install dependencies
run: |
sudo apt-get update
- sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends gcovr libgit2-dev libjson-c-dev libsodium-dev libsqlite3-dev python3-pytest valgrind
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends gcovr libgit2-dev libjson-c-dev libsodium-dev libsqlite3-dev python3-pytest
- name: Generate report
run: make coverage
- name: Upload report
@@ -65,6 +65,31 @@ jobs:
path: ./build/coverage/
if-no-files-found: error
+ flame_graphs:
+ runs-on: ubuntu-latest
+ name: Flame graphs
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Install dependencies
+ run: |
+ sudo apt-get update
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends libgit2-dev libjson-c-dev libsodium-dev libsqlite3-dev python3-pytest
+ - name: Install FlameGraph
+ run: |
+ git clone --depth 1 https://github.com/brendangregg/FlameGraph.git ~/FlameGraph
+ echo ~/FlameGraph >> "$GITHUB_PATH"
+ - name: Build
+ run: make install
+ - name: Generate flame graphs
+ run: sudo --preserve-env=PATH make test/perf
+ - name: Upload graphs
+ uses: actions/upload-artifact@v3
+ with:
+ name: flame_graphs
+ path: ./build/flame_graphs/
+ if-no-files-found: error
+
publish:
needs: [lint, build, coverage]
runs-on: ubuntu-latest