Contributing to Meshery Server
As a new contributor, you’re going to want to familiarize with the project in order to resolve the issues in the best way. Installing and playing around with Meshery will give you context for the any issues that you might work on.
Once an issue has been addressed, you’ll need to test it as well. Ideally, these tests are run from the user’s perspective (someone running Meshery in a container), not from a contributor’s perspective (someone running Meshery as a locally-compiled service).
Compiling and Running Meshery server
To build and run Meshery server from source:
- Build the static assets for the UI by running
make ui-setup make ui-build
- Build & run the server code by running
make server // Or make run-fast
Any time changes are made to the GO code, you will have to stop the server and run the above command again.
Once the Meshery server is up and running, you should be able to access Meshery on your
localhost on port
http://localhost:9081. One thing to note, you might NOT see the Meshery UI until the UI code is built as well.
After running Meshery server, you will need to select your Cloud Provider by navigating to
localhost:9081. Only then you will be able to use the Meshery UI on port
Building Docker image
To build a Docker image of Meshery, please ensure you have
Docker installed to be able to build the image. Now, run the following command to build the Docker image:
Define and validate errors
Every Golang-based project that belongs to Layer5 incorporates a utility to define and manage error messages for every error instance. This is internally done with several make commands, but one can explicitely validate with the help of the following make command. This checks and validates the errors that are present in the particular project.
For more details, Error Utility