mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-01 00:42:13 +08:00 
			
		
		
		
	* feat: create e2e test readme Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com> * feat: fix markdown file * feat: add openim make lint * feat: add git chglog pull request * feat: add git chglog pull request * fix: fix openim api err code * fix: fix openim api err code * fix: fix openim api err code * feat: Improve CICD * feat: Combining GitHub and Google Workspace for Effective Project Management' * feat: fix openim tools error code * feat: fix openim tools error code * feat: add openim error handle * feat: add openim error handle * feat: optimize tim white prom code return err * feat: fix openim tools error code * style: format openim server code style * feat: add openim optimize commit code * feat: add openim optimize commit code * feat: add openim auto format code * feat: add openim auto format code * feat: add openim auto format code * feat: add openim auto format code * feat: add openim auto format code * feat: format openim code * feat: Some of the notes were translated * feat: Some of the notes were translated * feat: update openim server code * feat: optimize openim reset code * feat: optimize openim reset code --------- Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
		
			
				
	
	
		
			146 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # Copyright © 2023 OpenIM. 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 Linux System E2E Test
 | |
| 
 | |
| on:
 | |
|   workflow_dispatch:
 | |
|   pull_request:
 | |
|   push:
 | |
|   schedule:
 | |
|     # run e2e test every 4 hours
 | |
|     - cron: 0 */4 * * *
 | |
| 
 | |
| env:
 | |
|   CALLBACK_ENABLE: true
 | |
| 
 | |
| jobs:
 | |
|   build:
 | |
|     name: Test
 | |
|     runs-on: ubuntu-latest
 | |
|     env:
 | |
|       GO111MODULE: on
 | |
|     steps:
 | |
| 
 | |
|       - name: Set up Go 1.21
 | |
|         uses: actions/setup-go@v5
 | |
|         with:
 | |
|           go-version: 1.21
 | |
|         id: go
 | |
| 
 | |
|       - name: Check out code into the Go module directory
 | |
|         uses: actions/checkout@v4
 | |
| 
 | |
|       - name: Create e2e test
 | |
|         run: |
 | |
|           echo "...test e2e"
 | |
| 
 | |
|   execute-linux-systemd-scripts:
 | |
|     name: Execute OpenIM script on ${{ matrix.os }}
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     environment:
 | |
|       name: openim
 | |
|     strategy:
 | |
|       matrix:
 | |
|         go_version: ["1.20"]
 | |
|         os: ["ubuntu-latest"]
 | |
|     steps:
 | |
|     - name: Checkout code
 | |
|       uses: actions/checkout@v4
 | |
| 
 | |
|     - name: Set up Go ${{ matrix.go_version }}
 | |
|       uses: actions/setup-go@v5
 | |
|       with:
 | |
|         go-version: ${{ matrix.go_version }}
 | |
|       id: go
 | |
| 
 | |
|     - name: Install Task
 | |
|       uses: arduino/setup-task@v1
 | |
|       with:
 | |
|         version: '3.x' # If available, use the latest major version that's compatible
 | |
|         repo-token: ${{ secrets.GITHUB_TOKEN }}
 | |
| 
 | |
|     - name: Docker Operations
 | |
|       run: |
 | |
|         sudo make init
 | |
|         sudo docker compose up -d
 | |
|         sudo sleep 20
 | |
| 
 | |
|     - name: Module Operations
 | |
|       run: |
 | |
|         sudo make tidy
 | |
|         sudo make tools.verify.go-gitlint
 | |
| 
 | |
|     - name: Build, Start
 | |
|       run: |
 | |
|         sudo ./scripts/install/install.sh -i
 | |
| 
 | |
|     - name: Exec OpenIM System Status Chack
 | |
|       run: |
 | |
|         sudo ./scripts/install/install.sh -s
 | |
| 
 | |
|     - name: Exec OpenIM API test
 | |
|       run: |
 | |
|         sudo make test-api
 | |
|         mkdir -p ./tmp
 | |
|         touch ./tmp/test.md
 | |
|         echo "# OpenIM Test" >> ./tmp/test.md
 | |
|         echo "## OpenIM API Test" >> ./tmp/test.md
 | |
|         echo "<details><summary>Command Output for OpenIM API Test</summary>" >> ./tmp/test.md
 | |
|         echo "<pre><code>" >> ./tmp/test.md
 | |
|         sudo make test-api | tee -a ./tmp/test.md
 | |
|         echo "</code></pre>" >> ./tmp/test.md
 | |
|         echo "</details>" >> ./tmp/test.md
 | |
| 
 | |
|     - name: Exec OpenIM E2E Test
 | |
|       run: |
 | |
|         sudo make test-e2e
 | |
|         echo "" >> ./tmp/test.md
 | |
|         echo "## OpenIM E2E Test" >> ./tmp/test.md
 | |
|         echo "<details><summary>Command Output for OpenIM E2E Test</summary>" >> ./tmp/test.md
 | |
|         echo "<pre><code>" >> ./tmp/test.md
 | |
|         sudo make test-e2e | tee -a ./tmp/test.md
 | |
|         echo "</code></pre>" >> ./tmp/test.md
 | |
|         echo "</details>" >> ./tmp/test.md
 | |
| 
 | |
|     - name: Comment PR with file
 | |
|       uses: thollander/actions-comment-pull-request@v2
 | |
|       with:
 | |
|         filePath: ./tmp/test.md
 | |
|         comment_tag: nrt_file
 | |
|         reactions: eyes, rocket
 | |
|         mode: recreate
 | |
|         GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
 | |
|       continue-on-error: true
 | |
| 
 | |
|     - name: Check outputs
 | |
|       run: |
 | |
|         echo "id : ${{ steps.nrt_message.outputs.id }}"
 | |
|         echo "body : ${{ steps.nrt_message.outputs.body }}"
 | |
|         echo "html_url : ${{ steps.nrt_message.outputs.html_url }}"
 | |
| 
 | |
|     - name: Exec OpenIM System uninstall
 | |
|       run: |
 | |
|         sudo ./scripts/install/install.sh -u
 | |
| 
 | |
|     - name: gobenchdata publish
 | |
|       uses: bobheadxi/gobenchdata@v1
 | |
|       with:
 | |
|         PRUNE_COUNT: 30
 | |
|         GO_TEST_FLAGS: -cpu 1,2
 | |
|         PUBLISH: true
 | |
|         PUBLISH_BRANCH: gh-pages
 | |
|       env:
 | |
|         GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
 | |
|       continue-on-error: true |