1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- name: Push apisix to Docker image
- on:
- push:
- branches: ['release/apisix-**']
- jobs:
- build:
- runs-on: ubuntu-latest
- strategy:
- fail-fast: false
- matrix:
- platform:
- - centos
- - debian
- - redhat
- env:
- APISIX_DOCKER_TAG: 3.4.0-${{ matrix.platform }}
- steps:
- - name: Check out the repo
- uses: actions/checkout@v2
- - name: Build and run
- run: |
- make build-on-${{ matrix.platform }}
- docker-compose -f ./compose/docker-compose-release.yaml up -d
- sleep 30
- docker logs compose_apisix_1
- - name: Test route
- run: |
- grep -C 3 '\[error\]' compose/apisix_log/error.log && exit 1
- curl http://127.0.0.1:9180/apisix/admin/routes/1 \
- -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
- {
- "uri": "/get",
- "upstream": {
- "type": "roundrobin",
- "nodes": {
- "httpbin.org:80": 1
- }
- }
- }'
- result_code=`curl -I -m 10 -o /dev/null -s -w %{http_code} http://127.0.0.1:9080/get`
- if [[ $result_code -ne 200 ]];then
- printf "result_code: %s\n" "$result_code"
- exit 125
- fi
- - name: Login to Docker Hub
- uses: docker/login-action@v1
- with:
- username: ${{ secrets.DOCKERHUB_USER }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v1
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v1
- - name: push apisix:latest image to docker hub
- if: matrix.platform == 'debian'
- run: |
- make push-multiarch-on-latest
- - name: Push apisix:${{ matrix.os }} image to Docker Hub
- run: |
- make push-multiarch-on-${{ matrix.platform }}
|