# Copyright © 2023 OpenIM open source community. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. name: OpenIM Deploy for dev on: push: branches: - 'devops' # Only for the dev branch paths: - '.github/workflows/*' # - '__test__/**' # dev No immediate testing is required - 'src/**' - 'Dockerfile' - 'docker-compose.yml' - 'bin/*' jobs: deploy-dev: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: set ssh key # Temporarily set up ssh key run: | mkdir -p ~/.ssh/ # secrets.WFP_ID_RSA set in GitHub echo "${{secrets.WFP_ID_RSA}}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa ssh-keyscan "182.92.xxx.xxx" >> ~/.ssh/known_hosts - name: executing remote ssh commands using password uses: appleboy/ssh-action@v1.0.0 with: host: ${{ secrets.HOST }} username: ${{ secrets.USERNAME }} password: ${{ secrets.PASSWORD }} port: ${{ secrets.PORT }} script: whoami - name: deploy # Deployment run: | ssh work@182.92.xxx.xxx " # 【Attention】Log in with the 'work' account, manually create /home/work/imooc-lego directory # Then git clone https://username:password@github.com/imooc-lego/biz-editor-server.git -b dev (private repository, use GitHub username and password) # Remember to delete origin to avoid exposing GitHub password cd /home/work/imooc-lego/biz-editor-server; git remote add origin https://openimbot:${{secrets.WFP_PASSWORD}}@github.com/OpenIMSDK/open-im-server.git; git checkout dev; git pull origin dev; # Download the latest code again git remote remove origin; # Remove origin to avoid exposing GitHub password # Start docker docker-compose build editor-server; # Same as the service name in docker-compose.yml docker-compose up -d; " - name: delete ssh key # Delete ssh key run: rm -rf ~/.ssh/id_rsa