1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

Support utest and regression-test when release. v4.0.156

This commit is contained in:
winlin 2021-08-14 21:24:36 +08:00
parent 640436d8a6
commit 2fdb06299c
4 changed files with 43 additions and 14 deletions

View file

@ -12,9 +12,27 @@ jobs:
runs-on: ubuntu-20.04
steps:
################################################################
# Git checkout
- name: Checkout repository
uses: actions/checkout@v2
################################################################
# Tests
- name: Build test image
if: ${{ !startsWith(github.ref, 'refs/tags/v3') }}
run: docker build --tag srs:test -f trunk/Dockerfile.test trunk
# For utest
- name: Run SRS utest
if: ${{ !startsWith(github.ref, 'refs/tags/v3') }}
run: docker run --rm srs:test bash -c 'make && ./objs/srs_utest'
# For regression-test
- name: Run SRS regression-test
if: ${{ !startsWith(github.ref, 'refs/tags/v3') }}
run: docker run --rm srs:test bash -c 'make && ./objs/srs -c conf/regression-test.conf && cd 3rdparty/srs-bench && make && ./objs/srs_test -test.v'
################################################################
# Build
# The github.ref is, for example, refs/tags/v3.0.145 or refs/tags/v3.0-r8
# Generate variables like:
# SRS_TAG=v3.0.145
@ -22,31 +40,30 @@ jobs:
# SRS_MAJOR=3
# @see https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
- name: Generate varaiables
shell: bash
run: |
SRS_TAG=$(echo ${{ github.ref }}| awk -F '/' '{print $3}')
echo "SRS_TAG=$SRS_TAG" >> $GITHUB_ENV
SRS_MAJOR=$(echo $SRS_TAG| cut -c 2)
echo "SRS_MAJOR=$SRS_MAJOR" >> $GITHUB_ENV
- name: Build SRS
shell: bash
# Build SRS image
- name: Build SRS docker image
run: |
echo "Release ossrs/srs:$SRS_TAG"
docker build --tag ossrs/srs:$SRS_TAG trunk
################################################################
# Docker
- name: Login docker hub
uses: docker/login-action@v1
with:
username: "${{ secrets.DOCKER_USERNAME }}"
password: "${{ secrets.DOCKER_PASSWORD }}"
- name: Push to docker hub
shell: bash
run: |
docker push ossrs/srs:$SRS_TAG
docker tag ossrs/srs:$SRS_TAG ossrs/srs:$SRS_MAJOR
docker push ossrs/srs:$SRS_MAJOR
# Aliyun ACR
- name: Login Aliyun docker hub
uses: aliyun/acr-login@v1
with:
@ -54,30 +71,28 @@ jobs:
username: "${{ secrets.ACR_USERNAME }}"
password: "${{ secrets.ACR_PASSWORD }}"
- name: Push to Aliyun docker hub
shell: bash
run: |
docker tag ossrs/srs:$SRS_TAG registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_TAG
docker push registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_TAG
docker tag ossrs/srs:$SRS_TAG registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_MAJOR
docker push registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_MAJOR
################################################################
# K8S
- name: Setup KUBCONFIG for Aliyun ACK
shell: bash
run: |-
KUBECONFIG=$RUNNER_TEMP/kubeconfig_$(date +%s)
echo "${{ secrets.KUBCONFIG }}" > $KUBECONFIG
echo "KUBECONFIG=$KUBECONFIG" >> $GITHUB_ENV
# K8S for SRS 3.0
- name: Release SRS 3.0 to Aliyun ACK
shell: bash
if: ${{ startsWith(github.ref, 'refs/tags/v3') }}
run: |-
kubectl set image deploy/srs3-deploy srs=registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_TAG
kubectl describe deploy/srs3-deploy
# K8S for SRS 4.0
- name: Release SRS 4.0 to Aliyun ACK
shell: bash
if: ${{ startsWith(github.ref, 'refs/tags/v4') }}
run: |-
kubectl set image deploy/srs4-deploy srs4=registry.cn-hangzhou.aliyuncs.com/ossrs/srs:$SRS_TAG
kubectl describe deploy/srs4-deploy
kubectl describe deploy/srs4-deploy