Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
sobomax committed Oct 11, 2024
1 parent b6e5577 commit c0d07c1
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 5 deletions.
20 changes: 20 additions & 0 deletions .github/workflows/rtp.io.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,14 @@ jobs:
build_test_rtp_io_dock:
runs-on: ubuntu-latest
permissions:
packages: write
env:
BASE_IMAGE: ghcr.io/sippy/rtpproxy:latest
COMPILER: clang-18
BUILD_OS: ubuntu-latest
PYTHON_VERSION: 3.12
GHCR_REPO: ghcr.io/${{ github.repository_owner }}/opensips

steps:
- uses: actions/checkout@v4
Expand All @@ -131,19 +134,36 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set dynamic environment
run: |
PLATFORMS="`docker manifest inspect ${{ env.BASE_IMAGE }} | \
jq -r '.manifests[] | "\(.platform.os)/\(.platform.architecture)\(if .platform.variant != null then "/\(.platform.variant)" else "" end)"' | \
sort -u | grep -v unknown | paste -sd ','`"
echo "Platforms: ${PLATFORMS}"
GIT_BRANCH="${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}"
echo "PLATFORMS=${PLATFORMS}" >> $GITHUB_ENV
echo "GIT_BRANCH=${GIT_BRANCH}" >> $GITHUB_ENV
echo "BUILD_IMAGE=${{ env.GHCR_REPO }}:rtp.io-${GIT_BRANCH}" >> $GITHUB_ENV
- name: Build Docker image
uses: docker/build-push-action@v6
env:
CACHE_SPEC: "type=registry,ref=${{ env.BUILD_IMAGE }}-buildcache"
with:
context: .
file: ./docker/Dockerfile.rtp.io
build-args: |
BASE_IMAGE=${{ env.BASE_IMAGE }}
# platforms: linux/arm/v7
platforms: ${{ env.PLATFORMS }}
cache-from: ${{ env.CACHE_SPEC }}
cache-to: ${{ env.CACHE_SPEC }},mode=max
tags: ${{ env.BUILD_IMAGE }}
push: true
27 changes: 22 additions & 5 deletions docker/Dockerfile.rtp.io
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,38 @@ USER root
# Set Environment Variables
ENV DEBIAN_FRONTEND=noninteractive

WORKDIR /tmp
WORKDIR /src

ARG COMPILER=clang-18
ARG BUILD_OS=ubuntu-latest
RUN --mount=type=bind,source=scripts/build,target=scripts/build \
sh -x scripts/build/install_depends.sh

COPY --exclude=.git --exclude=.github . .

RUN pwd
RUN ls -l
COPY --exclude=.git --exclude=.github --exclude=docker --exclude=dist \
. .

ARG KEEP_MODULES="dialog sipmsgops sl tm rr maxfwd rtp.io rtpproxy textops"
ARG SKIP_MODULES="usrloc event_routing clusterer rtp_relay"
RUN mkdir tmp && cd modules && mv ${KEEP_MODULES} ${SKIP_MODULES} ../tmp && \
rm -rf * && cd ../tmp && mv ${KEEP_MODULES} ${SKIP_MODULES} ../modules && \
cd .. && rmdir tmp
RUN EXCLUDE_MODULES_ADD="${SKIP_MODULES}" sh -x scripts/build/do_build.sh
RUN apt-get install -y libsrtp2-dev lld-18
RUN env ONE_MODULE=rtp.io LDFLAGS="-flto -fuse-ld=lld" CFLAGS=-flto \
sh -x scripts/build/do_build.sh
ARG CC=${COMPILER}
COPY dist/rtpproxy dist/rtpproxy
RUN cd dist/rtpproxy && ./configure
RUN apt-get install -y gpp python-is-python3 python3-pip
COPY dist/voiptests dist/voiptests
RUN cd dist/voiptests && python -m pip install --break-system-packages -U -r requirements.txt

ENV MM_TYPE=opensips
ENV MM_BRANCH=master
ENV MM_ROOT=../..
ENV RTPP_BRANCH=DOCKER
ENV RTPPC_TYPE=rtp.io
ENV RTPPROXY_DIST=../../dist/rtpproxy
ENV ALICE_ARGS="-4"
WORKDIR dist/voiptests
ENTRYPOINT [ "sh", "-x", "./test_run.sh" ]

0 comments on commit c0d07c1

Please sign in to comment.