|
|
|
# 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: Github Pull Request
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches: [main]
|
|
|
|
paths-ignore:
|
|
|
|
- 'README.md'
|
|
|
|
- 'CONTRIBUTING.md'
|
|
|
|
- 'docs/**'
|
|
|
|
pull_request:
|
|
|
|
branches: [main]
|
|
|
|
paths-ignore:
|
|
|
|
- 'README.md'
|
|
|
|
- 'CONTRIBUTING.md'
|
|
|
|
- 'docs/**'
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
pull-requests: write
|
|
|
|
contents: write
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: checkout
|
|
|
|
uses: actions/checkout@v3
|
|
|
|
with:
|
|
|
|
fetch-depth: 0
|
|
|
|
|
|
|
|
- name: Get League branch Patch
|
|
|
|
run: |
|
|
|
|
git config user.name 'openimbot'
|
|
|
|
git config user.email 'openimsdk@qq.com'
|
|
|
|
git checkout -b cicd/patch-${{ github.event.number }}
|
|
|
|
- uses: actions/setup-node@v3
|
|
|
|
- name: Setup Go
|
|
|
|
uses: actions/setup-go@v2
|
|
|
|
- name: Run go modules tidy
|
|
|
|
run: |
|
|
|
|
sudo make tidy
|
|
|
|
sudo make tools.verify.go-gitlint
|
|
|
|
echo "Run go modules tidy successfully"
|
|
|
|
|
|
|
|
- name: Run go format
|
|
|
|
run: |
|
|
|
|
sudo make format
|
|
|
|
echo "Run go format successfully"
|
|
|
|
continue-on-error: true
|
|
|
|
|
|
|
|
- name: Generate all necessary files, such as error code files
|
|
|
|
run: |
|
|
|
|
make generate
|
|
|
|
echo "Generate all necessary files successfully"
|
|
|
|
continue-on-error: true
|
|
|
|
|
|
|
|
- name: Run unit test and get test coverage
|
|
|
|
run: |
|
|
|
|
make cover
|
|
|
|
echo "Run unit test and get test coverage successfully"
|
|
|
|
continue-on-error: true
|
|
|
|
|
|
|
|
- name: Initialize CodeQL
|
|
|
|
uses: github/codeql-action/init@v2
|
|
|
|
with:
|
|
|
|
languages: go
|
|
|
|
|
|
|
|
- name: Build source code for host platform
|
|
|
|
run: |
|
|
|
|
sudo make build
|
|
|
|
echo "Build source code for host platform successfully"
|
|
|
|
|
|
|
|
- name: Perform CodeQL Analysis
|
|
|
|
uses: github/codeql-action/analyze@v2
|
|
|
|
|
|
|
|
- name: OpenIM verify copyright
|
|
|
|
run: |
|
|
|
|
sudo make verify-copyright
|
|
|
|
sudo make add-copyright
|
|
|
|
echo "OpenIM verify successfully"
|
|
|
|
continue-on-error: true
|
|
|
|
|
|
|
|
- name: Commit code
|
|
|
|
run: |
|
|
|
|
git add .
|
|
|
|
|
|
|
|
- name: Create Pull Request
|
|
|
|
uses: peter-evans/create-pull-request@v5
|
|
|
|
with:
|
|
|
|
commit-message: "cicd: bump League Patch to cicd/patch-${{ github.event.number }}"
|
|
|
|
title: Bump League Patch to cicd/patch-${{ github.event.number }}
|
|
|
|
body: |
|
|
|
|
Review criteria:
|
|
|
|
|
|
|
|
- [ ] Disenchanter can connect and issue actions
|
|
|
|
|
|
|
|
This is an automated PR.
|
|
|
|
<sub>[workflow](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/.github/workflows/pull-request.yml).</sub>
|
|
|
|
base: main
|
|
|
|
branch: cicd/patch-${{ github.event.number }}
|
|
|
|
labels: kind/documentation, area/test, ok-to-test
|
|
|
|
token: ${{ secrets.REDBOT_GITHUB_TOKEN }}
|