coturn/.github/workflows/actions/ubuntu-build-deps/action.yml
Alex Gustafsson d63704c72d
Implement custom prometheus http handler (#1591)
Implement a custom prometheus http handler in order to:

1. Support listening on a specified address as opposed to any
2. Remove the requirement on the unmaintained promhttp library

This feature comes with one limitation: if an IPv4 address is used, the
server will not listen on the IPv6-mapped address, even if IPv6 is
available. That is, dual-stacking does not work.

Solves: #1475

---------

Co-authored-by: Pavel Punsky <eakraly@users.noreply.github.com>
2024-12-10 10:28:43 -08:00

61 lines
1.6 KiB
YAML

name: 'ubuntu build dependencies'
description: 'install required build dependencies for ubuntu'
inputs:
SUDO:
description: "set to true to run apt as root"
required: false
default: false
runs:
using: 'composite'
steps:
- name: check if sudo is set
shell: bash
run: |
if [ ${{inputs.SUDO}} = true ]
then
AS_ROOT="sudo"
else
AS_ROOT=""
fi
echo "AS_ROOT=$AS_ROOT" >> $GITHUB_ENV
- name: apt update
shell: bash
run: ${{env.AS_ROOT}} apt update
- name: install build tools
shell: bash
run: |
${{env.AS_ROOT}} apt install -y \
build-essential \
clang \
clang-tidy \
ninja-build \
iwyu \
pkgconf \
wget
if [ "$(lsb_release -s -r)x" == "16.04x" ]; then apt install -y clang-tools; fi
- name: install coturn dependencies
shell: bash
run: |
${{env.AS_ROOT}} apt install -y \
libevent-dev \
libssl-dev \
libpq-dev \
libsqlite3-dev \
libhiredis-dev \
libmongoc-dev \
libmicrohttpd-dev
if [ "$(lsb_release -s -r)x" == "16.04x" ]; then apt-get install -y libmariadb-client-lgpl-dev; fi
if [ "$(lsb_release -s -r)x" == "16.04x" ]; then apt-get install -y libmariadb-dev; fi
- name: Prometheus Support
shell: bash
run: |
wget https://github.com/digitalocean/prometheus-client-c/releases/download/v0.1.3/libprom-dev-0.1.3-Linux.deb
${{env.AS_ROOT}} apt install -y ./libprom-dev-0.1.3-Linux.deb