Skip to content

Commit

Permalink
Add Extended Maintenance Release info to docs (#443)
Browse files Browse the repository at this point in the history
* Update version_chart.md

* Update version_chart.md

* Add Prophecy versions support page

* Fix broken links

* Update prophecy-libs.md

* removing unused arg

* Update versions_support.md

* Update version_chart.md

removed parentheses

* Update docs/release_notes/version_chart/versions_support.md

wordsmithing

Co-authored-by: kathweinschenkprophecy <[email protected]>

* Update docs/release_notes/version_chart/versions_support.md

Co-authored-by: kathweinschenkprophecy <[email protected]>

* Update versions_support.md

---------

Co-authored-by: RJ <[email protected]>
Co-authored-by: RJ <[email protected]>
Co-authored-by: kathweinschenkprophecy <[email protected]>
  • Loading branch information
4 people authored Nov 22, 2024
1 parent ae0d4cb commit 68b07c4
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ You can check your **ProphecyLibsPython** version under **Dependencies**.

If you have uncommitted changes in your Pipelines, you may be prompted to either **Commit & Save** or **Save Without Committing**. The update will affect all Pipelines in your Project.

For an up-to-date list of Prophecy versions and libraries, see [Version Chart](/docs/release_notes/version_chart.md).
For an up-to-date list of Prophecy versions and libraries, see [Version Chart](/docs/release_notes/version_chart/version_chart.md).

## Turn on the Pipeline Monitoring flag

Expand Down
2 changes: 1 addition & 1 deletion docs/concepts/fabrics/prophecy-libs.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ You can see which Prophecy Libs version is running on your Spark cluster by chec

<img src={require('./img/libs-version-cluster.png').default} alt="Prophecy libs version in the Fabric cluster" width="58%" />

For a list of the latest versions, see [Version Chart](/docs/release_notes/version_chart.md).
For a list of the latest versions, see [Version Chart](/docs/release_notes/version_chart/version_chart.md).

## Functionality

Expand Down
6 changes: 6 additions & 0 deletions docs/release_notes/version_chart/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"label": "Version Chart",
"position": 3,
"collapsible": true,
"collapsed": true
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,14 @@ Check to make sure the Spark version and Scala version of your Prophecy Scala Li
of your cluster!
:::

:::info
Query this table using the following API and your ([personal access token](..%2Fmetadata%2FprophecyAPI.md)):
You can query this table using the following API and your [personal access token](/docs/metadata/prophecyAPI.md):

```bash
curl --header 'X-Auth-Token: $PROPHECY_PAT' --location https://app.prophecy.io/api/editor/plibVersions
```

:::note
Prophecy versions that are labeled with `EM` are Extended Maintenance releases. For more information, see [Prophecy versions support](/docs/release_notes/version_chart/versions_support.md).
:::

| Prophecy version | [Prophecy Scala libs](https://mvnrepository.com/artifact/io.prophecy/prophecy-libs) | [Prophecy Python libs](https://pypi.org/project/prophecy-libs/) | Release Date | End-of-support Date |
Expand Down
56 changes: 56 additions & 0 deletions docs/release_notes/version_chart/versions_support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
title: Prophecy versions support
id: versions_support
description: Prophecy versions support
sidebar_position: 1
tags: [compatibility, matrix, version, chart, library, plib, plibs]
---

This page describes the Prophecy versioning system, version types, and version lifecycles.

## Release version system

The following table shows details of the different Prophecy version types.

| Version type | Example | Frequency (approx.) | End-of-support |
| --------------------------------- | ------------- | ------------------- | ---------------- |
| Extended Maintenance (EM) release | `v3.4.1.0 EM` | Every four months | After one year |
| Major | `v3.4.0.0` | Every four months | After six months |
| Minor | `v3.3.11.0` | Every three weeks | After six months |
| Patch | `v3.3.11.7` | When needed | After six months |

## Extended Maintenance release

Extended Maintenance (EM) releases provide you with a long-term support Prophecy version, along with the following benefits:

- Upgraded third party libraries for robust security posture
- Full performance and scale testing to check resource guidance
- Direct upgrade path from a previous EM release to the next one
- One year of technical support and hotfixes for critical issues

You can expect a new Extended Maintenance release two to six weeks after each Major release.

### Required resources

Extended Maintenance releases require additional resources, such as CPU and memory. Starting with `v3.4.1.0 EM`, SQL Sandbox is enabled, so every SQL Pipeline session will spin up an additional pod with the following configuration:

- CPI: 500m
- Memory: 512Mi

After upgrading to 3.4.1, you must enable SQL Sandbox Config in the UI by navigating to the **Sandbox Config** tab in the Config sub tab of the Admin Settings.

`"sqlSandboxPoolSize"` must be set to a minimum of `2`. This parameter determines the number of pods that are kept in a ready state. You will need additional SQL Sandbox resources for each simultaneous user session.

## Prophecy support lifecycles

The following table describes the support stages for Prophecy versions. Prophecy supports GA versions for six months, unless the version is an Extended Maintenance (EM) release, which Prophecy supports for one year. For information on supported Prophecy versions, see [Version Chart](/docs/release_notes/version_chart/version_chart.md).

Workloads on unsupported Prophecy versions may continue to run, but Prophecy doesn't provide support or fixes.

### Prophecy version lifecycle

| Phase | Description |
| -------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| GA, full support for Extended Maintenance releases | Critical stability and security fixes are backported only for EM releases. |
| End of support | If a version is unsupported, then workloads running on these versions receive no Prophecy support. |
| End of Life | Prophecy reserves the right to completely remove a release version at any time after support ends. |
3 changes: 1 addition & 2 deletions scripts/find_versions_from_git_tags.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ def get_versions_for_tag(repo, tag_name):


def update_version_chart_file(docs_repo_path):
version_chart_file = os.path.join(docs_repo_path, "docs/release_notes/version_chart.md")
version_chart_file = os.path.join(docs_repo_path, "docs/release_notes/version_chart/version_chart.md")
header_lines = []
delimiter = ""
delimiter_regex = "-------------"
Expand Down Expand Up @@ -102,7 +102,6 @@ def process_args(prophecy_repo_path, docs_repo_path, tag_name=None):
parser.add_argument("--prophecy-repo-path", default='./prophecy/', help="Path to the prophecy Git repository")
parser.add_argument("--docs-repo-path", default='./prophecy-docs/', help="Path to the docs Git repository")
parser.add_argument("--tag", help="Process a specific tag (if omitted we process all that match semver structure)")
parser.add_argument("--output-path", help="absolute path for output file", default="./version_chart.md")

args = parser.parse_args()

Expand Down

0 comments on commit 68b07c4

Please sign in to comment.