Skip to content

Release DongTai IAST Base Image #151

Release DongTai IAST Base Image

Release DongTai IAST Base Image #151

name: Release DongTai IAST Base Image
on:
release:
types: [ created, edited ]
jobs:
Release-DongTai-Infra-Service:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
steps:
- name: start-build
uses: joelwmale/webhook-action@master
with:
url: ${{ secrets.WEBHOOK_URL }}
body: '{"msg_type": "interactive","card": {"config": {"wide_screen_mode": true,"enable_forward": true},"elements": [{"tag": "div","text": {"content": "状态:构建开始\n项目:${{github.repository}}\n分支:${{github.ref}}\n流程:${{github.workflow}}\n构建编号:${{github.run_number}}\n触发事件:${{github.event_name}}\n提交人:${{github.actor}}\nSHA-1:${{github.sha}}\n","tag": "lark_md"}}]}}'
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DONGTAI_DOCKERHUB_USERNAME }}
password: ${{ secrets.DONGTAI_DOCKERHUB_TOKEN }}
- name: Login to AliyunRegistry
uses: docker/login-action@v1
with:
registry: ${{ secrets.ALIYUN_REGISTRY }}
username: ${{ secrets.ALIYUN_DOCKERHUB_USER }}
password: ${{ secrets.ALIYUN_DOCKERHUB_PASSWORD }}
- id: release
run: |
TAG_NAME=${{ github.event.release.tag_name }}
ID=`echo ${TAG_NAME##v}`
echo "::set-output name=version::$ID"
- name: Build and push logstash
uses: docker/build-push-action@v3
with:
context: ./logstash
file: ./logstash/Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: |
dongtai/dongtai-logstash:${{ steps.release.outputs.version }}
dongtai/dongtai-logstash:latest
- name: Build and push logrotate
uses: docker/build-push-action@v3
with:
context: ./logrotate
file: ./logrotate/Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: |
dongtai/dongtai-logrotate:${{ steps.release.outputs.version }}
dongtai/dongtai-logrotate:latest
- name: Build and push Redis
uses: docker/build-push-action@v2
with:
context: ./redis
push: true
platforms: linux/amd64,linux/arm64
tags: |
dongtai/dongtai-redis:${{ steps.release.outputs.version }}
dongtai/dongtai-redis:latest
- name: finish build
uses: joelwmale/webhook-action@master
with:
url: ${{ secrets.WEBHOOK_URL }}
body: '{"msg_type": "interactive","card": {"config": {"wide_screen_mode": true,"enable_forward": true},"elements": [{"tag": "div","text": {"content": "状态:构建完成\n项目:${{github.repository}}\n分支:${{github.ref}}\n流程:${{github.workflow}}\n构建编号:${{github.run_number}}\n触发事件:${{github.event_name}}\n提交人:${{github.actor}}\nSHA-1:${{github.sha}}\n","tag": "lark_md"}}]}}'
dongtai-mysql:
name: dongtai-mysql
# needs:
# - Release-DongTai-Infra-Service
runs-on: ubuntu-latest
services:
dongtai-mysql:
image: dongtai/dongtai-mysql:latest
ports:
- 3306:3306
dongtai-redis:
image: dongtai/dongtai-redis:latest
ports:
- 6379:6379
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DONGTAI_DOCKERHUB_USERNAME }}
password: ${{ secrets.DONGTAI_DOCKERHUB_TOKEN }}
- name: Login to AliyunRegistry
uses: docker/login-action@v2
with:
registry: ${{ secrets.ALIYUN_REGISTRY }}
username: ${{ secrets.ALIYUN_DOCKERHUB_USER }}
password: ${{ secrets.ALIYUN_DOCKERHUB_PASSWORD }}
- id: release
run: |
TAG_NAME=${{ github.event.release.tag_name }}
ID=`echo ${TAG_NAME##v}`
echo "::set-output name=version::$ID"
- name: Build Mysql only schema to local
working-directory: ./mysql
run: |
docker pull wukong.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.release.outputs.version }}
docker run -i --name dongtai-server-update -v $(pwd)/config-tutorial.ini:/opt/dongtai/dongtai_conf/conf/config.ini --rm --link `docker ps | grep dongtai-mysql | awk '{print $1}'`:dongtai-mysql \
--link `docker ps | grep dongtai-redis | awk '{print $1}'`:dongtai-redis \
--network ${{ job.container.network }} wukong.tencentcloudcr.com/dongtai/dongtai-server:${{ steps.release.outputs.version }} migrate || exit 1
docker exec -i `docker ps | grep dongtai-mysql | awk '{print $1}'` /bin/bash -c "mysqldump dongtai_webapi -u root -p'dongtai-iast' --single-transaction" > dongtai-mysql-schema.sql || exit 1
- name: Build Mysql only schema to local
uses: docker/build-push-action@v3
with:
context: ./mysql
push: true
# platforms: linux/amd64,linux/arm64
tags: |
dongtai/dongtai-mysql:${{ steps.release.outputs.version }}
# dongtai/dongtai-mysql:latest
- name: Install Mysql 8.0
working-directory: ./mysql
run: |
sed -i 's#5.7#8.0#g' Dockerfile
- name: Build Mysql 8.0
uses: docker/build-push-action@v3
with:
context: ./mysql
push: true
platforms: linux/amd64,linux/arm64
tags: |
dongtai/dongtai-mysql-8:${{ steps.release.outputs.version }}
# dongtai/dongtai-mysql-8:latest