name: Linux on: [push, pull_request] jobs: build: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v1 - name: 下载submodule源码 run: mv -f .gitmodules_github .gitmodules && git submodule sync && git submodule update --init - name: 下载 SRTP uses: actions/checkout@v2 with: repository: cisco/libsrtp fetch-depth: 1 ref: v2.3.0 path: 3rdpart/libsrtp - name: 启动 Docker 容器, 在Docker 容器中执行脚本 run: | docker pull centos:7 docker run -v $(pwd):/root -w /root --rm centos:7 sh -c " set -x yum install -y git wget gcc gcc-c++ make unzip ffmpeg-devel libavutil-devel libswscale-devel libresample-devel usrsctp-devel wget https://github.com/openssl/openssl/archive/refs/heads/OpenSSL_1_1_1-stable.zip unzip OpenSSL_1_1_1-stable.zip cd openssl-OpenSSL_1_1_1-stable ./config no-shared --prefix=/root/release make -j $(nproc) make install cd .. wget https://github.com/Kitware/CMake/releases/download/v3.29.5/cmake-3.29.5.tar.gz tar -xvf cmake-3.29.5.tar.gz cd cmake-3.29.5 OPENSSL_ROOT_DIR=/root/release ./configure make -j $(nproc) make install cd .. cd 3rdpart/libsrtp && ./configure --enable-openssl --with-openssl-dir=/root/release && make -j $(nproc) && make install cd ../../ mkdir -p linux_build && cd linux_build && cmake .. -DOPENSSL_ROOT_DIR=/root/release -DCMAKE_BUILD_TYPE=Release -DENABLE_FFMPEG=true && make -j $(nproc) " - name: 设置环境变量 run: | echo "BRANCH=$(echo ${GITHUB_REF#refs/heads/} | tr -s "/\?%*:|\"<>" "_")" >> $GITHUB_ENV echo "BRANCH2=$(echo ${GITHUB_REF#refs/heads/} )" >> $GITHUB_ENV echo "DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV - name: 打包二进制 id: upload uses: actions/upload-artifact@v4 with: name: ${{ github.workflow }}_${{ env.BRANCH }}_${{ env.DATE }} path: release/* if-no-files-found: error retention-days: 90 - name: issue评论 if: github.event_name != 'pull_request' && github.ref != 'refs/heads/feature/test' uses: actions/github-script@v7 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | github.rest.issues.createComment({ issue_number: 483, owner: context.repo.owner, repo: context.repo.repo, body: '- 下载地址: [${{ github.workflow }}_${{ env.BRANCH }}_${{ env.DATE }}](${{ steps.upload.outputs.artifact-url }})\n' + '- 分支: ${{ env.BRANCH2 }}\n' + '- git hash: ${{ github.sha }} \n' + '- 编译日期: ${{ env.DATE }}\n' + '- 打包ci名: ${{ github.workflow }}\n' + '- 说明: 本二进制在centos7(x64)上编译,请确保您的机器系统不低于此版本,并提前`sudo yum check-update && sudo yum install -y openssl-devel ffmpeg-devel libavutil-devel libswscale-devel libresample-devel usrsctp-devel`安装依赖项\n' })