Git Product home page Git Product logo

meshsync's Introduction

Shows an illustrated light mode meshery logo in light color mode and a dark mode meshery logo dark color mode.



Docker Pulls Go Report Card Build Status Website Twitter Follow Slack CII Best Practices

MeshSync

MeshSync, an event-driven, continuous discovery and synchronization engine performs the task of ensuring that the state of configuration and status of operation of any supported Meshery platform (e.g. Kubernetes) and environment are known to Meshery Server. When deployed into Kubernetes enviroments, MeshSync runs as a Kubernetes custom controller under the control of Meshery Operator.

See MeshSync in Meshery Docs for additional information.

Β 

Join the Community!

Our projects are community-built and welcome collaboration. πŸ‘ Be sure to see the Layer5 Community Welcome Guide for a tour of resources available to you and jump into our Slack!

MeshMates

Find your MeshMate

MeshMates are experienced Layer5 community members, who will help you learn your way around, discover live projects and expand your community network. Become a Meshtee today!

Find out more on the Layer5 community.




Β 
Shows an illustrated light mode meshery logo in light color mode and a dark mode meshery logo dark color mode.

Layer5 Cloud Native Community

βœ”οΈ Join any or all of the weekly meetings on community calendar.
βœ”οΈ Watch community meeting recordings.
βœ”οΈ Access the Community Drive by completing a community Member Form.
βœ”οΈ Discuss in the Community Forum.

Not sure where to start? Grab an open issue with the help-wanted label.

meshsync's People

Contributors

acald-creator avatar aisuko avatar alphax86 avatar aneeshnema avatar anita-ihuman avatar aritra8438 avatar azanul avatar bariqhibat avatar chetak123 avatar debjani1413 avatar delusionaloptimist avatar dependabot[bot] avatar dhruv0000 avatar hamza-mohd avatar humblenginr avatar kiptoonkipkurui avatar kumarabd avatar leecalcote avatar metonymic-smokey avatar muzairs15 avatar nebula-aac avatar revolyssup avatar ryanamay avatar sambhavgupta0705 avatar sandramsc avatar shivangshandilya avatar tangledbytes avatar thebeginner86 avatar utkarshmishra12 avatar weifuchow avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

meshsync's Issues

Support `ConfigMaps`

Description
MeshSync doesn't discover this resource type.

Expected Behavior
Add support for discovering ConfigMap Kubernetes resource type. Do the same thing that was done here - 1b640b8, but for ConfigMap

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Support Persistent Volumes

Current Behavior
MeshSync doesn't discover this resource type.

Implementation
Add support for discovering this Kubernetes resource type. Do the same thing that was done here - 1b640b8, but for persistent volumes

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Upgrade to Golang 1.17, latest MeshKit and Meshery Operator

Current Behavior
The golang version and key dependencies need upgraded here.


Resources

Alternatives / Additional Context

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Error Codes for local MeshSync store

Current Behavior

From #103 - "Error codes are yet to be created for the functionalities that has been introduced in this PR, which would be addressed in a different PR."

Desired Behavior
Robustly written error codes


Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Support Persistent Volume Claims

Current Behavior
MeshSync doesn't discover this resource type.

Implementation
Add support for discovering this Kubernetes resource type. Do the same thing that was done here - 1b640b8, but for persistentvolumeclaims

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

[Docs] Add MeshSync logo to readme

Current State:
This repo was just created and needs a description of the project.

Desired State:
The MeshSync logo and a short blurb about MeshSync should be added to this repo.


Contributor Resources

Admission controller behaviour

Current Behavior
Meshsync should be acting as an admission controller, listening to new CRs and web hooks created. Currently it does discovery for only the existing CRs which exist in the cluster during boot up of the MeshSync controller.

Desired Behavior
New CRs that get added to the cluster should be discovered by MeshSync.


Resources

Alternatives / Additional Context

Meshery Dashboard still shows pods in the istio-system namespace even when they are terminated

Description

Installed and deleted Istio from Meshery UI but the Meshery Dashboard still shows one pod from istio-system namespace even though it is terminated.

Screenshot 2021-10-08 at 7 34 07 PM

Expected Behavior

The dashboard should show no resources if they are not present in the cluster.

Environment:

  • OS: Ubuntu
  • Browser: Brave (Chromium)
  • Meshery Version: edge-latest (v0.5.66)

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Support `endpoints`

Current Behavior
MeshSync doesn't discover endpoints resource type.

Desired Behavior
Add support for discovering endpoints Kubernetes resource type. Do the same thing that was done here - 1b640b8, but for STatefulSet

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

[Feature] ReSync (and full sync)

Current Behavior
Support reinitialization of MeshSync and Meshery Server connections.

Situation
Meshery Server connects to MeshSync, synchronizes, then becomes disconnected.

Scenarios
Support the following two situations:

  1. Reconnect prior Meshery Server instance to existing MeshSync instance.
  2. Connect new Meshery Server to existing MeshSync instance.

[CI] Update Slack.yml and add newcomer-alert workflow

Current Behavior
Currently the slack.yml is outdated. Also there is no automated way of notifying the slack channel when a "good first issue" has been created.

Desired Behavior
Update slack.yml and add newcomer-alert.yml to the Github workflow.


Resources
Add the updated slack.yml file and the newcomer-alert.yml file to the .github/workflow folder.

Files needed:
https://github.com/meshery/meshery-istio/blob/master/.github/workflows/slack.yml
https://github.com/layer5io/layer5/blob/master/.github/workflows/newcomers-alert.yml

[README] Need to add `Community Forum`

Description

README.md is the first file one should read when starting a new project. Our community launched Discussion forum for help seekers; needs to publish it officially on README.md for convenience.

Screenshots

Current behaviour:
image

Desired behaviour:
image

Note:
Need to add only last line for Community Forum

Environment:

  • OS: any [e.g. Ubuntu]
  • Browser: any [e.g. Chrome, Safari]
  • Version: any [e.g. 22]
  • Device: any [e.g. laptop, iPhone 8]

Reference:

[README] Update README Community Section

Description
The Community section in the README says "Access the Community Drive". There is a new procedure of having this automated based on the individual filling in a community member form

Expected Behavior
Update "Access Community Drive" to "To Access Community Drive, fill Community Member Form"

Screenshots
img

Resources
Refer to the Contributing guide

Environment:

  • OS: [e.g. Ubuntu]
  • Browser: [e.g. Chrome, Safari]
  • Version: [e.g. 22]
  • Device: [e.g. laptop, iPhone 8]

[README] Need to fix Slack badge

Description

README.md is the first file one should read when starting a new project. For attractive look, we added some badges also.
But, there's a Slack badge failing, need to fix that.

Example Screenshot

Current Behavior

image

Desired Behavior
image

Environment:

  • OS: any [e.g. Ubuntu]
  • Browser: any [e.g. Chrome, Safari]
  • Version: any [e.g. 22]
  • Device: any [e.g. laptop, iPhone 8]

New MeshSync Releases not receiving current version number

Description
Related to issue #86, new MeshSync release numbers are not showing in the Meshery UI. Is this a MeshSync issue?

Linker flags might be missing in the build process.

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Container crashing on minikube/KIND

Description
Fix minikube/KIND cluster specific container issues.

  • Roles/Cluster roles need changes

Screenshots

Environment:

  • OS: [e.g. Ubuntu]
  • Browser: [e.g. Chrome, Safari]
  • Version: [e.g. 22]
  • Device: [e.g. laptop, iPhone 8]

[Optional] To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

[Optional] Additional Context

Replace the Logo of Layer5 with Meshery in config.yml workflow

Description

Currently, we are using the Logo of Layer5 instead of Meshery. This repository is under the organization Meshery, so, there should be an image of Meshery.

How to resolve this

  • Go to .github and replace this welcome image with the new one:

  • Make sure to display the images conditionally, based on the theme selected by user.
    Here's the sample code:

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/GiorgosXou/Random-stuff/main/Programming/StackOverflow/Answers/70200610_11465149/w.png">
  <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/GiorgosXou/Random-stuff/main/Programming/StackOverflow/Answers/70200610_11465149/b.png">
  <img alt="Meshery Logo" src="">
</picture>

New images are:

image

image

  • Download these images, and upload with an appropriate name. Make sure to use conditional rendering as described above.

  • After uploading the image, and removing the previous image, go to .github/config.yml folder and update the reference to previous image to the new image in the following part:

firstPRMergeComment: >
  Thanks for your contribution to the Layer5 and Meshery community! :tada:
   
  ![Congrats!](https://raw.githubusercontent.com/meshery/meshery.io/master/.github/welcome/Layer5-celebration.png)
  &nbsp; &#9; &nbsp; &#9;  &nbsp; &#9;  &nbsp; &#9; :star: Please leave a [star on the project](../stargazers). :smile:

Here, replace ![Congrats!](https://raw.githubusercontent.com/meshery/meshery.io/master/.github/welcome/Layer5-celebration.png) with the code

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/GiorgosXou/Random-stuff/main/Programming/StackOverflow/Answers/70200610_11465149/w.png">
  <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/GiorgosXou/Random-stuff/main/Programming/StackOverflow/Answers/70200610_11465149/b.png">
  <img alt="Shows a black logo in light color mode and a white one in dark color mode." src="https://user-images.githubusercontent.com/25423296/163456779-a8556205-d0a5-45e2-ac17-42d089e3c3f8.png">
</picture>

make sure to change the image sources with the path to image in the folder where you upload it.

  • That's it.

Environment:

  • OS: [e.g. Ubuntu]
  • Browser: [e.g. Chrome, Safari]
  • Version: [e.g. 22]
  • Device: [e.g. laptop, iPhone 8]

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

[CI] add label commenter workflow

Description:

This repository should have the label commenter workflow.
It would run whenever an issue/pr is labelled with one of the targeted labels and comment down any relevant information.

Contributor Reference:

The workflow would use: https://github.com/peaceiris/actions-label-commenter

A sample workflow is defined in: https://github.com/meshery/meshery/blob/master/.github/workflows/label-commenter.yml.

It would also need a sample configuration which is defined in: https://github.com/meshery/meshery/blob/master/.github/label-commenter-config.yml

NOTE:

[Enhancement] Use Streaming Lists when available

Current Behavior

MeshSync performs discovery of specific Kubernetes API types using watches and sharedInformers.

Desired Behavior

Enhance MeshSync to use Streaming Lists when available in the managed Kubernetes cluster.

Implementation:

  1. Verify whether Streaming Lists are available. If so, use them.

Acceptance Criteria

  1. When Streaming Lists are not available, downgrade to current methodology.
  2. Confirm that all of the same resource details are retrieved via Streaming Lists as are retrieved using the current methodology.

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Support Ingresses

Current Behavior
MeshSync doesn't discover this resource type.

Implementation
Add support for discovering this Kubernetes resource type. Do the same thing that was done here - 1b640b8, but for ingresses

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

[CI] Support multi-platform Docker images

Desired Behavior

Meshery users, particularly those running Docker Desktop can benefit from multi-platform images of Meshery Server.

Implementation

Refactor existing stable and edge build and release workflows to use docker-build-push actions. See https://github.com/meshery/meshery/blob/master/.github/workflows/build-and-release-dde.yml as an example.

Be aware of local binaries and their needs:

  1. layer5/kubeopenapi-json

Acceptance Tests

  1. platform: linux/amd64,linux/arm64 should both be supported.2.

Contributor Guides and Resources

Send only "interesting" updates

Current Behavior
MeshSync is sending uninteresting updates to Meshery Server as part of its synchronization routine.

Desired Behavior
Incorporate additional intelligence to only send materially interesting updates.


Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

[BUG] No error handling in internal/cache package

Description
Whenever meshsync runs or someone import it, it init internal/cache package.
To init a package an init() function is called.
There is no error handling in that package

Expected Behavior
There should be error handling in the init() function.

Issue Template Updates for Figma link

Current Behavior

The project's current issue templates are missing an open invitation link where new contributors can join the community's Figma team and view user interface designs and other UX projects.

Desired Behavior

Each template that has a reference to Figma in its resources section should an invite link added.

Implementation

In each issue template that refers to Figma, replace the current line referring to Figma with this line:

- 🎨 Wireframes and [designs for Meshery UI](https://www.figma.com/file/SMP3zxOjZztdOLtgN4dS2W/Meshery-UI) in Figma [(open invite)](https://www.figma.com/team_invite/redeem/qJy1c95qirjgWQODApilR9)```

Acceptance Tests

  1. All references to Figma include the "open invite" link.

Contributor Resources

The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.