Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: support mac deployment and optimization make check #1570

Merged
merged 16 commits into from
Dec 16, 2023

Conversation

cubxxw
Copy link
Contributor

@cubxxw cubxxw commented Dec 16, 2023


🔍 What type of PR is this?

/kind feature

👀 What this PR does / why we need it:

  • My pull request adheres to the code style of this project
  • My code requires changes to the documentation
  • I have updated the documentation as required
  • All the tests have passed

Body:

This PR addresses critical issues faced by users when deploying OpenIM on macOS, providing necessary fixes and improvements to streamline the deployment process.

Key Highlights:

  1. macOS Deployment Issues Resolved:
    • We identified that some users were encountering challenges while deploying OpenIM on macOS. This update includes adjustments and optimizations specifically targeting the macOS environment, ensuring a smoother deployment experience.
  2. Make Check for Port Availability:
    • Previously, the make check command encountered difficulties in correctly identifying and displaying available ports. This PR introduces a refined approach to port checking, enhancing the accuracy and reliability of the process.
  3. Integration of CI/CD Logic for macOS:
    • To further support and maintain consistent deployments on macOS, we've incorporated CI/CD logic tailored for macOS environments. This addition ensures that the source code deployment on macOS is continuously tested and validated, aligning with our commitment to reliability and cross-platform compatibility.
  4. Enhanced Display of Service Ports:
    • The improvements in this PR extend to the visual representation of service names and their respective ports. Users can now see a comprehensive list of services and their ports, making it easier to manage and debug the system.

Before and After the Changes:

Before the Changes:

rubyCopy codesmile@smile:/data/workspaces/open-im-server$ make check 
===========> Checking openim

# Begin to check all openim service
+-------------------------+----------+
| Service Name            | Port     |
+-------------------------+----------+
| openim-user             | 10110    |
+-------------------------+----------+
+-------------------------+----------+
| Service Name            | Port     |
+-------------------------+----------+
| redis                   | 16379    |
+-------------------------+----------+

After the Changes:

rubyCopy codesmile@smile:/data/workspaces/open-im-server$ make check 
===========> Checking openim

# Begin to check all openim service
+-------------------------+----------+
| Service Name            | Port     |
+-------------------------+----------+
| openim-user             | 10110    |
| openim-friend           | 10120    |
| openim-msg              | 10130    |
| openim-msg-gateway      | 10140    |
| openim-group            | 10150    |
| openim-auth             | 10160    |
| openim-push             | 10170    |
| openim-conversation     | 10180    |
| openim-third            | 10190    |
| openim-api              | 10002    |
| openim-ws               | 10001    |
+-------------------------+----------+
+-------------------------+----------+
| Service Name            | Port     |
+-------------------------+----------+
| redis                   | 16379    |
| zookeeper               | 12181    |
| kafka                   | 19094    |
| mongodb                 | 37017    |
| minio                   | 10005    |
+-------------------------+----------+

🅰 Which issue(s) this PR fixes:

Fixes #1569

📝 Special notes for your reviewer:

🎯 Describe how to verify it

github CICD
OR local os:

make check

📑 Additional documentation e.g., RFC, notion, Google docs, usage docs, etc.:

Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Copy link
Contributor

sweep-ai bot commented Dec 16, 2023

Apply Sweep Rules to your PR?

  • Apply: All new business logic should have corresponding unit tests.
  • Apply: Refactor large functions to be more modular.
  • Apply: Add docstrings to all functions and file headers.

Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Copy link

codecov bot commented Dec 16, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (2cef0f6) 4.88% compared to head (0a2b29d) 4.88%.

Additional details and impacted files
@@          Coverage Diff          @@
##            main   #1570   +/-   ##
=====================================
  Coverage   4.88%   4.88%           
=====================================
  Files         42      42           
  Lines       3787    3787           
=====================================
  Hits         185     185           
  Misses      3592    3592           
  Partials      10      10           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com>
@cubxxw cubxxw added this pull request to the merge queue Dec 16, 2023
Merged via the queue into openimsdk:main with commit c2dfc37 Dec 16, 2023
20 checks passed
@cubxxw cubxxw deleted the feat/support-mac-deployment branch December 16, 2023 15:01
@github-actions github-actions bot added this to the v3.1 milestone Dec 16, 2023
@openimsdk openimsdk locked and limited conversation to collaborators Dec 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bug: Improve macOS Compatibility by Handling Absence of ss Command
3 participants