Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
212 changes: 0 additions & 212 deletions .circleci/config.yml

This file was deleted.

24 changes: 24 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: CI

on:
push:
branches: ["**"]
workflow_dispatch:

jobs:
build_test:
uses: membraneframework/membrane_actions/.github/workflows/build-test.yml@main
with:
submodules: recursive

test:
uses: membraneframework/membrane_actions/.github/workflows/test.yml@main
with:
submodules: recursive
test-flags: "--include long_running"
shards: 4

lint:
uses: membraneframework/membrane_actions/.github/workflows/lint.yml@main
with:
submodules: recursive
64 changes: 64 additions & 0 deletions .github/workflows/performance.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Performance Test

# Replaces the CircleCI manual approval gate. Trigger this workflow
# manually from the Actions tab on the branch you want to benchmark.
on:
workflow_dispatch:

jobs:
performance:
runs-on: performance
steps:
- uses: actions/checkout@v4
with:
submodules: recursive

- name: Back up benchmark and mix.exs
run: |
cp -r benchmark/ $HOME/benchmark_backup/
cp mix.exs $HOME/benchmark_backup/

- name: Pull Docker image
run: docker pull membraneframeworklabs/docker_membrane

- name: Run benchmarks on feature branch
run: |
mkdir -p $HOME/results
docker run \
-e MIX_ENV=benchmark \
-v $PWD:/root/app \
-v $HOME/results:/root/results \
-w /root/app \
membraneframeworklabs/docker_membrane \
mix do deps.get, deps.compile --force --all, compile --force, run benchmark/run.exs /root/results/feature_branch_results

- name: Switch to master and restore benchmark
run: |
git checkout -f master
cp $HOME/benchmark_backup/mix.exs .

- name: Run benchmarks on master
run: |
docker run \
-e MIX_ENV=benchmark \
-v $PWD:/root/app \
-v $HOME/results:/root/results \
-v $HOME/benchmark_backup/benchmark:/root/app/benchmark \
-w /root/app \
membraneframeworklabs/docker_membrane \
mix do deps.get, deps.compile --force --all, compile --force, run benchmark/run.exs /root/results/master_results

- name: Compare results
run: |
docker run \
-e MIX_ENV=benchmark \
-v $PWD:/root/app \
-v $HOME/results:/root/results \
-v $HOME/benchmark_backup/benchmark:/root/app/benchmark \
-w /root/app \
membraneframeworklabs/docker_membrane \
mix run benchmark/compare.exs /root/results/feature_branch_results /root/results/master_results

- name: Clean up results
if: always()
run: rm -f $HOME/results/*
37 changes: 37 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Release

on:
push:
tags:
- "v*"
workflow_dispatch:

jobs:
build_test:
uses: membraneframework/membrane_actions/.github/workflows/build-test.yml@main
with:
submodules: recursive

test:
uses: membraneframework/membrane_actions/.github/workflows/test.yml@test-sharding
with:
submodules: recursive
test-flags: "--include long_running"
shards: 4

lint:
uses: membraneframework/membrane_actions/.github/workflows/lint.yml@main
with:
submodules: recursive

hex_publish:
needs: [build_test, test, lint]
uses: membraneframework/membrane_actions/.github/workflows/hex-publish.yml@main
with:
submodules: recursive
secrets:
HEX_API_KEY: ${{ secrets.HEX_API_KEY }}

gh_release:
needs: [hex_publish]
uses: membraneframework/membrane-actions/.github/workflows/github-release.yml@main
Loading
Loading