Skip to content

Commit

Permalink
Refactor code structure for improved maintainability and performance
Browse files Browse the repository at this point in the history
Signed-off-by: Lee Calcote <[email protected]>
  • Loading branch information
leecalcote committed Dec 20, 2024
1 parent 4edd822 commit 321b097
Showing 1 changed file with 27 additions and 106 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ We're thrilled to unveil Meshery v0.8.0! This release marks a significant milest

## Registry & Models: Enhanced Management and Control

The [Meshery Registry](https://docs.meshery.io/concepts/logical/registry) takes center stage in v0.8.0, acting as the central repository for all capabilities known to Meshery. This includes models, components, relationships, and policies. <img src="/assets/images/posts/2024-03-29-models-designs-legos/five-legos.png" style="float:right; width:50%;" />
The [Meshery Registry](https://docs.meshery.io/concepts/logical/registry) takes center stage in v0.8.0, acting as the central repository for all capabilities known to Meshery. This includes models, components, relationships, and policies. <img src="/assets/images/posts/2024-03-29-models-designs-legos/five-legos.png" style="float:right; width:50%;" />

* **First-Class Resources:** Models and Relationships are now treated as first-class resources, enabling easier management, import/export functionality, and dynamic generation.
* **Server Model Generator:** Directly retrieve Helm Charts or Kubernetes manifests using the new Server Model Generator.
Expand Down Expand Up @@ -53,8 +53,7 @@ Meshery Catalog functions much like a cloud marketplace, providing a user-friend

Browse the [catalog](/catalog) or learn more about [how it works](https://docs.meshery.io/concepts/catalog).

You can now browse Meshery Designs in the [Artifact Hub search](https://artifacthub.io/packages/search?kind=24&sort=relevance&page=1).
An integration with Artifact Hub is delivered in this release, allowing you to [publish your Meshery Designs to the Artifact Hub](https://deploy-preview-1990--mesheryio-preview.netlify.app/blog/designs-on-artifact-hub), a community-driven catalog of Kubernetes applications with [over 200 Meshery designs](/blog/200-meshery-designs-on-artifacthub) to date and more on the way.
You can now browse Meshery Designs in the [Artifact Hub search](https://artifacthub.io/packages/search?kind=24&sort=relevance&page=1). An integration with Artifact Hub is delivered in this release, allowing you to [publish your Meshery Designs to the Artifact Hub](https://deploy-preview-1990--mesheryio-preview.netlify.app/blog/designs-on-artifact-hub), a community-driven catalog of Kubernetes applications with [over 200 Meshery designs](/blog/200-meshery-designs-on-artifacthub) to date and more on the way.

### UI: A Fresh, Modern Look

Expand All @@ -65,137 +64,55 @@ The Meshery UI receives a major refresh with the adoption of the [Sistent design

### CLI: Increased Coverage and Functionality

The Meshery CLI boasts increased code coverage and a full migration from Apps to Designs.
The Meshery CLI boasts increased code coverage and a full deprecation of Apps and migration to Designs.

* **System Report:** Diagnose issues quickly with the new `system report` command.
* **Enhanced Model Support:** Dedicated commands for managing models, relationships, components, connections, credentials, and policies.

### Documentation and Learning
### Documentation, Learning, and the Playground

* **Playground Learning Paths:** Interactive, cloud-native tutorials within Meshery Playground offer hands-on learning experiences.

### Build, Test, Release: Improved Processes

* **End-to-End Testing:** Increased focus on end-to-end testing with a goal of 50% coverage.
* **Playwright Adoption:** Transitioning from Cypress to Playwright for more robust testing.
* **Automated Test Results:** Stay informed with automatically published end-to-end test results.

## Looking Ahead

While v0.8.0 delivers significant advancements, we're already working on v0.9.0! Planned features include:

* **Adapters & Performance Management:** Evolving `meshes.proto` to `adapters.proto` and externalizing Nighthawk for improved performance testing.
* **Basic Adaptive Load Controller:** Introducing adaptive testing capabilities for more dynamic performance analysis.
* **Custom Telemetry Provider:** Enabling user-defined dashboards and metrics for greater flexibility.

### Join the Meshery Community!

We invite you to explore Meshery v0.8.0 and experience the future of cloud native management. Join us on [Slack](https://slack.meshery.io/) to connect with the community, share your feedback, and contribute to the project.

**Dive deeper into the details and explore the full list of changes in the [Meshery Documentation](https://docs.meshery.io/docs/project/releases). Stay tuned for updates on [v0.9.0](https://discuss.layer5.io/t/meshery-v0-9-roadmap/6296)!**


<hr />



## Lifecycle and Configuration Management


**Relationships**

* Refactor Relationship as first-class resource.
* Relationship Coverage for All K8s Components ([spec](https://docs.google.com/spreadsheets/d/1DZHnzxYWOlJ69Oguz4LkRVTFM79kC2tuvdwizOJmeMw/edit#gid=0))
* Evaluation: Enhancing the mechanism used to reference policies on disk or in registry.
* Classification of Policy Evaluation into client-side, server-side, and cluster-side moments of evaluation and their distinctions.
* SelectorSets for Relationships

**Registry**
The master registry is exposed as in both of my clients in the CLI and the UI. As a systemwide setting, you can elect to ignore any models that have been registered.

Registration of connections and credentials

Meshery models support for commands:

Meshery CLI now has dedicated support for models, relationships, components, connections, credentials, and policies as first-class commands.

### Open Container Image (OCI) Support

Adopt OCI as the packaging and distribution format for Meshery Designs, Patterns, Filters, Models ([Design Spec](https://docs.google.com/document/d/1AmNnwtMbYSVQ00TZRYtEZBJQTrPtH_S51ZG2UiwBGqs/edit))
CLI: Pushing and pulling Models and Designs from OCI registries ([Design Spec](https://docs.google.com/document/d/1AmNnwtMbYSVQ00TZRYtEZBJQTrPtH_S51ZG2UiwBGqs/edit))

* Connection: Supporting OCI Registries ([Design Spec](https://docs.google.com/document/d/1AmNnwtMbYSVQ00TZRYtEZBJQTrPtH_S51ZG2UiwBGqs/edit))
* Signing OCI exported images
* Export a Design to GitHub
* Export a Model to Docker Hub


- Remote Provider: Deployment using Meshery (as a Meshery Design)
- Remote Provider: Multi-master Postgres

## Docs

* [Playground] Learning Paths: Cloud Native tutorials with Meshery Playground
* Creating three tutorials per category, allowing learners to perform hands-on lab interactively in the live cluster environment in Meshery Playground.
* Automated publication of End-to-End test results

## CLI

- CLI: code coverage goal: 50%
- CLI: Full migration from Apps to Designs
- CLI: `system report` - diagnostics reporting

### Build, Test, Release: Improved Processes

Server: End-to-End Testing coverage goal: 50%
Transition from Cypress to Playwright ([recorded training session]())
* **End-to-End Testing:** Increased focus on end-to-end testing with a goal of 50% coverage.
* **Playwright Adoption:** Transitioning from Cypress to Playwright for more robust testing.
* **Automated Test Results:** Stay informed with automatically published end-to-end test results.

### Playground
### Join the Meshery Community!

- Remote Provider: Deployment using Meshery (as a Meshery Design)
- Remote Provider: Multi-master Postgres
We invite you to explore Meshery v0.8.0 and experience the future of cloud native management. Join us on [Slack](https://slack.meshery.io/) to connect with the community, share your feedback, and contribute to the project.

New Maintainer: [Sangram Rath](https://layer5.io/community/sangram-rath)

**Get Involved!**

We welcome your contributions to Meshery! Please join our <a href="/calendar">weekly newcomers meeting</a> for a guided tour of how to get involved.

_If these topics excite you, come and say "Hi" in the community [Slack](https://slack.meshery.io/) and you are sure to be warmly welcomed. 😀_

* **Lifecycle Management:** Support for AWS and GCP, Static Model Generation sources AWS, GCP as K8s CRDs, Relationships for AWS, and more.
* **Registry & Models:** Refactor Model and Relationship as first-class resources, Model import/export, Server Model Generator for direct Helm Chart or K8s Manifest Retrieval, Dynamic Generation via URL (Chart, Manifest) upon Design import, and SelectorSets for Relationships.
* **Open Container Image (OCI) Support:** Adopt OCI as the packaging and distribution format for Meshery Designs, Patterns, Filters, and Models.
*

* **Extensibility & Extensions:** Extensible Authorization and Expand Meshery's Integration with Artifact Hub.
* **Docs:** Playground Learning Paths: Cloud Native tutorials with Meshery Playground and more.

* **CLI:** code coverage goal: 50% and Full migration from Apps to Designs.



This release also includes a number of bug fixes and performance improvements.

* **Build, Test, Release:** Server End-to-End Testing coverage goal: 25% and Transition from Cypress to Playwright.

Not included in this release are the following features, which are planned for future releases:

* **Adapters & Performance Management:** Evolve meshes.proto to adapters.proto and Externalize Nighthawk.

**Thank You!**

A big thank you to all of the contributors who made this release possible! We are grateful for your continued support of the Meshery project.

## On to v0.9

To learn more about the new features and a comprehensive list of bug fixes, see the [Meshery Documentation](https://docs.meshery.io/docs/project/releases).
## Looking Ahead and onto v0.9

Checkout [Meshery’s roadmap](https://github.com/meshery/meshery/blob/master/ROADMAP.md) to peek into what’s yet to come.
While v0.8.0 delivers significant advancements, we're already working on v0.9.0!

_If these topics excite you, come and say "Hi" in the community [Slack](https://slack.meshery.io/) and you are sure to be warmly welcomed. 😀_
<!-- Checkout [Meshery’s roadmap](https://github.com/meshery/meshery/blob/master/ROADMAP.md) to peek into what’s yet to come. -->

We are already hard at work on [v0.9.0 Roadmap](https://discuss.layer5.io/t/meshery-v0-9-roadmap/6296)! See [v0.9.0 Milestone](https://github.com/meshery/meshery/milestone/5) in `meshery/meshery` for more details and the [Meshery Architecture deck](https://docs.google.com/presentation/d/1SQMfyu5shjpGKlYONdVzOtd7UYTgLWBcgUvHMLCZ2tY/edit#) for additional visual designs and functional specifications.
Stay tuned for more updates.
We are already hard at work on [v0.9.0 Roadmap](https://discuss.layer5.io/t/meshery-v0-9-roadmap/6296)! See [v0.9.0 Milestone](https://github.com/meshery/meshery/milestone/5) in `meshery/meshery` for more details and the [Meshery Architecture deck](https://docs.google.com/presentation/d/1SQMfyu5shjpGKlYONdVzOtd7UYTgLWBcgUvHMLCZ2tY/edit#) for additional visual designs and functional specifications. Stay tuned for more updates.

**Get Involved!**

We welcome your contributions to Meshery! Please see our contributing guidelines for more information.
v0.8 includes a focus on the Meshery Registry which is significant in that the Meshery Registry is a database acting as the central repository for all capabilities known to Meshery. These capabilities encompass various entities, including models, components, relationships, and policies. Capabilies are registered in different ways depending upon your Meshery deployment.
* **Adapters & Performance Management:** Evolving `meshes.proto` to `adapters.proto` and externalizing Nighthawk for improved performance testing.
* **Basic Adaptive Load Controller:** Introducing adaptive testing capabilities for more dynamic performance analysis.
* **Custom Telemetry Provider:** Enabling user-defined dashboards and metrics for greater flexibility.

<details>
<summary>Roadmap Details</summary>
Expand Down Expand Up @@ -227,4 +144,8 @@ v0.8 includes a focus on the Meshery Registry which is significant in that the M
<li>User-defined Dashboards and Metrics (<a href="https://docs.google.com/presentation/d/1SQMfyu5shjpGKlYONdVzOtd7UYTgLWBcgUvHMLCZ2tY/edit#slide=id.gcb74201a11_0_119">spec</a>)</li>
</ul>

</details>
</details>

**Dive deeper into the details and explore the full list of changes in the [Meshery Documentation](https://docs.meshery.io/docs/project/releases). Stay tuned for updates on [v0.9.0](https://discuss.layer5.io/t/meshery-v0-9-roadmap/6296)!**

Try v0.8.0 in the [Meshery Playground](https://play.meshery.io) or [download](https://docs.meshery.io/installation) the latest release to get started. We look forward to your feedback and contributions!

0 comments on commit 321b097

Please sign in to comment.