Skip to content

rancher/partner-extensions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

164 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Partner Extensions

This repository is reserved for Rancher Extensions created by Rancher Partners. Extensions were introduced with Rancher 2.7.0.

What are the requirements for adding a project to this repository?

Before submitting an extension to this repository, you must become a SUSE "Ready" Verified partner. You can start this process with a Partner Application.

To certify your extension as SUSE "Ready", you need to attest that the software:

  • Has been tested on supported versions of Rancher e.g. 2.15
  • Is supported by your organization on the declared Rancher versions and configurations
  • Is actively maintained and proactively updated
    • critical vulnerabilities are patched in a timely way
    • release notes disclose serious bugs and vulnerabilities
  • Has a license and/or terms and conditions for use available in public documentation or via the chart itself
  • Does not compete commercially with Rancher Prime

Once your extension is certified as SUSE "Ready", there are a few more requirements for inclusion in this repository. Your extension must:

  • Packaged as an helm chart using the rancher extensions packaging script
  • The extension helm chart needs to be available from a public github repository
  • Extension must include appropriate metadata. For more information on metadata see here. This includes but not exclusively
    • An extension icon
    • A meaningful display name
    • A concise description
    • Compatibility annotations. For more information see here
  • Be compatible with at least the current version of Rancher

Meeting these requirements ensures that Rancher users can easily deploy your extension.

This repository is not intended for certain kinds of software. For example:

  • extensions that meet the needs of only a few people
  • software maintained by an open source community without any backing organization with which SUSE can have a partnership

How do I add my extension to this repository?

All extensions must to be reviewed by Rancher before they will be published to this repository.

  1. Submit your extension (see workflow)
  2. Rancher will review your extension (see Extension Review) and will either a. Approve b. Approve with advisories
    • There are recommendations that will not block inclusion in the repo c. Request Changes
    • There are required changed that must be completed before including in repo

    In order to conduct the review Rancher may need to reach out to you for a test environment or demonstration of your extension

  3. Upon approval Rancher will merge the PR which will begin the automation required to include your repo.
  • The extension will then be available to applicable Rancher's when their chart repo refresh

Workflow

1. Fork the Partner Extensions repository, clone your fork, checkout the main branch and pull the latest changes.

Then create a new branch off of main

2. Update the manifest.json with your Extension metadata.

{
  "extensions": {
    "kubewarden": {
      "repo": "kubewarden/ui",
      "branch": "gh-pages",
      "versions": [
        "1.0.0",
        "1.1.0"
      ]
    }
  }
}

For more information see Appendix Manifest File section

3. Commit your changes

git add manifest.json
git commit -m "Submitting kubewarden/ui version 1.1.0"

4. Push your commit

git push origin <your_branch>

5. Open a pull request on the main branch

Once your pull request is approved and merged, an automated workflow will sync this repository with the build assets from the supplied repository within the manifest.json file. When fully synced, a new release will be created and added to the releases section.

SUSE Extension Review

Once the pull request is open SUSE will review the extension and consider the following

  • Understand scope and functionality
  • Impact on security, scaling and performance
  • Code Review
  • UX Review
  • Extension documentation and test approach

After review SUSE may request changes to your extension based on the above.

Appendix

Manifest File

Required properties for manifest.json

Variable Description
[extension key] This name is representative of the Extension package name. For example, the clock package within the ui-plugin-examples repository, clock would be the extension key.
repo Defines the upstream Github repository to pull the build assets from.
branch Defines which branch to pull from the upstream repo
versions An array of version strings which correspond to the Extension package version(s) to be synced with this repository. For example, the clock extension package has two versions, 0.1.0 and 0.2.0 would be added.

Examples

{
  "extensions": {
    "elemental": {
      "repo": "rancher/elemental-ui",
      "branch": "main",
      "versions": [
        "1.2.0",
        "1.1.0",
        "1.0.0"
      ]
    },
    "kubewarden": {
      "repo": "kubewarden/ui",
      "branch": "gh-pages",
      "versions": [
        "1.0.0",
        "1.0.1",
        "1.0.2",
        "1.0.3",
        "1.0.4",
        "1.0.5",
        "1.0.6",
        "1.1.0"
      ]
    }
  }
}

License Copyright (c) 2014-2026 SUSE

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Partner Rancher Extensions

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors