check.yml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. name: Milvus insight check insight status
  2. on:
  3. push:
  4. branches: [feat/check-insight]
  5. jobs:
  6. build:
  7. runs-on: ubuntu-latest
  8. steps:
  9. - uses: actions/checkout@v2
  10. - name: Setup Node.js
  11. uses: actions/setup-node@v1
  12. with:
  13. node-version: 12
  14. - name: Login to DockerHub
  15. uses: docker/login-action@v1
  16. with:
  17. username: ${{ secrets.DOCKER_USERNAME }}
  18. password: ${{ secrets.DOCKER_PWD }}
  19. - name: Docker Build
  20. run: docker build -t milvusdb/milvus-insight:dev --build-arg VERSION=dev .
  21. - name: Docker Push Dev
  22. run: docker push milvusdb/milvus-insight:dev
  23. kbs:
  24. runs-on: ubuntu-latest
  25. needs: build
  26. steps:
  27. - uses: actions/checkout@v2
  28. - name: Setup Node.js
  29. uses: actions/setup-node@v1
  30. with:
  31. node-version: 12
  32. - name: Install OpenVPN and kubectl
  33. run: |
  34. sudo apt-get update
  35. sudo apt-get install openvpn -y
  36. sudo apt-get install -y apt-transport-https ca-certificates curl
  37. sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
  38. echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
  39. sudo apt-get update
  40. sudo apt-get install kubectl -y
  41. - name: Connect VPN
  42. uses: golfzaptw/action-connect-ovpn@master
  43. id: connect_vpn
  44. with:
  45. FILE_OVPN: '.github/workflows/client.ovpn'
  46. env:
  47. CA_CRT: ${{ secrets.VPN_CA}}
  48. USER_CRT: ${{ secrets.VPN_CRT }}
  49. USER_KEY: ${{ secrets.VPN_KEY }}
  50. - name: Deploy to cluster
  51. run: |
  52. echo ${{ secrets.kubeconfig }} > config64
  53. base64 -d config64 > kubeconfig
  54. kubectl set image deployment/milvus-insight milvus-insight=milvusdb/milvus-insight:dev:${{ github.sha }} -n ued --kubeconfig=kubeconfig
  55. kubectl -n ued rollout status deploy milvus-insight
  56. sleep 60
  57. check:
  58. runs-on: ubuntu-latest
  59. needs: [build, kbs]
  60. steps:
  61. - uses: actions/checkout@v2
  62. - name: Setup Node.js
  63. uses: actions/setup-node@v1
  64. with:
  65. node-version: 12
  66. - name: Check insight status
  67. run: |
  68. yarn add axios
  69. node checkInsight.js