Compare commits

...

5 Commits

Author SHA1 Message Date
Xinwei Xiong(cubxxw-openim) b1bd1df2d5 fix: scripts path
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
2023-08-02 16:43:12 +08:00
Xinwei Xiong(cubxxw-openim) e9a65701c3 fix: scripts path
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
2023-08-02 16:24:24 +08:00
Xinwei Xiong(cubxxw-openim) 02717604ca feat: set github hub
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
2023-08-02 12:36:15 +08:00
Xinwei Xiong(cubxxw-openim) 88f6f51eff feat: set github hub
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
2023-08-02 12:35:45 +08:00
Xinwei Xiong(cubxxw-openim) cce47bddd7 fix: part of the make rules optimization
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
2023-07-31 22:15:22 +08:00
14 changed files with 215 additions and 97 deletions
+2 -2
View File
@@ -1,5 +1,5 @@
USER=root
PASSWORD=openIM123
MINIO_ENDPOINT=http://127.0.0.1:10005
API_URL=http://127.0.0.1:10002/object/
MINIO_ENDPOINT=http://116.30.3.14:10005
API_URL=http://116.30.3.14:10002/object/
DATA_DIR=./
+34
View File
@@ -9,3 +9,37 @@ updates:
directory: "/"
schedule:
interval: "daily"
time: "08:00"
labels:
- "dependencies"
commit-message:
prefix: "feat"
include: "scope"
groups:
gomod-deps:
patterns:
- "*"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
time: "08:00"
labels:
- "dependencies"
commit-message:
prefix: "chore"
include: "scope"
groups:
github-actions:
patterns:
- "*"
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "daily"
time: "08:00"
labels:
- "dependencies"
commit-message:
prefix: "feat"
include: "scope"
+9 -19
View File
@@ -18,30 +18,21 @@ on:
pull_request:
# types:
# - closed
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
create-pr:
runs-on: ubuntu-latest
if: github.event.pull_request.base.ref == 'main'
if: github.event.pull_request.base.ref == 'main' && github.event.pull_request.merged == true
steps:
- name: Check out code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup GitHub CLI
run: |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0
sudo apt-add-repository https://cli.github.com/packages
sudo apt-get update
sudo apt-get install gh
continue-on-error: true
# - name: Configure GitHub CLI
# run: |
# git config --global user.email "3293172751ysy@gmail.com"
# git config --global user.name "kubbot"
# echo "${{ secrets.BOT_GITHUB_TOKEN }}" | gh auth login --with-token
- name: Create PR to release branch
run: |
ISSUEID=$(gh pr view ${{ github.event.pull_request.number }} --repo $OWNER/$REPO | grep -oP 'Fixes #\K\d+')
@@ -56,10 +47,9 @@ jobs:
gh pr edit ${{ github.event.pull_request.number }} --repo $OWNER/$REPO --add-label "$LABELS" --add-assignee "$ASSIGNEES" --milestone "$MILESTONE"
git checkout -b bot/merge-to-release-$ISSUEID
git push origin bot/merge-to-release-$ISSUEID
gh pr create --base release --head bot/merge-to-release-$ISSUEID --title "Merge main to release" --body ""
# git checkout -b bot/merge-to-release-$ISSUEID
# git push origin bot/merge-to-release-$ISSUEID
# gh pr create --base release --head bot/merge-to-release-$ISSUEID --title "Merge main to release" --body ""
# gh pr create --base main --head feat/auto-release-pr-624 --title "The bug is fixed" --body "$x" --repo OpenIMSDK/Open-IM-Server --reviewer "cubxxw"
continue-on-error: true
env:
@@ -67,4 +57,4 @@ jobs:
GH_TOKEN: ${{ github.token }}
ISSUE: ${{ github.event.issue.html_url }}
OWNER: ${{ github.repository_owner }}
REPO: ${{ github.event.repository.name }}
REPO: ${{ github.event.repository.name }}
+38
View File
@@ -0,0 +1,38 @@
name: Create Tag
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
create_tag:
runs-on: ubuntu-latest
if: startsWith(github.event.comment.body, '/create tag')
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Validate version number and get comment
id: validate
run: |
COMMENT="${{ github.event.comment.body }}"
VERSION=$(echo $COMMENT | cut -d ' ' -f 3)
TAG_COMMENT=$(echo $COMMENT | cut -d '"' -f 2)
if [[ $VERSION =~ ^v([0-9]+\.){2}[0-9]+$ ]]; then
echo "version=$VERSION" >> $GITHUB_STATE
echo "tag_comment=$TAG_COMMENT" >> $GITHUB_STATE
else
echo "Invalid version number."
exit 1
fi
- name: Create a new tag
env:
GH_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
run: |
source $GITHUB_STATE
git tag -a $VERSION -m "$tag_comment"
git push origin $VERSION
echo "tag_created=$VERSION" >> $GITHUB_OUTPUT
+1
View File
@@ -18,6 +18,7 @@ on:
push:
branches:
- main
- release-v*
paths:
- "**.go"
- "!**_test.go"
+58
View File
@@ -0,0 +1,58 @@
# shamelessly copied from https://github.com/sigstore/cosign/blob/main/.github/workflows/milestone.yaml
name: milestone
on:
pull_request_target:
types: [closed]
branches:
- main
jobs:
milestone:
runs-on: ubuntu-latest
permissions:
actions: none
checks: none
contents: read
deployments: none
issues: write
packages: none
pull-requests: write
repository-projects: none
security-events: none
statuses: none
steps:
- uses: actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410 # v6
with:
script: |
if (!context.payload.pull_request.merged) {
console.log('PR was not merged, skipping.');
return;
}
if (!!context.payload.pull_request.milestone) {
console.log('PR has existing milestone, skipping.');
return;
}
milestones = await github.rest.issues.listMilestones({
owner: context.repo.owner,
repo: context.repo.repo,
state: 'open',
sort: 'due_on',
direction: 'asc'
})
if (milestones.data.length === 0) {
console.log('There are no milestones, skipping.');
return;
}
await github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.pull_request.number,
milestone: milestones.data[0].number
});
+1 -1
View File
@@ -33,4 +33,4 @@ jobs:
with:
project: OpenIM-V3.1
column: In Progress
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token: ${{ secrets.BOT_GITHUB_TOKEN }}
+1 -1
View File
@@ -114,7 +114,7 @@ linters-settings:
max-blank-identifiers: 2
dupl:
# tokens count to trigger issue, 150 by default
threshold: 100
threshold: 200
errcheck:
# report about not checking of errors in type assertions: `a := b.(MyStruct)`;
# default is false: such cases aren't reported by default.
+6 -3
View File
@@ -447,8 +447,8 @@ milestones:
# Repository for the milestone
# Default is extracted from the origin remote URL
repo:
owner: user
name: repo
owner: OpenIMSDK
name: Open-IM-Server
# Whether to close the milestone
close: true
@@ -479,6 +479,9 @@ checksum:
algorithm: sha256
release:
prerelease: auto
footer: |
## Welcome to the {{ .Tag }} release of [chat](https://github.com/OpenIMSDK/chat)!🎉🎉!
@@ -493,7 +496,7 @@ release:
This release is only possible thanks to **all** the support of some **awesome people**!
https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/conversions/version.md
If you wish to use mirroring, read OpenIM's [image management policy](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/conversions/images.md)
**Want to be one of them 😘?**
+8 -17
View File
@@ -1,10 +1,6 @@
# Build Stage
FROM golang:1.20 AS builder
LABEL org.opencontainers.image.source=https://github.com/OpenIMSDK/Open-IM-Server
LABEL org.opencontainers.image.description="OpenIM Server image"
LABEL org.opencontainers.image.licenses="Apache 2.0"
# Set go mod installation source and proxy
ARG GO111MODULE=on
ARG GOPROXY=https://goproxy.cn,direct
@@ -12,26 +8,21 @@ ENV GO111MODULE=$GO111MODULE
ENV GOPROXY=$GOPROXY
# Set up the working directory
WORKDIR /Open-IM-Server
WORKDIR /openim/openim-server
# Copy all files to the container
ADD . .
RUN /bin/sh -c "make clean"
RUN /bin/sh -c "make build"
# Production Stage
FROM alpine
FROM ghcr.io/openim-sigs/openim-bash-image:latest
RUN echo "https://mirrors.aliyun.com/alpine/v3.4/main" > /etc/apk/repositories && \
apk --no-cache add tzdata ca-certificates bash
# Set directory to map logs, config files, scripts, and SDK
VOLUME ["/Open-IM-Server/logs", "/Open-IM-Server/config", "/Open-IM-Server/scripts", "/Open-IM-Server/db/sdk"]
WORKDIR ${SERVER_WORKDIR}
# Copy scripts and binary files to the production image
COPY --from=builder /Open-IM-Server/scripts /Open-IM-Server/scripts
COPY --from=builder /Open-IM-Server/_output/bin/platforms/linux/amd64 /Open-IM-Server/_output/bin/platforms/linux/amd64
COPY --from=builder ${OPENIM_SERVER_CMDDIR} /openim/openim-server/scripts
COPY --from=builder ${SERVER_WORKDIR}/config /openim/openim-server/config
COPY --from=builder ${SERVER_WORKDIR}/_output/bin/ /openim/openim-server/_output/bin/
WORKDIR /Open-IM-Server/scripts
CMD ["./docker_start_all.sh"]
CMD ["sh","-c","${OPENIM_SERVER_CMDDIR}/docker_start_all.sh"]
+7 -5
View File
@@ -103,11 +103,9 @@ services:
image: ghcr.io/openimsdk/openim-server:latest
container_name: openim-server
volumes:
- ./logs:/Open-IM-Server/logs
- ./config/config.yaml:/Open-IM-Server/config/config.yaml
- ./config/notification.yaml:/Open-IM-Server/config/notification.yaml
- ${DATA_DIR}/db/sdk:/Open-IM-Server/db/sdk
- ./scripts:/Open-IM-Server/scripts
- ./logs:/openim/openim-server/logs
- ./config:/openim/openim-server/config
- ./scripts:/openim/openim-server/scripts
restart: always
depends_on:
- zookeeper
@@ -126,6 +124,10 @@ services:
openim_chat:
image: ghcr.io/openimsdk/openim-chat:latest
container_name: openim_chat
volumes:
- ./_output/openim/openim-chat/logs:/openim/openim-chat/logs
- ./_output/openim/openim-chat/config:/openim/openim-chat/config
- ./_output/openim/openim-chat/scripts:/openim/openim-chat/scripts
restart: always
depends_on:
- mysql
+6 -7
View File
@@ -22,11 +22,11 @@ OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
#fixme Put the shell scripts name here
need_to_start_server_shell=(
start_rpc_service.sh
msg_gateway_start.sh
push_start.sh
msg_transfer_start.sh
start_cron.sh
${SCRIPTS_ROOT}/start_rpc_service.sh
${SCRIPTS_ROOT}/msg_gateway_start.sh
${SCRIPTS_ROOT}/push_start.sh
${SCRIPTS_ROOT}/msg_transfer_start.sh
${SCRIPTS_ROOT}/start_cron.sh
)
#fixme The 10 second delay to start the project is for the docker-compose one-click to start openIM when the infrastructure dependencies are not started
@@ -41,8 +41,7 @@ echo "==========================================================">>$OPENIM_ROOT/
echo "==========================================================">>$OPENIM_ROOT/logs/openIM.log 2>&1 &
echo "==========================================================">>$OPENIM_ROOT/logs/openIM.log 2>&1 &
for i in ${need_to_start_server_shell[*]}; do
chmod +x $i
./$i
$i
done
sleep 15
+1 -2
View File
@@ -4,8 +4,6 @@
demo_server_name="openim_chat_api"
demo_server_binary_root="$BIN_DIR/"
#Global configuration file default dir
config_path="../.docker-compose_cfg/config.yaml"
@@ -18,6 +16,7 @@ service_source_root=(
../cmd/openim-rpc/admin/
../cmd/openim-rpc/chat/
)
#service filename
service_names=(
#api service filename
+43 -40
View File
@@ -13,50 +13,53 @@
# See the License for the specific language governing permissions and
# limitations under the License.
function style-info() {
COLOR_SUFFIX="\033[0m" # End all colors and special effects
COLOR_SUFFIX="\033[0m" # End all colors and special effects
BLACK_PREFIX="\033[30m" # Black prefix
RED_PREFIX="\033[31m" # Red prefix
GREEN_PREFIX="\033[32m" # Green prefix
YELLOW_PREFIX="\033[33m" # Yellow prefix
BLUE_PREFIX="\033[34m" # Blue prefix
PURPLE_PREFIX="\033[35m" # Purple prefix
SKY_BLUE_PREFIX="\033[36m" # Sky blue prefix
WHITE_PREFIX="\033[37m" # White prefix
BOLD_PREFIX="\033[1m" # Bold prefix
UNDERLINE_PREFIX="\033[4m" # Underline prefix
ITALIC_PREFIX="\033[3m" # Italic prefix
BLACK_PREFIX="\033[30m" # Black prefix
RED_PREFIX="\033[31m" # Red prefix
GREEN_PREFIX="\033[32m" # Green prefix
YELLOW_PREFIX="\033[33m" # Yellow prefix
BLUE_PREFIX="\033[34m" # Blue prefix
PURPLE_PREFIX="\033[35m" # Purple prefix
SKY_BLUE_PREFIX="\033[36m" # Sky blue prefix
WHITE_PREFIX="\033[37m" # White prefix
BOLD_PREFIX="\033[1m" # Bold prefix
UNDERLINE_PREFIX="\033[4m" # Underline prefix
ITALIC_PREFIX="\033[3m" # Italic prefix
CYAN_PREFIX="033[0;36m" # Cyan prefix
CYAN_PREFIX="033[0;36m" # Cyan prefix
BACKGROUND_BLACK="\033[40m" # Black background
BACKGROUND_RED="\033[41m" # Red background
BACKGROUND_GREEN="\033[42m" # Green background
BACKGROUND_YELLOW="\033[43m" # Yellow background
BACKGROUND_BLUE="\033[44m" # Blue background
BACKGROUND_PURPLE="\033[45m" # Purple background
BACKGROUND_SKY_BLUE="\033[46m" # Sky blue background
BACKGROUND_WHITE="\033[47m" # White background
BACKGROUND_BLACK="\033[40m" # Black background
BACKGROUND_RED="\033[41m" # Red background
BACKGROUND_GREEN="\033[42m" # Green background
BACKGROUND_YELLOW="\033[43m" # Yellow background
BACKGROUND_BLUE="\033[44m" # Blue background
BACKGROUND_PURPLE="\033[45m" # Purple background
BACKGROUND_SKY_BLUE="\033[46m" # Sky blue background
BACKGROUND_WHITE="\033[47m" # White background
BLINK="\033[5m" # Blinking effect
INVERT="\033[7m" # Invert color
HIDE="\033[8m" # Hide text
BLINK="\033[5m" # Blinking effect
INVERT="\033[7m" # Invert color
HIDE="\033[8m" # Hide text
GRAY_PREFIX="\033[90m" # Gray prefix
LIGHT_RED_PREFIX="\033[91m" # Light red prefix
LIGHT_GREEN_PREFIX="\033[92m" # Light green prefix
LIGHT_YELLOW_PREFIX="\033[93m" # Light yellow prefix
LIGHT_BLUE_PREFIX="\033[94m" # Light blue prefix
LIGHT_PURPLE_PREFIX="\033[95m" # Light purple prefix
LIGHT_SKY_BLUE_PREFIX="\033[96m" # Light sky blue prefix
LIGHT_WHITE_PREFIX="\033[97m" # Light white prefix
GRAY_PREFIX="\033[90m" # Gray prefix
LIGHT_RED_PREFIX="\033[91m" # Light red prefix
LIGHT_GREEN_PREFIX="\033[92m" # Light green prefix
LIGHT_YELLOW_PREFIX="\033[93m" # Light yellow prefix
LIGHT_BLUE_PREFIX="\033[94m" # Light blue prefix
LIGHT_PURPLE_PREFIX="\033[95m" # Light purple prefix
LIGHT_SKY_BLUE_PREFIX="\033[96m" # Light sky blue prefix
LIGHT_WHITE_PREFIX="\033[97m" # Light white prefix
BACKGROUND_GRAY="\033[100m" # Gray background
BACKGROUND_LIGHT_RED="\033[101m" # Light red background
BACKGROUND_LIGHT_GREEN="\033[102m" # Light green background
BACKGROUND_LIGHT_YELLOW="\033[103m" # Light yellow background
BACKGROUND_LIGHT_BLUE="\033[104m" # Light blue background
BACKGROUND_LIGHT_PURPLE="\033[105m" # Light purple background
BACKGROUND_LIGHT_SKY_BLUE="\033[106m" # Light sky blue background
BACKGROUND_LIGHT_WHITE="\033[107m" # Light white background
}
BACKGROUND_GRAY="\033[100m" # Gray background
BACKGROUND_LIGHT_RED="\033[101m" # Light red background
BACKGROUND_LIGHT_GREEN="\033[102m" # Light green background
BACKGROUND_LIGHT_YELLOW="\033[103m" # Light yellow background
BACKGROUND_LIGHT_BLUE="\033[104m" # Light blue background
BACKGROUND_LIGHT_PURPLE="\033[105m" # Light purple background
BACKGROUND_LIGHT_SKY_BLUE="\033[106m" # Light sky blue background
BACKGROUND_LIGHT_WHITE="\033[107m" # Light white background
style-info