mirror of
https://github.com/harvester/harvester-ui-extension.git
synced 2026-05-15 15:31:44 +00:00
Compare commits
24 Commits
main
...
harvester-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8a4e687c61 | ||
|
|
453bd51c0f | ||
|
|
1dbb6601db | ||
|
|
b6f5d0f93c | ||
|
|
be06d1735f | ||
|
|
48ff415710 | ||
|
|
e892df40b1 | ||
|
|
fcd1138450 | ||
|
|
1f55c6b27d | ||
|
|
8e96580390 | ||
|
|
ee21c69e51 | ||
|
|
ee63d3d190 | ||
|
|
ff7e696a4d | ||
|
|
db61294f01 | ||
|
|
f64dc4f4ca | ||
|
|
776f18789e | ||
|
|
eb47489b0c | ||
|
|
a01d336bfa | ||
|
|
853bcb2632 | ||
|
|
841063599f | ||
|
|
fc29a989f8 | ||
|
|
1320d91a41 | ||
|
|
79eeae37fd | ||
|
|
1cb57b8998 |
@ -1,17 +0,0 @@
|
|||||||
assets/fonts
|
|
||||||
coverage
|
|
||||||
.nyc_output
|
|
||||||
node_modules/
|
|
||||||
.npm
|
|
||||||
.eslintcache
|
|
||||||
.env
|
|
||||||
.cache
|
|
||||||
.next
|
|
||||||
.nuxt
|
|
||||||
dist
|
|
||||||
dist-pkg
|
|
||||||
.DS_Store
|
|
||||||
pkg/harvester/index.ts
|
|
||||||
pkg/harvester/store/*
|
|
||||||
scripts/pkgfile.js
|
|
||||||
tmp
|
|
||||||
@ -1,225 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
env: {
|
|
||||||
browser: true,
|
|
||||||
node: true
|
|
||||||
},
|
|
||||||
globals: {
|
|
||||||
NodeJS: true,
|
|
||||||
Timer: true
|
|
||||||
},
|
|
||||||
plugins: [
|
|
||||||
'jest',
|
|
||||||
'@typescript-eslint'
|
|
||||||
],
|
|
||||||
extends: [
|
|
||||||
'standard',
|
|
||||||
'eslint:recommended',
|
|
||||||
'plugin:@typescript-eslint/recommended',
|
|
||||||
'plugin:vue/vue3-recommended',
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
'semi-spacing': 'off',
|
|
||||||
'space-in-parens': 'off',
|
|
||||||
'array-bracket-spacing': 'warn',
|
|
||||||
'arrow-parens': 'warn',
|
|
||||||
'arrow-spacing': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
before: true,
|
|
||||||
after: true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'block-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'brace-style': [
|
|
||||||
'warn',
|
|
||||||
'1tbs'
|
|
||||||
],
|
|
||||||
'comma-dangle': [
|
|
||||||
'warn',
|
|
||||||
'only-multiline'
|
|
||||||
],
|
|
||||||
'comma-spacing': 'warn',
|
|
||||||
indent: [
|
|
||||||
'warn',
|
|
||||||
2
|
|
||||||
],
|
|
||||||
'keyword-spacing': 'warn',
|
|
||||||
'newline-per-chained-call': [
|
|
||||||
'warn',
|
|
||||||
{ ignoreChainWithDepth: 4 }
|
|
||||||
],
|
|
||||||
'no-trailing-spaces': 'warn',
|
|
||||||
'func-call-spacing': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'wrap-iife': 'off',
|
|
||||||
'lines-between-class-members': [
|
|
||||||
'warn',
|
|
||||||
'always',
|
|
||||||
{ exceptAfterSingleLine: true }
|
|
||||||
],
|
|
||||||
'multiline-ternary': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'no-whitespace-before-property': 'warn',
|
|
||||||
'object-curly-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'object-property-newline': 'warn',
|
|
||||||
'object-shorthand': 'warn',
|
|
||||||
'padded-blocks': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'quote-props': 'warn',
|
|
||||||
'rest-spread-spacing': 'warn',
|
|
||||||
semi: [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'space-before-function-paren': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'space-infix-ops': 'warn',
|
|
||||||
'spaced-comment': 'warn',
|
|
||||||
'switch-colon-spacing': 'warn',
|
|
||||||
'template-curly-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'yield-star-spacing': [
|
|
||||||
'warn',
|
|
||||||
'both'
|
|
||||||
],
|
|
||||||
'key-spacing': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
align: {
|
|
||||||
beforeColon: false,
|
|
||||||
afterColon: true,
|
|
||||||
on: 'value',
|
|
||||||
mode: 'strict'
|
|
||||||
},
|
|
||||||
multiLine: {
|
|
||||||
beforeColon: false,
|
|
||||||
afterColon: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'object-curly-newline': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
ObjectExpression: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 3
|
|
||||||
},
|
|
||||||
ObjectPattern: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 4
|
|
||||||
},
|
|
||||||
ImportDeclaration: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 5
|
|
||||||
},
|
|
||||||
ExportDeclaration: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'padding-line-between-statements': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: '*',
|
|
||||||
next: 'return'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: 'function',
|
|
||||||
next: 'function'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
],
|
|
||||||
next: '*'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'any',
|
|
||||||
prev: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
],
|
|
||||||
next: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
quotes: [
|
|
||||||
'warn',
|
|
||||||
'single',
|
|
||||||
{
|
|
||||||
avoidEscape: true,
|
|
||||||
allowTemplateLiterals: true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'space-unary-ops': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
words: true,
|
|
||||||
nonwords: false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'vue/one-component-per-file': 'off',
|
|
||||||
'vue/no-deprecated-slot-attribute': 'off',
|
|
||||||
'vue/require-explicit-emits': 'error',
|
|
||||||
'vue/v-on-event-hyphenation': 'off'
|
|
||||||
},
|
|
||||||
overrides: [
|
|
||||||
{
|
|
||||||
files: [
|
|
||||||
'**/*.{js,ts,vue}'
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
'@typescript-eslint/no-empty-function': 'off',
|
|
||||||
'@typescript-eslint/ban-types': 'off'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
files: [
|
|
||||||
'**/*.test.{js,ts}',
|
|
||||||
'**/__tests__/**/*.{js,ts}',
|
|
||||||
'**/__mocks__/**/*.{js,ts}'
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
'@typescript-eslint/no-empty-function': 'off',
|
|
||||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
|
||||||
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
||||||
'jest/prefer-expect-assertions': 'off'
|
|
||||||
},
|
|
||||||
extends: [
|
|
||||||
'plugin:jest/all'
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
files: [
|
|
||||||
'**/*.{js,vue}'
|
|
||||||
],
|
|
||||||
rules: { '@typescript-eslint/explicit-module-boundary-types': 'off' }
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
244
.eslintrc.js
244
.eslintrc.js
@ -1,244 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
root: true,
|
|
||||||
env: {
|
|
||||||
browser: true,
|
|
||||||
node: true
|
|
||||||
},
|
|
||||||
globals: {
|
|
||||||
NodeJS: true,
|
|
||||||
Timer: true
|
|
||||||
},
|
|
||||||
extends: [
|
|
||||||
'.eslintrc.default.js'
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
'dot-notation': 'off',
|
|
||||||
'generator-star-spacing': 'off',
|
|
||||||
'guard-for-in': 'off',
|
|
||||||
'linebreak-style': 'off',
|
|
||||||
'new-cap': 'off',
|
|
||||||
'no-empty': 'off',
|
|
||||||
'no-extra-boolean-cast': 'off',
|
|
||||||
'no-new': 'off',
|
|
||||||
'no-plusplus': 'off',
|
|
||||||
'no-useless-escape': 'off',
|
|
||||||
'nuxt/no-cjs-in-config': 'off',
|
|
||||||
'semi-spacing': 'off',
|
|
||||||
'space-in-parens': 'off',
|
|
||||||
strict: 'off',
|
|
||||||
'unicorn/no-new-buffer': 'off',
|
|
||||||
'vue/html-self-closing': 'off',
|
|
||||||
'vue/multi-word-component-names': 'off',
|
|
||||||
'vue/no-reserved-component-names': 'off',
|
|
||||||
'vue/no-deprecated-v-on-native-modifier': 'off',
|
|
||||||
'vue/no-useless-template-attributes': 'off',
|
|
||||||
'vue/no-unused-components': 'warn',
|
|
||||||
'vue/no-v-html': 'error',
|
|
||||||
'wrap-iife': 'off',
|
|
||||||
'array-bracket-spacing': 'warn',
|
|
||||||
'arrow-parens': 'warn',
|
|
||||||
'arrow-spacing': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
before: true,
|
|
||||||
after: true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'block-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'brace-style': [
|
|
||||||
'warn',
|
|
||||||
'1tbs'
|
|
||||||
],
|
|
||||||
'comma-dangle': [
|
|
||||||
'warn',
|
|
||||||
'only-multiline'
|
|
||||||
],
|
|
||||||
'comma-spacing': 'warn',
|
|
||||||
curly: 'warn',
|
|
||||||
eqeqeq: 'warn',
|
|
||||||
'func-call-spacing': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'implicit-arrow-linebreak': 'warn',
|
|
||||||
indent: [
|
|
||||||
'warn',
|
|
||||||
2
|
|
||||||
],
|
|
||||||
'keyword-spacing': 'warn',
|
|
||||||
'lines-between-class-members': [
|
|
||||||
'warn',
|
|
||||||
'always',
|
|
||||||
{ exceptAfterSingleLine: true }
|
|
||||||
],
|
|
||||||
'multiline-ternary': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'newline-per-chained-call': [
|
|
||||||
'warn',
|
|
||||||
{ ignoreChainWithDepth: 4 }
|
|
||||||
],
|
|
||||||
'no-caller': 'warn',
|
|
||||||
'no-cond-assign': [
|
|
||||||
'warn',
|
|
||||||
'except-parens'
|
|
||||||
],
|
|
||||||
'no-console': 'warn',
|
|
||||||
'no-debugger': 'warn',
|
|
||||||
'no-eq-null': 'warn',
|
|
||||||
'no-eval': 'warn',
|
|
||||||
'no-trailing-spaces': 'warn',
|
|
||||||
'no-undef': 'warn',
|
|
||||||
'no-unused-vars': 'warn',
|
|
||||||
'no-whitespace-before-property': 'warn',
|
|
||||||
'object-curly-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'object-property-newline': 'warn',
|
|
||||||
'object-shorthand': 'warn',
|
|
||||||
'padded-blocks': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'prefer-arrow-callback': 'warn',
|
|
||||||
'prefer-template': 'warn',
|
|
||||||
'quote-props': 'warn',
|
|
||||||
'rest-spread-spacing': 'warn',
|
|
||||||
semi: [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'space-before-function-paren': [
|
|
||||||
'warn',
|
|
||||||
'never'
|
|
||||||
],
|
|
||||||
'space-infix-ops': 'warn',
|
|
||||||
'spaced-comment': 'warn',
|
|
||||||
'switch-colon-spacing': 'warn',
|
|
||||||
'template-curly-spacing': [
|
|
||||||
'warn',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'yield-star-spacing': [
|
|
||||||
'warn',
|
|
||||||
'both'
|
|
||||||
],
|
|
||||||
'key-spacing': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
align: {
|
|
||||||
beforeColon: false,
|
|
||||||
afterColon: true,
|
|
||||||
on: 'value',
|
|
||||||
mode: 'minimum'
|
|
||||||
},
|
|
||||||
multiLine: {
|
|
||||||
beforeColon: false,
|
|
||||||
afterColon: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'object-curly-newline': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
ObjectExpression: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 3
|
|
||||||
},
|
|
||||||
ObjectPattern: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 4
|
|
||||||
},
|
|
||||||
ImportDeclaration: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 5
|
|
||||||
},
|
|
||||||
ExportDeclaration: {
|
|
||||||
multiline: true,
|
|
||||||
minProperties: 3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'padding-line-between-statements': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: '*',
|
|
||||||
next: 'return'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: 'function',
|
|
||||||
next: 'function'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'always',
|
|
||||||
prev: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
],
|
|
||||||
next: '*'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
blankLine: 'any',
|
|
||||||
prev: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
],
|
|
||||||
next: [
|
|
||||||
'const',
|
|
||||||
'let',
|
|
||||||
'var'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
quotes: [
|
|
||||||
'warn',
|
|
||||||
'single',
|
|
||||||
{
|
|
||||||
avoidEscape: true,
|
|
||||||
allowTemplateLiterals: true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'space-unary-ops': [
|
|
||||||
'warn',
|
|
||||||
{
|
|
||||||
words: true,
|
|
||||||
nonwords: false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'vue/order-in-components': 'off',
|
|
||||||
'vue/no-lone-template': 'off',
|
|
||||||
'vue/v-slot-style': 'off',
|
|
||||||
'vue/component-tags-order': 'off',
|
|
||||||
'vue/no-mutating-props': 'off',
|
|
||||||
'@typescript-eslint/no-unused-vars': 'off',
|
|
||||||
'@typescript-eslint/no-var-requires': 'off',
|
|
||||||
'@typescript-eslint/no-this-alias': 'off',
|
|
||||||
'array-callback-return': 'off',
|
|
||||||
'vue/one-component-per-file': 'off',
|
|
||||||
'vue/no-deprecated-slot-attribute': 'off',
|
|
||||||
'vue/require-explicit-emits': 'off',
|
|
||||||
'vue/v-on-event-hyphenation': 'off'
|
|
||||||
},
|
|
||||||
overrides: [
|
|
||||||
{
|
|
||||||
files: [
|
|
||||||
'*.js'
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
'prefer-regex-literals': 'off',
|
|
||||||
'vue/component-definition-name-casing': 'off',
|
|
||||||
'no-unreachable-loop': 'off',
|
|
||||||
'computed-property-spacing': 'off'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
12
.github/actions/lint/action.yaml
vendored
12
.github/actions/lint/action.yaml
vendored
@ -1,12 +0,0 @@
|
|||||||
name: Run Lint
|
|
||||||
description: Run Lint
|
|
||||||
|
|
||||||
runs:
|
|
||||||
using: 'composite'
|
|
||||||
steps:
|
|
||||||
- name: Setup env
|
|
||||||
uses: ./.github/actions/setup
|
|
||||||
|
|
||||||
- name: Run linters
|
|
||||||
shell: bash
|
|
||||||
run: yarn lint
|
|
||||||
15
.github/actions/setup/action.yaml
vendored
15
.github/actions/setup/action.yaml
vendored
@ -1,15 +0,0 @@
|
|||||||
name: Setup UI Env
|
|
||||||
description: Setup node and install dependencies
|
|
||||||
|
|
||||||
runs:
|
|
||||||
using: 'composite'
|
|
||||||
steps:
|
|
||||||
- name: Setup Nodejs with yarn caching
|
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
cache: 'yarn'
|
|
||||||
|
|
||||||
- name: Install packages
|
|
||||||
shell: bash
|
|
||||||
run: yarn install
|
|
||||||
14
.github/mergify.yml
vendored
14
.github/mergify.yml
vendored
@ -1,14 +0,0 @@
|
|||||||
pull_request_rules:
|
|
||||||
- name: Ask to resolve conflict
|
|
||||||
conditions:
|
|
||||||
- conflict
|
|
||||||
actions:
|
|
||||||
comment:
|
|
||||||
message: This pull request is now in conflict. Could you fix it @{{author}}? 🙏
|
|
||||||
|
|
||||||
commands_restrictions:
|
|
||||||
backport:
|
|
||||||
conditions:
|
|
||||||
- or:
|
|
||||||
- sender-permission>=write
|
|
||||||
- sender=github-actions[bot]
|
|
||||||
14
.github/pull_request_template.md
vendored
14
.github/pull_request_template.md
vendored
@ -1,14 +0,0 @@
|
|||||||
<!-- This template is for Devs to give QA details before moving the issue To-Test -->
|
|
||||||
### Summary
|
|
||||||
|
|
||||||
### PR Checklists
|
|
||||||
- Are backend engineers aware of UI changes ?
|
|
||||||
- [ ] Yes, the backend owner is:
|
|
||||||
|
|
||||||
### Related Issue #
|
|
||||||
<!-- Define findings related to the feature or bug issue. -->
|
|
||||||
|
|
||||||
### Test screenshot or video
|
|
||||||
<!-- Attach screenshot or video of the changes and eventual comparison if you find it necessary -->
|
|
||||||
|
|
||||||
|
|
||||||
40
.github/release.yml
vendored
40
.github/release.yml
vendored
@ -1,40 +0,0 @@
|
|||||||
# .github/release.yml
|
|
||||||
changelog:
|
|
||||||
categories:
|
|
||||||
- title: Features
|
|
||||||
labels:
|
|
||||||
- feat
|
|
||||||
- title: Bug Fixes
|
|
||||||
labels:
|
|
||||||
- fix
|
|
||||||
- title: Dependencies
|
|
||||||
labels:
|
|
||||||
- deps
|
|
||||||
- title: Performance
|
|
||||||
labels:
|
|
||||||
- perf
|
|
||||||
- title: Documentation
|
|
||||||
labels:
|
|
||||||
- docs
|
|
||||||
- title: Style
|
|
||||||
labels:
|
|
||||||
- style
|
|
||||||
- title: Build & Continuous Integration
|
|
||||||
labels:
|
|
||||||
- build
|
|
||||||
- ci
|
|
||||||
- title: Security
|
|
||||||
labels:
|
|
||||||
- security
|
|
||||||
- title: Tests
|
|
||||||
labels:
|
|
||||||
- test
|
|
||||||
- title: Refactoring
|
|
||||||
labels:
|
|
||||||
- refactor
|
|
||||||
- title: Chores
|
|
||||||
labels:
|
|
||||||
- chore
|
|
||||||
- title: Others
|
|
||||||
labels:
|
|
||||||
- other
|
|
||||||
58
.github/renovate.json
vendored
58
.github/renovate.json
vendored
@ -1,58 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
||||||
"extends": [
|
|
||||||
"config:recommended",
|
|
||||||
":semanticCommitTypeAll(deps)",
|
|
||||||
":semanticCommitScopeDisabled"
|
|
||||||
],
|
|
||||||
"baseBranches": [
|
|
||||||
"main",
|
|
||||||
"release-harvester-v1.7",
|
|
||||||
"release-harvester-v1.8"
|
|
||||||
],
|
|
||||||
"automergeMajor": false,
|
|
||||||
"semanticCommits": "enabled",
|
|
||||||
"semanticCommitType": "deps",
|
|
||||||
"prHourlyLimit": 12,
|
|
||||||
"timezone": "Asia/Taipei",
|
|
||||||
"schedule": ["after 10am on sunday"],
|
|
||||||
"postUpdateOptions": ["yarnDedupeFewer"],
|
|
||||||
"packageRules": [
|
|
||||||
{
|
|
||||||
"matchUpdateTypes": ["major"],
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchPackagePatterns": ["vue", "vue-router", "vuex"],
|
|
||||||
"matchUpdateTypes": ["major"],
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchPackageNames": ["@rancher/shell"],
|
|
||||||
"enabled": false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchUpdateTypes": ["minor"],
|
|
||||||
"groupName": "minor dependencies",
|
|
||||||
"minimumReleaseAge": "7 days",
|
|
||||||
"labels": ["minor-update"],
|
|
||||||
"reviewers": ["a110605", "houhoucoop"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchUpdateTypes": ["patch"],
|
|
||||||
"automerge": false,
|
|
||||||
"minimumReleaseAge": "7 days",
|
|
||||||
"groupName": "patch dependencies",
|
|
||||||
"labels": ["patch-update"],
|
|
||||||
"reviewers": ["a110605", "houhoucoop"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchUpdateTypes": ["digest", "pinDigest"],
|
|
||||||
"automerge": false,
|
|
||||||
"groupName": "digest dependencies",
|
|
||||||
"labels": ["digest-update"],
|
|
||||||
"schedule": ["on the first day of the month"],
|
|
||||||
"reviewers": ["a110605", "houhoucoop"]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
39
.github/workflows/add-pr-label-check.yaml
vendored
39
.github/workflows/add-pr-label-check.yaml
vendored
@ -1,39 +0,0 @@
|
|||||||
name: "PR Management Add PR Label Collect Data"
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types: [opened, reopened, edited]
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
collect:
|
|
||||||
if: github.event.pull_request.draft == false
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
actions: write
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
with:
|
|
||||||
ref: ${{ github.base_ref }}
|
|
||||||
|
|
||||||
- name: Setup Nodejs and yarn install
|
|
||||||
uses: ./.github/actions/setup
|
|
||||||
|
|
||||||
- name: Extract PR label
|
|
||||||
run: |
|
|
||||||
PR_LABEL=$(node ./scripts/extract-release-label.mjs "${{ github.event.pull_request.title }}")
|
|
||||||
echo "PR_LABEL=$PR_LABEL"
|
|
||||||
{
|
|
||||||
echo "PR_NUMBER=${{ github.event.pull_request.number }}"
|
|
||||||
echo "PR_LABEL=$PR_LABEL"
|
|
||||||
} > pr-add-label-data.env
|
|
||||||
|
|
||||||
- name: Upload PR data artifact
|
|
||||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
||||||
with:
|
|
||||||
name: pr-add-label-data
|
|
||||||
path: pr-add-label-data.env
|
|
||||||
33
.github/workflows/add-pr-label.yaml
vendored
33
.github/workflows/add-pr-label.yaml
vendored
@ -1,33 +0,0 @@
|
|||||||
name: "PR Management Add PR Label"
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows:
|
|
||||||
- "PR Management Add PR Label Collect Data"
|
|
||||||
types: [completed]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
auto-assign-pr-label:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
permissions:
|
|
||||||
actions: read
|
|
||||||
pull-requests: write
|
|
||||||
steps:
|
|
||||||
- name: Download PR data artifact
|
|
||||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
|
|
||||||
with:
|
|
||||||
name: pr-add-label-data
|
|
||||||
run-id: ${{ github.event.workflow_run.id }}
|
|
||||||
github-token: ${{ github.token }}
|
|
||||||
|
|
||||||
- name: Load PR data
|
|
||||||
run: |
|
|
||||||
cat pr-add-label-data.env >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Set PR label
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
echo "PR_LABEL = $PR_LABEL"
|
|
||||||
gh pr edit "$PR_NUMBER" --repo "${{ github.repository }}" --add-label "$PR_LABEL"
|
|
||||||
28
.github/workflows/auto-assign-check.yaml
vendored
28
.github/workflows/auto-assign-check.yaml
vendored
@ -1,28 +0,0 @@
|
|||||||
name: "PR Management Auto Assign Collect Data"
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types: [opened, ready_for_review]
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
collect:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
actions: write
|
|
||||||
steps:
|
|
||||||
- name: Save PR data to artifact
|
|
||||||
run: |
|
|
||||||
{
|
|
||||||
echo "PR_NUMBER=${{ github.event.pull_request.number }}"
|
|
||||||
echo "PR_AUTHOR=${{ github.event.pull_request.user.login }}"
|
|
||||||
} > pr-auto-assign-data.env
|
|
||||||
|
|
||||||
- name: Upload PR data artifact
|
|
||||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
||||||
with:
|
|
||||||
name: pr-auto-assign-data
|
|
||||||
path: pr-auto-assign-data.env
|
|
||||||
35
.github/workflows/auto-assign.yaml
vendored
35
.github/workflows/auto-assign.yaml
vendored
@ -1,35 +0,0 @@
|
|||||||
name: "PR Management Auto Assign"
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows:
|
|
||||||
- "PR Management Auto Assign Collect Data"
|
|
||||||
types: [completed]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
auto-assign:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
env:
|
|
||||||
REVIEWERS: "a110605,houhoucoop"
|
|
||||||
permissions:
|
|
||||||
actions: read
|
|
||||||
pull-requests: write
|
|
||||||
steps:
|
|
||||||
- name: Download PR data artifact
|
|
||||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
|
|
||||||
with:
|
|
||||||
name: pr-auto-assign-data
|
|
||||||
run-id: ${{ github.event.workflow_run.id }}
|
|
||||||
github-token: ${{ github.token }}
|
|
||||||
|
|
||||||
- name: Load PR data
|
|
||||||
run: |
|
|
||||||
cat pr-auto-assign-data.env >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Auto assign PR author
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
echo "Assigning PR author: $PR_AUTHOR"
|
|
||||||
gh pr edit "$PR_NUMBER" --repo "${{ github.repository }}" --add-assignee "$PR_AUTHOR" --add-reviewer "$REVIEWERS"
|
|
||||||
30
.github/workflows/backport-label-check.yaml
vendored
30
.github/workflows/backport-label-check.yaml
vendored
@ -1,30 +0,0 @@
|
|||||||
name: "PR Management Add Labels Collect Data"
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types: [opened, reopened]
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
collect:
|
|
||||||
if: github.event.pull_request.draft == false
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
actions: write
|
|
||||||
steps:
|
|
||||||
- name: Save PR data to artifact
|
|
||||||
run: |
|
|
||||||
{
|
|
||||||
echo "PR_NUMBER=${{ github.event.pull_request.number }}"
|
|
||||||
echo "PR_BASE_REF=${{ github.event.pull_request.base.ref }}"
|
|
||||||
echo "PR_USER_LOGIN=${{ github.event.pull_request.user.login }}"
|
|
||||||
} > pr-backport-label-data.env
|
|
||||||
|
|
||||||
- name: Upload PR data artifact
|
|
||||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
||||||
with:
|
|
||||||
name: pr-backport-label-data
|
|
||||||
path: pr-backport-label-data.env
|
|
||||||
83
.github/workflows/backport-label.yaml
vendored
83
.github/workflows/backport-label.yaml
vendored
@ -1,83 +0,0 @@
|
|||||||
name: "PR Management Add Backport Labels"
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows:
|
|
||||||
- "PR Management Add Labels Collect Data"
|
|
||||||
types: [completed]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
add-require-backport-label:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
permissions:
|
|
||||||
actions: read
|
|
||||||
pull-requests: write
|
|
||||||
steps:
|
|
||||||
- name: Download PR data artifact
|
|
||||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
|
|
||||||
with:
|
|
||||||
name: pr-backport-label-data
|
|
||||||
run-id: ${{ github.event.workflow_run.id }}
|
|
||||||
github-token: ${{ github.token }}
|
|
||||||
|
|
||||||
- name: Load PR data
|
|
||||||
run: |
|
|
||||||
cat pr-backport-label-data.env >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Add require-backport label (main branch PRs)
|
|
||||||
if: env.PR_BASE_REF == 'main'
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
repo="${{ github.repository }}"
|
|
||||||
pr_number="$PR_NUMBER"
|
|
||||||
|
|
||||||
release_branches=$(gh api "repos/${repo}/branches" --paginate --jq '.[].name' | grep -E '^release-harvester-v[0-9]+\.[0-9]+$' || true)
|
|
||||||
|
|
||||||
if [[ -z "$release_branches" ]]; then
|
|
||||||
echo "No release branches found, skipping."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
latest_branch=$(echo "$release_branches" | sort -Vr | head -n1)
|
|
||||||
version="${latest_branch#release-harvester-v}"
|
|
||||||
release_tag="v${version}.0"
|
|
||||||
|
|
||||||
tags=$(gh api "repos/${repo}/releases" --paginate --jq '.[].tag_name')
|
|
||||||
if echo "$tags" | grep -Fxq "$release_tag"; then
|
|
||||||
echo "Release $release_tag already published, skipping."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
label="require backport/v${version}"
|
|
||||||
pr_labels=$(gh pr view "$pr_number" --repo "$repo" --json labels --jq '.labels[].name' || echo "")
|
|
||||||
|
|
||||||
if echo "$pr_labels" | grep -Fxq "$label"; then
|
|
||||||
echo "Label '$label' already present, skipping."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Adding label: $label"
|
|
||||||
gh pr edit "$pr_number" --repo "$repo" --add-label "$label"
|
|
||||||
|
|
||||||
- name: Add backport label (release branch PRs opened by Mergify)
|
|
||||||
if: startsWith(env.PR_BASE_REF, 'release-harvester-v')
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
IS_MERGIFY=$(echo "$PR_USER_LOGIN" | grep -iq 'mergify' && echo true || echo false)
|
|
||||||
|
|
||||||
if [[ "$IS_MERGIFY" != "true" ]]; then
|
|
||||||
echo "PR author is not Mergify, skipping."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
version="${PR_BASE_REF#release-harvester-v}"
|
|
||||||
label="backport/v${version}"
|
|
||||||
echo "Adding label: $label"
|
|
||||||
gh pr edit "$PR_NUMBER" --repo "${{ github.repository }}" --add-label "$label"
|
|
||||||
28
.github/workflows/backport-request-check.yaml
vendored
28
.github/workflows/backport-request-check.yaml
vendored
@ -1,28 +0,0 @@
|
|||||||
name: "PR Management Request Backport via Mergify Collect Data"
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types: [closed]
|
|
||||||
branches: [main]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
collect:
|
|
||||||
if: github.event.pull_request.merged == true
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
actions: write
|
|
||||||
steps:
|
|
||||||
- name: Save PR data to artifact
|
|
||||||
run: |
|
|
||||||
labels_json='${{ toJson(github.event.pull_request.labels.*.name) }}'
|
|
||||||
{
|
|
||||||
echo "PR_NUMBER=${{ github.event.pull_request.number }}"
|
|
||||||
echo "PR_LABELS=$(echo "$labels_json" | jq -r '[.[]] | join(",")')"
|
|
||||||
} > pr-backport-request-data.env
|
|
||||||
|
|
||||||
- name: Upload PR data artifact
|
|
||||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
||||||
with:
|
|
||||||
name: pr-backport-request-data
|
|
||||||
path: pr-backport-request-data.env
|
|
||||||
55
.github/workflows/backport-request.yaml
vendored
55
.github/workflows/backport-request.yaml
vendored
@ -1,55 +0,0 @@
|
|||||||
name: "PR Management Request Backport via Mergify"
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_run:
|
|
||||||
workflows:
|
|
||||||
- "PR Management Request Backport via Mergify Collect Data"
|
|
||||||
types: [completed]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
comment-backport:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
|
||||||
permissions:
|
|
||||||
actions: read
|
|
||||||
pull-requests: write
|
|
||||||
steps:
|
|
||||||
- name: Download PR data artifact
|
|
||||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
|
|
||||||
with:
|
|
||||||
name: pr-backport-request-data
|
|
||||||
run-id: ${{ github.event.workflow_run.id }}
|
|
||||||
github-token: ${{ github.token }}
|
|
||||||
|
|
||||||
- name: Load PR data
|
|
||||||
run: |
|
|
||||||
cat pr-backport-request-data.env >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Post Mergify backport command
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
pr_number="$PR_NUMBER"
|
|
||||||
repo="${{ github.repository }}"
|
|
||||||
|
|
||||||
labels=$(echo "$PR_LABELS" | tr ',' '\n')
|
|
||||||
|
|
||||||
echo "Labels on PR: $labels"
|
|
||||||
|
|
||||||
matches=$(echo "$labels" | grep -oE '^require backport/v[0-9]+\.[0-9]+$' || true)
|
|
||||||
|
|
||||||
if [[ -z "$matches" ]]; then
|
|
||||||
echo "No back-port labels found — skipping."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
branches=$(echo "$matches" \
|
|
||||||
| sed -E 's/^require backport\/v/release-harvester-v/' \
|
|
||||||
| sort -u | tr '\n' ' ')
|
|
||||||
branches=${branches%% }
|
|
||||||
|
|
||||||
cmd="@Mergifyio backport $branches"
|
|
||||||
echo "Posting Mergify command: $cmd"
|
|
||||||
gh pr comment "$pr_number" --repo "$repo" --body "$cmd"
|
|
||||||
@ -1,36 +0,0 @@
|
|||||||
name: Build Harvester Catalog Image and Publish on Release
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
release:
|
|
||||||
types: [published]
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
working-directory: ./
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
check-version:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Check package version
|
|
||||||
env:
|
|
||||||
TAG_VERSION: ${{ github.event.release.tag_name }}
|
|
||||||
run: ./scripts/check-version.sh $TAG_VERSION
|
|
||||||
|
|
||||||
build-and-push-extension-catalog:
|
|
||||||
needs: check-version
|
|
||||||
uses: ./.github/workflows/build-extension-catalog.yml
|
|
||||||
permissions:
|
|
||||||
actions: write
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
id-token: write
|
|
||||||
with:
|
|
||||||
registry_target: docker.io
|
|
||||||
registry_user: rancher
|
|
||||||
secrets: inherit
|
|
||||||
166
.github/workflows/build-and-publish-standalone.yaml
vendored
166
.github/workflows/build-and-publish-standalone.yaml
vendored
@ -1,166 +0,0 @@
|
|||||||
name: Build Harvester Dashboard and Publish
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_call:
|
|
||||||
inputs:
|
|
||||||
CI_BRANCH:
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
CI_BUILD_TAG:
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
env:
|
|
||||||
GOOGLE_AUTH: ''
|
|
||||||
DOCKER_USERNAME: ''
|
|
||||||
DOCKER_PASSWORD: ''
|
|
||||||
CI_BUILD_TAG: ${{inputs.CI_BUILD_TAG}}
|
|
||||||
CI_BRANCH: ${{inputs.CI_BRANCH}}
|
|
||||||
GIT_REPO: ${{github.repository}}
|
|
||||||
GIT_COMMIT: ${{github.sha}}
|
|
||||||
REPO: ${{github.event.repository.name || ''}}
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-upload-hosted:
|
|
||||||
name: Build & Upload Hosted
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
# Note - Cannot use the setup action here as it uses a different yarn install arg
|
|
||||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
cache: 'yarn'
|
|
||||||
|
|
||||||
# Build a directory containing the dashboard that can be used with ui-dashboard-index
|
|
||||||
- id: build-hosted
|
|
||||||
name: Build Hosted
|
|
||||||
run: ./scripts/build-hosted
|
|
||||||
|
|
||||||
- id: upload-gate
|
|
||||||
name: Upload Gate (superseded by a newer build?)
|
|
||||||
run: ./scripts/build-upload-gate
|
|
||||||
|
|
||||||
- name: Get gcs auth
|
|
||||||
uses: rancher-eio/read-vault-secrets@d266f55186f80a893839f6e15662e67388e443e6 # v3
|
|
||||||
with:
|
|
||||||
secrets: |
|
|
||||||
secret/data/github/repo/${{ github.repository }}/google-auth/harvester/credentials token | GOOGLE_AUTH ;
|
|
||||||
|
|
||||||
- name: Apply gcs auth
|
|
||||||
# https://github.com/google-github-actions/auth
|
|
||||||
uses: google-github-actions/auth@c200f3691d83b41bf9bbd8638997a462592937ed # v2
|
|
||||||
|
|
||||||
with:
|
|
||||||
credentials_json: "${{ env.GOOGLE_AUTH }}"
|
|
||||||
|
|
||||||
- name: Upload build
|
|
||||||
uses: google-github-actions/upload-cloud-storage@c0f6160ff80057923ff50e5e567695cea181ec23 # v2
|
|
||||||
# https://github.com/google-github-actions/upload-cloud-storage
|
|
||||||
with:
|
|
||||||
path: ${{steps.build-hosted.outputs.BUILD_HOSTED_DIR}}
|
|
||||||
destination: releases.rancher.com/harvester-ui/dashboard/${{ steps.build-hosted.outputs.BUILD_HOSTED_LOCATION }}
|
|
||||||
parent: false
|
|
||||||
headers: |-
|
|
||||||
cache-control: no-cache,must-revalidate
|
|
||||||
process_gcloudignore: false
|
|
||||||
|
|
||||||
build-and-upload-embedded:
|
|
||||||
name: Build & Upload Embedded
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
# Note - Cannot use the setup action here as it uses a different yarn install arg
|
|
||||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
cache: 'yarn'
|
|
||||||
|
|
||||||
# Build a tar that will be picked up by rancher builds and embedded into it
|
|
||||||
- id: build-embedded
|
|
||||||
name: Build Embedded
|
|
||||||
run: ./scripts/build-embedded
|
|
||||||
env:
|
|
||||||
DISABLED_EMBED_PKG: https://releases.rancher.com/harvester-ui/plugin/harvester-1.0.3.tar.gz
|
|
||||||
|
|
||||||
- name: Get gcs auth
|
|
||||||
uses: rancher-eio/read-vault-secrets@d266f55186f80a893839f6e15662e67388e443e6 # v3
|
|
||||||
with:
|
|
||||||
secrets: |
|
|
||||||
secret/data/github/repo/${{ github.repository }}/google-auth/harvester/credentials token | GOOGLE_AUTH ;
|
|
||||||
|
|
||||||
- name: Apply gcs auth
|
|
||||||
# https://github.com/google-github-actions/auth
|
|
||||||
uses: google-github-actions/auth@c200f3691d83b41bf9bbd8638997a462592937ed # v2
|
|
||||||
with:
|
|
||||||
credentials_json: "${{ env.GOOGLE_AUTH }}"
|
|
||||||
|
|
||||||
- name: Upload tar
|
|
||||||
uses: google-github-actions/upload-cloud-storage@c0f6160ff80057923ff50e5e567695cea181ec23 # v2
|
|
||||||
with:
|
|
||||||
path: ${{steps.build-embedded.outputs.BUILD_EMBEDED_TGZ}}
|
|
||||||
destination: releases.rancher.com/harvester-ui/dashboard
|
|
||||||
parent: false
|
|
||||||
headers: |-
|
|
||||||
cache-control: no-cache,must-revalidate
|
|
||||||
process_gcloudignore: false
|
|
||||||
|
|
||||||
build-and-upload-harvester-plugin:
|
|
||||||
name: Build & Upload Plugin
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
# Note - Cannot use the setup action here as it uses a different yarn install arg
|
|
||||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
cache: 'yarn'
|
|
||||||
|
|
||||||
- id: ci-build-pkg
|
|
||||||
name: Build pkg
|
|
||||||
run: ./scripts/ci-build-pkg.sh harvester
|
|
||||||
|
|
||||||
- id: upload-gate
|
|
||||||
name: Upload Gate
|
|
||||||
run: ./scripts/build-upload-gate
|
|
||||||
|
|
||||||
- name: Get gcs auth
|
|
||||||
uses: rancher-eio/read-vault-secrets@d266f55186f80a893839f6e15662e67388e443e6 # v3
|
|
||||||
with:
|
|
||||||
secrets: |
|
|
||||||
secret/data/github/repo/${{ github.repository }}/google-auth/harvester/credentials token | GOOGLE_AUTH ;
|
|
||||||
|
|
||||||
- name: Apply gcs auth
|
|
||||||
# https://github.com/google-github-actions/auth
|
|
||||||
uses: google-github-actions/auth@c200f3691d83b41bf9bbd8638997a462592937ed # v2
|
|
||||||
with:
|
|
||||||
credentials_json: "${{ env.GOOGLE_AUTH }}"
|
|
||||||
|
|
||||||
- name: Upload plugin tar
|
|
||||||
uses: google-github-actions/upload-cloud-storage@c0f6160ff80057923ff50e5e567695cea181ec23 # v2
|
|
||||||
with:
|
|
||||||
path: dist-pkg/${{steps.ci-build-pkg.outputs.PKG_TARBALL}}
|
|
||||||
destination: releases.rancher.com/harvester-ui/plugin
|
|
||||||
parent: false
|
|
||||||
headers: |-
|
|
||||||
cache-control: no-cache,must-revalidate
|
|
||||||
process_gcloudignore: false
|
|
||||||
|
|
||||||
- name: Upload plugin directory
|
|
||||||
uses: google-github-actions/upload-cloud-storage@c0f6160ff80057923ff50e5e567695cea181ec23 # v2
|
|
||||||
with:
|
|
||||||
path: dist-pkg/${{steps.ci-build-pkg.outputs.PKG_NAME}}
|
|
||||||
destination: releases.rancher.com/harvester-ui/plugin/${{steps.ci-build-pkg.outputs.PKG_NAME}}
|
|
||||||
parent: false
|
|
||||||
headers: |-
|
|
||||||
cache-control: no-cache,must-revalidate
|
|
||||||
process_gcloudignore: false
|
|
||||||
64
.github/workflows/build-extension-catalog.yml
vendored
64
.github/workflows/build-extension-catalog.yml
vendored
@ -1,64 +0,0 @@
|
|||||||
name: Build and release Extension Catalog Image to registry
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_call:
|
|
||||||
inputs:
|
|
||||||
registry_target:
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
registry_user:
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
outputs:
|
|
||||||
build-extension-catalog-job-status:
|
|
||||||
value: ${{ jobs.build-extension-catalog.outputs.build-status }}
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-push-extension-catalog:
|
|
||||||
name: Build container image
|
|
||||||
if: github.ref_type == 'tag' || (github.ref == 'refs/heads/main' && github.event_name != 'pull_request')
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
actions: write
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
id-token: write
|
|
||||||
outputs:
|
|
||||||
build-status: ${{ job.status }}
|
|
||||||
steps:
|
|
||||||
- name: Read Secrets
|
|
||||||
uses: rancher-eio/read-vault-secrets@d266f55186f80a893839f6e15662e67388e443e6 # v3
|
|
||||||
with:
|
|
||||||
secrets: |
|
|
||||||
secret/data/github/repo/${{ github.repository }}/dockerhub/rancher/credentials username | DOCKER_USERNAME ;
|
|
||||||
secret/data/github/repo/${{ github.repository }}/dockerhub/rancher/credentials password | DOCKER_PASSWORD ;
|
|
||||||
|
|
||||||
- name: Checkout repository (normal flow)
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Enable Corepack
|
|
||||||
run: corepack enable
|
|
||||||
|
|
||||||
- name: Configure Git
|
|
||||||
run: |
|
|
||||||
git config user.name 'github-actions[bot]'
|
|
||||||
git config user.email 'github-actions[bot]@users.noreply.github.com'
|
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
|
||||||
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3
|
|
||||||
with:
|
|
||||||
username: ${{ env.DOCKER_USERNAME }}
|
|
||||||
password: ${{ env.DOCKER_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Setup Helm
|
|
||||||
uses: azure/setup-helm@5119fcb9089d432beecbf79bb2c7915207344b78 # v3
|
|
||||||
with:
|
|
||||||
version: v3.8.0
|
|
||||||
|
|
||||||
- name: Setup Nodejs with yarn install
|
|
||||||
uses: ./.github/actions/setup
|
|
||||||
|
|
||||||
- name: Build and push UI image
|
|
||||||
run: |
|
|
||||||
publish="yarn publish-pkgs -cp -r ${{ inputs.registry_target }} -o ${{ inputs.registry_user }}"
|
|
||||||
$publish
|
|
||||||
146
.github/workflows/build-extension-on-merge.yml
vendored
146
.github/workflows/build-extension-on-merge.yml
vendored
@ -1,146 +0,0 @@
|
|||||||
name: Build and Release Extension Charts on PR Merge
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
- 'main'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
setup-target-branch:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
outputs:
|
|
||||||
target_branch: ${{ steps.get-version.outputs.target_branch }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Determine target branch
|
|
||||||
id: get-version
|
|
||||||
run: |
|
|
||||||
if [[ "${{ github.ref_name }}" == "main" ]]; then
|
|
||||||
TARGET_BRANCH="main-head"
|
|
||||||
elif [[ "${{ github.ref_name }}" =~ ^release-harvester-v([0-9]+\.[0-9]+)$ ]]; then
|
|
||||||
TARGET_BRANCH="v${BASH_REMATCH[1]}-head"
|
|
||||||
else
|
|
||||||
echo "Error: invalid branch format." && exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "target_branch=${TARGET_BRANCH}" >> $GITHUB_ENV
|
|
||||||
echo "target_branch=${TARGET_BRANCH}" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Ensure target branch exists
|
|
||||||
run: |
|
|
||||||
git fetch --all
|
|
||||||
if ! git ls-remote --exit-code --heads origin "${{ env.target_branch }}"; then
|
|
||||||
git checkout gh-pages
|
|
||||||
git checkout -b "${{ env.target_branch }}"
|
|
||||||
git push origin "${{ env.target_branch }}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
extract-version:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
outputs:
|
|
||||||
version: ${{ steps.get_version.outputs.version }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Extract version from package.json
|
|
||||||
id: get_version
|
|
||||||
run: |
|
|
||||||
VERSION=$(jq -r '.version' pkg/harvester/package.json)
|
|
||||||
echo "VERSION=${VERSION}" >> $GITHUB_ENV
|
|
||||||
echo "version=${VERSION}" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
build-extension-charts:
|
|
||||||
needs:
|
|
||||||
- setup-target-branch
|
|
||||||
- extract-version
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: write
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Setup Node from .nvmrc
|
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
cache: 'yarn'
|
|
||||||
|
|
||||||
- name: Setup environment
|
|
||||||
run: |
|
|
||||||
corepack enable
|
|
||||||
yarn install --frozen-lockfile
|
|
||||||
|
|
||||||
- name: Setup Helm
|
|
||||||
uses: azure/setup-helm@5119fcb9089d432beecbf79bb2c7915207344b78 # v3
|
|
||||||
with:
|
|
||||||
version: v3.8.0
|
|
||||||
|
|
||||||
- name: Build Helm charts
|
|
||||||
run: |
|
|
||||||
yarn publish-pkgs -s ${{ github.repository }} -b ${{ needs.setup-target-branch.outputs.target_branch }} -t harvester-${{ needs.extract-version.outputs.version }}
|
|
||||||
|
|
||||||
- name: Upload charts artifact
|
|
||||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
||||||
with:
|
|
||||||
name: charts
|
|
||||||
path: tmp
|
|
||||||
|
|
||||||
release:
|
|
||||||
needs:
|
|
||||||
- setup-target-branch
|
|
||||||
- extract-version
|
|
||||||
- build-extension-charts
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: write
|
|
||||||
steps:
|
|
||||||
- name: Checkout release branch
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
with:
|
|
||||||
ref: '${{ github.ref_name }}'
|
|
||||||
|
|
||||||
- name: Get last commit hash
|
|
||||||
id: last_commit
|
|
||||||
run: |
|
|
||||||
LAST_COMMIT=$(git rev-parse HEAD)
|
|
||||||
echo "LAST_COMMIT=${LAST_COMMIT}" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Checkout target branch
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
with:
|
|
||||||
ref: '${{ needs.setup-target-branch.outputs.target_branch }}'
|
|
||||||
|
|
||||||
- name: Remove old artifacts
|
|
||||||
run: |
|
|
||||||
rm -rf extensions/harvester/${{ needs.extract-version.outputs.version }}
|
|
||||||
rm -rf charts/harvester/${{ needs.extract-version.outputs.version }}
|
|
||||||
rm -f assets/harvester/harvester-${{ needs.extract-version.outputs.version }}.tgz
|
|
||||||
|
|
||||||
- name: Configure Git
|
|
||||||
run: |
|
|
||||||
git config user.name 'github-actions[bot]'
|
|
||||||
git config user.email 'github-actions[bot]@users.noreply.github.com'
|
|
||||||
|
|
||||||
- name: Download build artifacts
|
|
||||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
|
|
||||||
with:
|
|
||||||
name: charts
|
|
||||||
|
|
||||||
- name: Commit and push artifacts
|
|
||||||
run: |
|
|
||||||
git add ./{assets,charts,extensions,index.yaml}
|
|
||||||
git commit -m "CI Build Artifacts (commit: ${{ env.LAST_COMMIT }}, version: ${{ needs.extract-version.outputs.version }})"
|
|
||||||
git push origin ${{ needs.setup-target-branch.outputs.target_branch }}
|
|
||||||
|
|
||||||
- name: Run Helm chart releaser
|
|
||||||
uses: helm/chart-releaser-action@cae68fefc6b5f367a0275617c9f83181ba54714f # v1.7.0
|
|
||||||
with:
|
|
||||||
charts_dir: ./charts
|
|
||||||
env:
|
|
||||||
CR_TOKEN: '${{ secrets.GITHUB_TOKEN }}'
|
|
||||||
CR_SKIP_EXISTING: true
|
|
||||||
54
.github/workflows/build-extension-on-release.yml
vendored
54
.github/workflows/build-extension-on-release.yml
vendored
@ -1,54 +0,0 @@
|
|||||||
name: Build and Release Extension Charts on Release
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
release:
|
|
||||||
types: [released]
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
working-directory: ./
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
setup-release-tag:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
outputs:
|
|
||||||
release_tag: ${{ steps.determine_tag.outputs.release_tag }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
|
|
||||||
- name: Determine release tag
|
|
||||||
id: determine_tag
|
|
||||||
run: |
|
|
||||||
if [[ "${{ github.event.release.tag_name }}" =~ ^v([0-9]+\.[0-9]+\.[0-9]+)$ ]]; then
|
|
||||||
RELEASE_TAG="harvester-${BASH_REMATCH[1]}"
|
|
||||||
echo "${RELEASE_TAG}"
|
|
||||||
echo "release_tag=${RELEASE_TAG}" >> $GITHUB_OUTPUT
|
|
||||||
else
|
|
||||||
echo "Error: invalid tag format." && exit 1
|
|
||||||
fi
|
|
||||||
check-version:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
- name: Check package version
|
|
||||||
env:
|
|
||||||
TAG_VERSION: ${{ github.event.release.tag_name }}
|
|
||||||
run: ./scripts/check-version.sh $TAG_VERSION
|
|
||||||
|
|
||||||
build-extension-charts:
|
|
||||||
needs:
|
|
||||||
- setup-release-tag
|
|
||||||
- check-version
|
|
||||||
uses: rancher/dashboard/.github/workflows/build-extension-charts.yml@3b26a36bad555e5e2b8634b24823be29732f287c # master
|
|
||||||
permissions:
|
|
||||||
actions: write
|
|
||||||
contents: write
|
|
||||||
deployments: write
|
|
||||||
pages: write
|
|
||||||
with:
|
|
||||||
target_branch: gh-pages
|
|
||||||
tagged_release: '${{ needs.setup-release-tag.outputs.release_tag }}'
|
|
||||||
31
.github/workflows/build-standalone-on-merge.yaml
vendored
31
.github/workflows/build-standalone-on-merge.yaml
vendored
@ -1,31 +0,0 @@
|
|||||||
name: Build Standalone on PR Merge
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
- '*-dev'
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-harvester-v*'
|
|
||||||
- '*-dev'
|
|
||||||
types:
|
|
||||||
- merged
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-validation:
|
|
||||||
name: Build Test
|
|
||||||
uses: ./.github/workflows/run-lint.yaml
|
|
||||||
build:
|
|
||||||
name: Build and Upload Package
|
|
||||||
uses: ./.github/workflows/build-and-publish-standalone.yaml
|
|
||||||
needs:
|
|
||||||
- build-validation
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
id-token: write
|
|
||||||
with:
|
|
||||||
CI_BRANCH: ${{github.ref_name}}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
name: Build Standalone on Release
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
tags:
|
|
||||||
- v[1-9].*
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
check-version:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout repository
|
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
- name: Check package version
|
|
||||||
env:
|
|
||||||
TAG_VERSION: ${{github.ref_name}}
|
|
||||||
run: ./scripts/check-version.sh $TAG_VERSION
|
|
||||||
|
|
||||||
build:
|
|
||||||
name: Build and Upload Package
|
|
||||||
uses: ./.github/workflows/build-and-publish-standalone.yaml
|
|
||||||
needs: check-version
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
id-token: write
|
|
||||||
with:
|
|
||||||
CI_BUILD_TAG: ${{github.ref_name}}
|
|
||||||
34
.github/workflows/fossa.yml
vendored
34
.github/workflows/fossa.yml
vendored
@ -1,34 +0,0 @@
|
|||||||
name: FOSSA Scanning
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: ["main", "release-harvester-v*"]
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
id-token: write
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
fossa-scanning:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
timeout-minutes: 30
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
||||||
|
|
||||||
# The FOSSA token is shared between all repos in Harvester's GH org. It can
|
|
||||||
# be used directly and there is no need to request specific access to EIO.
|
|
||||||
- name: Read FOSSA token
|
|
||||||
uses: rancher-eio/read-vault-secrets@d266f55186f80a893839f6e15662e67388e443e6 # v3
|
|
||||||
with:
|
|
||||||
secrets: |
|
|
||||||
secret/data/github/org/harvester/fossa/credentials token | FOSSA_API_KEY_PUSH_ONLY
|
|
||||||
|
|
||||||
- name: FOSSA scan
|
|
||||||
uses: fossas/fossa-action@ff70fe9fe17cbd2040648f1c45e8ec4e4884dcf3 # v1.9.0
|
|
||||||
with:
|
|
||||||
api-key: ${{ env.FOSSA_API_KEY_PUSH_ONLY }}
|
|
||||||
# Only runs the scan and do not provide/returns any results back to the
|
|
||||||
# pipeline.
|
|
||||||
run-tests: false
|
|
||||||
73
.github/workflows/run-lint.yaml
vendored
73
.github/workflows/run-lint.yaml
vendored
@ -1,73 +0,0 @@
|
|||||||
name: Tests
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_call: # This tells GH that the workflow is reusable
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-*'
|
|
||||||
pull_request:
|
|
||||||
types: [opened, reopened, edited, synchronize]
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 'release-*'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
lint:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0 # Need full history for commit-lint
|
|
||||||
|
|
||||||
- name: Run tests
|
|
||||||
uses: ./.github/actions/lint
|
|
||||||
|
|
||||||
- name: Validate PR title lint
|
|
||||||
if: github.event_name == 'pull_request'
|
|
||||||
shell: bash
|
|
||||||
run: echo "${{ github.event.pull_request.title }}" | npx commitlint
|
|
||||||
|
|
||||||
- name: Validate commit messages
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
echo "GITHUB_EVENT_NAME=$GITHUB_EVENT_NAME"
|
|
||||||
echo "GITHUB_BASE_SHA=$GITHUB_BASE_SHA"
|
|
||||||
echo "GITHUB_HEAD_SHA=$GITHUB_HEAD_SHA"
|
|
||||||
echo "GITHUB_BEFORE=$GITHUB_BEFORE"
|
|
||||||
echo "GITHUB_AFTER=$GITHUB_AFTER"
|
|
||||||
|
|
||||||
if [ "$GITHUB_EVENT_NAME" = "pull_request" ] && [ -n "$GITHUB_BASE_SHA" ] && [ -n "$GITHUB_HEAD_SHA" ]; then
|
|
||||||
FROM="$GITHUB_BASE_SHA"
|
|
||||||
TO="$GITHUB_HEAD_SHA"
|
|
||||||
elif [ -n "$GITHUB_BEFORE" ] && [ -n "$GITHUB_AFTER" ]; then
|
|
||||||
if [ "$GITHUB_BEFORE" = "0000000000000000000000000000000000000000" ]; then
|
|
||||||
# first push to HEAD
|
|
||||||
FROM=""
|
|
||||||
TO="$GITHUB_AFTER"
|
|
||||||
else
|
|
||||||
FROM="$GITHUB_BEFORE"
|
|
||||||
TO="$GITHUB_AFTER"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No valid commit range found, skipping commitlint."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "FROM=$FROM"
|
|
||||||
echo "TO=$TO"
|
|
||||||
|
|
||||||
if [ -z "$FROM" ]; then
|
|
||||||
echo "Linting last commit $TO"
|
|
||||||
npx commitlint --last --verbose
|
|
||||||
|
|
||||||
else
|
|
||||||
echo "Linting commits from $FROM to $TO"
|
|
||||||
npx commitlint --from "$FROM" --to "$TO" --verbose
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
GITHUB_EVENT_NAME: ${{ github.event_name }}
|
|
||||||
GITHUB_BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
|
||||||
GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
|
|
||||||
GITHUB_BEFORE: ${{ github.event.before }}
|
|
||||||
GITHUB_AFTER: ${{ github.event.after }}
|
|
||||||
74
.gitignore
vendored
74
.gitignore
vendored
@ -1,74 +0,0 @@
|
|||||||
# rancher shell
|
|
||||||
.shell
|
|
||||||
|
|
||||||
# compiled output
|
|
||||||
/dist
|
|
||||||
/dist-pkg
|
|
||||||
/tmp
|
|
||||||
/out-tsc
|
|
||||||
|
|
||||||
# Runtime data
|
|
||||||
pids
|
|
||||||
*.pid
|
|
||||||
*.seed
|
|
||||||
*.pid.lock
|
|
||||||
|
|
||||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
|
||||||
lib-cov
|
|
||||||
|
|
||||||
# Coverage directory used by tools like istanbul
|
|
||||||
coverage
|
|
||||||
|
|
||||||
# nyc test coverage
|
|
||||||
.nyc_output
|
|
||||||
|
|
||||||
# IDEs and editors
|
|
||||||
.idea
|
|
||||||
.project
|
|
||||||
.classpath
|
|
||||||
.c9/
|
|
||||||
*.launch
|
|
||||||
.settings/
|
|
||||||
*.sublime-workspace
|
|
||||||
|
|
||||||
# IDE - VSCode
|
|
||||||
.vscode/*
|
|
||||||
!.vscode/settings.json
|
|
||||||
!.vscode/tasks.json
|
|
||||||
!.vscode/launch.json
|
|
||||||
!.vscode/extensions.json
|
|
||||||
|
|
||||||
# misc
|
|
||||||
.sass-cache
|
|
||||||
connect.lock
|
|
||||||
typings
|
|
||||||
|
|
||||||
# Logs
|
|
||||||
logs
|
|
||||||
*.log
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
|
|
||||||
# Dependency directories
|
|
||||||
node_modules/
|
|
||||||
jspm_packages/
|
|
||||||
|
|
||||||
# Optional npm cache directory
|
|
||||||
.npm
|
|
||||||
|
|
||||||
# Optional eslint cache
|
|
||||||
.eslintcache
|
|
||||||
|
|
||||||
# Optional REPL history
|
|
||||||
.node_repl_history
|
|
||||||
|
|
||||||
# Yarn Integrity file
|
|
||||||
.yarn-integrity
|
|
||||||
|
|
||||||
# dotenv environment variables file
|
|
||||||
.env
|
|
||||||
|
|
||||||
# System Files
|
|
||||||
.DS_Store
|
|
||||||
Thumbs.db
|
|
||||||
@ -1 +0,0 @@
|
|||||||
npx --no -- commitlint --edit $1
|
|
||||||
@ -1 +0,0 @@
|
|||||||
yarn lint
|
|
||||||
9
.vscode/settings.json
vendored
9
.vscode/settings.json
vendored
@ -1,9 +0,0 @@
|
|||||||
{
|
|
||||||
"files.exclude": {
|
|
||||||
".ackrc": true,
|
|
||||||
".editorconfig": true,
|
|
||||||
".eslintcache": true,
|
|
||||||
".nyc_output": true,
|
|
||||||
"yarn-error.log": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
261
AGENTS.md
261
AGENTS.md
@ -1,261 +0,0 @@
|
|||||||
> This `./AGENTS.md` file is generated by running `yarn agents:generate`.
|
|
||||||
|
|
||||||
|
|
||||||
# Project Overview
|
|
||||||
|
|
||||||
The Harvester UI Extension is a Rancher extension that provides the user interface for Harvester within the Rancher Dashboard.
|
|
||||||
|
|
||||||
```
|
|
||||||
Note: This extension is available starting from Rancher 2.10.0. Ensure your Rancher version is 2.10.0 or later to access Harvester integration.
|
|
||||||
```
|
|
||||||
|
|
||||||
# Personas
|
|
||||||
|
|
||||||
## Software Developer
|
|
||||||
|
|
||||||
You are an expert Senior Software Engineer specializing in Vue.js and TypeScript. You have deep knowledge of Kubernetes and the Rancher ecosystem.
|
|
||||||
- **Focus**: Writing clean, maintainable, and performant code.
|
|
||||||
- **Priorities**: Adhering to the project's code style, ensuring type safety, and following best practices for component design.
|
|
||||||
|
|
||||||
|
|
||||||
# Agents
|
|
||||||
|
|
||||||
## Boundaries
|
|
||||||
|
|
||||||
- ✅ **Always:**
|
|
||||||
- Write to `.github`, `docs/`, `pkg/harvester`, `scripts/`.
|
|
||||||
- Make commits in a new branch (for a PR).
|
|
||||||
- Run `yarn lint:fix` before commits.
|
|
||||||
- Use conventional commit format:
|
|
||||||
```
|
|
||||||
<type>:
|
|
||||||
|
|
||||||
<description>
|
|
||||||
```
|
|
||||||
- Follow existing naming conventions (PascalCase for components, camelCase for functions).
|
|
||||||
- After changing a Vue, JS, or TS file, make sure it's automatically formatted with ESLint.
|
|
||||||
- After updating files in `docs/agents.md/`, run `yarn agents:generate` to update root `AGENTS.md`.
|
|
||||||
- ⚠️ **Ask first:**
|
|
||||||
- Adding dependencies
|
|
||||||
- Upgrading dependencies
|
|
||||||
- 🚫 **Never:**
|
|
||||||
- Commit or log secrets, `.env`, `kubeconfig` or any API keys.
|
|
||||||
- Edit `node_modules/`.
|
|
||||||
- Commit directly to `main` (use PRs).
|
|
||||||
- Skip git hooks with `--no-verify` flag.
|
|
||||||
|
|
||||||
## Tools
|
|
||||||
|
|
||||||
### Prerequisites
|
|
||||||
|
|
||||||
- **Node.js**: `>= 24.0.0` (see `.nvmrc` for the pinned version: `24`)
|
|
||||||
- **Package manager**: `yarn` (v1 classic)
|
|
||||||
|
|
||||||
### Common Commands
|
|
||||||
|
|
||||||
| Command | Description |
|
|
||||||
|---------|-------------|
|
|
||||||
| `yarn install --frozen-lockfile` | Install dependencies (CI-safe, no lockfile changes) |
|
|
||||||
| `RANCHER_ENV=harvester API=https://<harvester-ip> yarn dev` | Start development server at `https://127.0.0.1:8005` |
|
|
||||||
| `yarn build-pkg harvester` | Build the Harvester extension package |
|
|
||||||
| `yarn serve-pkgs` | Serve the locally built extension for testing |
|
|
||||||
| `yarn lint` | Run ESLint (zero warnings allowed) |
|
|
||||||
| `yarn lint:fix` | Run ESLint with auto-fix |
|
|
||||||
| `yarn clean` | Clean build artifacts |
|
|
||||||
| `yarn agents:generate` | Regenerate `AGENTS.md` from `docs/agents.md/` sources |
|
|
||||||
|
|
||||||
### Development
|
|
||||||
|
|
||||||
- **Start dev server**:
|
|
||||||
```bash
|
|
||||||
RANCHER_ENV=harvester API=https://your-harvester-ip yarn dev
|
|
||||||
```
|
|
||||||
- `API` should point to a running Harvester cluster (e.g., `https://x.x.x.x`).
|
|
||||||
- The dashboard will be available at `https://127.0.0.1:8005`.
|
|
||||||
|
|
||||||
### Building
|
|
||||||
|
|
||||||
- **Build extension package**:
|
|
||||||
```bash
|
|
||||||
yarn build-pkg harvester
|
|
||||||
```
|
|
||||||
- **Serve locally built extension** (for integration testing with a Rancher instance):
|
|
||||||
```bash
|
|
||||||
yarn serve-pkgs
|
|
||||||
```
|
|
||||||
|
|
||||||
### Linting
|
|
||||||
|
|
||||||
- **Check** (must pass with zero warnings):
|
|
||||||
```bash
|
|
||||||
yarn lint
|
|
||||||
```
|
|
||||||
- **Auto-fix**:
|
|
||||||
```bash
|
|
||||||
yarn lint:fix
|
|
||||||
```
|
|
||||||
- ESLint covers `.js`, `.ts`, and `.vue` files.
|
|
||||||
- Always run `yarn lint:fix` before committing.
|
|
||||||
|
|
||||||
### Commit Conventions
|
|
||||||
|
|
||||||
- Commits are validated by [commitlint](https://commitlint.js.org/) via a Husky `commit-msg` hook.
|
|
||||||
- Follow [Conventional Commits](https://www.conventionalcommits.org/) format (configured in `commitlint.config.js`).
|
|
||||||
|
|
||||||
### Agent Documentation
|
|
||||||
|
|
||||||
- Source files live in `docs/agents.md/` (agents, contributors, personas subdirectories).
|
|
||||||
- After editing any source file, regenerate the root `AGENTS.md`:
|
|
||||||
```bash
|
|
||||||
yarn agents:generate
|
|
||||||
```
|
|
||||||
|
|
||||||
# Contributors Guide
|
|
||||||
|
|
||||||
## Getting Started
|
|
||||||
|
|
||||||
Please see the [Harvester UI Extension README](https://github.com/harvester/harvester-ui-extension).
|
|
||||||
|
|
||||||
To get started, follow the `Development Setup` section.
|
|
||||||
|
|
||||||
## Project Information
|
|
||||||
|
|
||||||
- **Tech Stack:**
|
|
||||||
- `Vue.js`: Framework
|
|
||||||
- `Linting`: ESLint
|
|
||||||
- `CSS`: SCSS should be used
|
|
||||||
- `TypeScript`: Primary language for logic.
|
|
||||||
- **Code Style and Standards:**
|
|
||||||
- `Language`: TypeScript is preferred for new code.
|
|
||||||
- `Vue.js`:
|
|
||||||
- Composition API components are preferred over Options API.
|
|
||||||
- Large pages with lots of code and styles should be avoided by breaking the page up into smaller Vue components.
|
|
||||||
- Place source tag above template above style.
|
|
||||||
- style tag should contain `lang='scss' scoped`.
|
|
||||||
- `Linting`: Follow the ESLint configuration in the root.
|
|
||||||
|
|
||||||
- **File Structure:**
|
|
||||||
- `.github/`: CI/CD workflows and Renovate config.
|
|
||||||
- `docs/`: Documentation source for `AGENTS.md` generation.
|
|
||||||
- `scripts/`: Bash scripts for build, CI and doc generation.
|
|
||||||
- `pkg/harvester/`: Main extension source. Files are named after K8s resource types (e.g., `kubevirt.io.virtualmachine`, `harvesterhci.io.volume`).
|
|
||||||
- `index.ts`: Plugin entry point — registers the product and auto-imports models/detail/edit views.
|
|
||||||
- `types.ts`: `HCI` constant mapping 60+ K8s resource types to string identifiers.
|
|
||||||
- `components/`: Reusable Vue components (VNC/serial console, settings panels, upgrade banners, filters).
|
|
||||||
- `config/`: Constants — settings keys, table column definitions, feature flags, type mappings, doc links.
|
|
||||||
- `detail/`: Read-only detail views per resource type. Complex resources use subdirectories with tabs.
|
|
||||||
- `dialog/`: Modal dialogs for operations (VM clone/migrate/restart, backup/restore, device passthrough, etc.).
|
|
||||||
- `edit/`: Create/edit forms. Complex resources (e.g., VM) split into subcomponents (CpuMemory, Network, Volume, CloudConfig, etc.).
|
|
||||||
- `formatters/`: Table cell formatters — state badges, usage bars, resource references.
|
|
||||||
- `l10n/`: Localization (`en-us.yaml`).
|
|
||||||
- `list/`: List (table) views per resource type, mirroring `detail/` and `edit/` naming.
|
|
||||||
- `mixins/`: Shared Vue mixins — VM helpers (`harvester-vm/`) and disk helpers (`harvester-disk.js`).
|
|
||||||
- `models/`: Model classes extending `SteveModel` with computed properties and actions. Base class: `harvester.js`.
|
|
||||||
- `pages/`: Route-level pages — dashboard, support, console, members, brand, alertmanager.
|
|
||||||
- `promptRemove/`: Custom delete-confirmation dialogs (VM, backup).
|
|
||||||
- `routing/`: Vue Router config — all product routes (CRUD, console, support, upgrade, etc.).
|
|
||||||
- `store/`: Vuex modules — `harvester-common.js` for shared state; `harvester-store/` for VM/resource creation actions with Steve integration.
|
|
||||||
- `styles/`: Global SCSS files.
|
|
||||||
- `utils/`: Helpers — VM volume templates, CPU/memory calc, cron parsing, regex validators, feature flags.
|
|
||||||
- `validators/`: Form validation functions per resource type, pushing i18n error messages.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Harvester UI Extension Development Guide
|
|
||||||
|
|
||||||
1. Backward Compatibility
|
|
||||||
The Harvester UI Extension supports earlier cluster versions (e.g., UI Ext v1.8.0 works with clusters v1.7.0 and v1.6.0). It uses Feature Flags defined in pkg/config/feature-flags to ensure the UI matches the cluster's specific version.
|
|
||||||
|
|
||||||
2. Implementation Steps for New Features
|
|
||||||
To add a feature in a new release, follow these steps:
|
|
||||||
|
|
||||||
Register: Add a unique [Feature Name] to the corresponding release array in the configuration.
|
|
||||||
|
|
||||||
Check: Use the following getter to verify if the feature is enabled for the current version:
|
|
||||||
|
|
||||||
```
|
|
||||||
computed: {
|
|
||||||
newFeatureEnabled() {
|
|
||||||
return this.$store.getters['harvester-common/getFeatureEnabled']('[Feature Name]');
|
|
||||||
},
|
|
||||||
},
|
|
||||||
```
|
|
||||||
Render: Use the result of the check to conditionally render the UI components.
|
|
||||||
|
|
||||||
|
|
||||||
## E2E Tests (Cypress)
|
|
||||||
|
|
||||||
See https://github.com/harvester/harvester-ui-tests
|
|
||||||
|
|
||||||
## Node Dependencies
|
|
||||||
|
|
||||||
Dependencies are managed via `package.json` and `yarn`
|
|
||||||
|
|
||||||
- To install dependencies use `yarn install`. This will fail if dependencies and versions listed in `package.json` are out of step with the `yarn.lock` file
|
|
||||||
- To add a dependency use `yarn run add:no-lock ...` instead of `yarn add`
|
|
||||||
- To upgrade a dependency use `yarn run upgrade:no-lock ...` instead of `yarn upgrade`
|
|
||||||
|
|
||||||
|
|
||||||
Renovate automatically updates dependencies and opens upgrade PRs after 10:00 AM on Sundays (`Asia/Taipei`).
|
|
||||||
For the Renovate config, see `.github/renovate.json`.
|
|
||||||
|
|
||||||
|
|
||||||
## Milestone guidance
|
|
||||||
|
|
||||||
- All issues must first be resolved in the `main` branch
|
|
||||||
- If backports are needed they can be made via the backport bot
|
|
||||||
- pull requests
|
|
||||||
- comment `@Mergifyio backport <target branch>` e.g. `@Mergifyio backport release-harvester-v1.8`
|
|
||||||
- All backported pull requests must link to a backported issue
|
|
||||||
|
|
||||||
|
|
||||||
## Creating a branch
|
|
||||||
|
|
||||||
### To resolve an issue
|
|
||||||
- Checkout the branch matching the milestone of the issue `git checkout ${targetMilestoneBranch}`. Replace `${targetMilestoneBranch}` with the target milestone of the issue. For example
|
|
||||||
- `main` for the latest unreleased minor version
|
|
||||||
- `release-harvester-v.X` for release minor versions
|
|
||||||
- `release-harvester-v1.6`
|
|
||||||
- `release-harvester-v1.7`
|
|
||||||
- `release-harvester-v1.8`
|
|
||||||
- Ensure you have the latest of that branch `git pull --rebase`
|
|
||||||
- Checkout the branch to commit the changes to `git checkout issue-${issueNumber}`. Replace `${issueNumber}` with the issue number.
|
|
||||||
|
|
||||||
## Creating a commit
|
|
||||||
|
|
||||||
- This project uses commit-lint with [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) to ensure consistent and meaningful commit messages.
|
|
||||||
|
|
||||||
### Commit Message Format
|
|
||||||
All commit messages must follow the conventional commit format:
|
|
||||||
```
|
|
||||||
<type>[optional scope]: <description>
|
|
||||||
|
|
||||||
[optional body]
|
|
||||||
|
|
||||||
[optional footer(s)]
|
|
||||||
```
|
|
||||||
|
|
||||||
### Supported Types
|
|
||||||
- feat: New features
|
|
||||||
- fix: Bug fixes
|
|
||||||
- docs: Documentation changes
|
|
||||||
- style: Code style changes (formatting, missing semicolons, etc.)
|
|
||||||
- refactor: Code refactoring
|
|
||||||
- perf: Performance improvements
|
|
||||||
- test: Adding or updating tests
|
|
||||||
- build: Build system or external dependencies
|
|
||||||
- ci: CI/CD changes
|
|
||||||
- chore: Other changes that don't modify src or test files
|
|
||||||
- revert: Reverts a previous commit
|
|
||||||
- wip: Work in progress
|
|
||||||
- deps: Dependency updates
|
|
||||||
- security: Security fixes
|
|
||||||
|
|
||||||
## Creating a Pull Request
|
|
||||||
|
|
||||||
- Pull requests must come from forks
|
|
||||||
- Description should always have commit supported type prefix. E.g `fix: XXX`, `feat: OOO`
|
|
||||||
- A Pull Request will only be merged once
|
|
||||||
- ALL CI gates have passed
|
|
||||||
- At least one harvester/harvester-ui-extension code owners reviews and approves the PR
|
|
||||||
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
@a110605
|
|
||||||
@houhoucoop
|
|
||||||
201
LICENSE
201
LICENSE
@ -1,201 +0,0 @@
|
|||||||
Apache License
|
|
||||||
Version 2.0, January 2004
|
|
||||||
http://www.apache.org/licenses/
|
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
||||||
|
|
||||||
1. Definitions.
|
|
||||||
|
|
||||||
"License" shall mean the terms and conditions for use, reproduction,
|
|
||||||
and distribution as defined by Sections 1 through 9 of this document.
|
|
||||||
|
|
||||||
"Licensor" shall mean the copyright owner or entity authorized by
|
|
||||||
the copyright owner that is granting the License.
|
|
||||||
|
|
||||||
"Legal Entity" shall mean the union of the acting entity and all
|
|
||||||
other entities that control, are controlled by, or are under common
|
|
||||||
control with that entity. For the purposes of this definition,
|
|
||||||
"control" means (i) the power, direct or indirect, to cause the
|
|
||||||
direction or management of such entity, whether by contract or
|
|
||||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
||||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
||||||
|
|
||||||
"You" (or "Your") shall mean an individual or Legal Entity
|
|
||||||
exercising permissions granted by this License.
|
|
||||||
|
|
||||||
"Source" form shall mean the preferred form for making modifications,
|
|
||||||
including but not limited to software source code, documentation
|
|
||||||
source, and configuration files.
|
|
||||||
|
|
||||||
"Object" form shall mean any form resulting from mechanical
|
|
||||||
transformation or translation of a Source form, including but
|
|
||||||
not limited to compiled object code, generated documentation,
|
|
||||||
and conversions to other media types.
|
|
||||||
|
|
||||||
"Work" shall mean the work of authorship, whether in Source or
|
|
||||||
Object form, made available under the License, as indicated by a
|
|
||||||
copyright notice that is included in or attached to the work
|
|
||||||
(an example is provided in the Appendix below).
|
|
||||||
|
|
||||||
"Derivative Works" shall mean any work, whether in Source or Object
|
|
||||||
form, that is based on (or derived from) the Work and for which the
|
|
||||||
editorial revisions, annotations, elaborations, or other modifications
|
|
||||||
represent, as a whole, an original work of authorship. For the purposes
|
|
||||||
of this License, Derivative Works shall not include works that remain
|
|
||||||
separable from, or merely link (or bind by name) to the interfaces of,
|
|
||||||
the Work and Derivative Works thereof.
|
|
||||||
|
|
||||||
"Contribution" shall mean any work of authorship, including
|
|
||||||
the original version of the Work and any modifications or additions
|
|
||||||
to that Work or Derivative Works thereof, that is intentionally
|
|
||||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
||||||
or by an individual or Legal Entity authorized to submit on behalf of
|
|
||||||
the copyright owner. For the purposes of this definition, "submitted"
|
|
||||||
means any form of electronic, verbal, or written communication sent
|
|
||||||
to the Licensor or its representatives, including but not limited to
|
|
||||||
communication on electronic mailing lists, source code control systems,
|
|
||||||
and issue tracking systems that are managed by, or on behalf of, the
|
|
||||||
Licensor for the purpose of discussing and improving the Work, but
|
|
||||||
excluding communication that is conspicuously marked or otherwise
|
|
||||||
designated in writing by the copyright owner as "Not a Contribution."
|
|
||||||
|
|
||||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
||||||
on behalf of whom a Contribution has been received by Licensor and
|
|
||||||
subsequently incorporated within the Work.
|
|
||||||
|
|
||||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
copyright license to reproduce, prepare Derivative Works of,
|
|
||||||
publicly display, publicly perform, sublicense, and distribute the
|
|
||||||
Work and such Derivative Works in Source or Object form.
|
|
||||||
|
|
||||||
3. Grant of Patent License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
(except as stated in this section) patent license to make, have made,
|
|
||||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
||||||
where such license applies only to those patent claims licensable
|
|
||||||
by such Contributor that are necessarily infringed by their
|
|
||||||
Contribution(s) alone or by combination of their Contribution(s)
|
|
||||||
with the Work to which such Contribution(s) was submitted. If You
|
|
||||||
institute patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
||||||
or a Contribution incorporated within the Work constitutes direct
|
|
||||||
or contributory patent infringement, then any patent licenses
|
|
||||||
granted to You under this License for that Work shall terminate
|
|
||||||
as of the date such litigation is filed.
|
|
||||||
|
|
||||||
4. Redistribution. You may reproduce and distribute copies of the
|
|
||||||
Work or Derivative Works thereof in any medium, with or without
|
|
||||||
modifications, and in Source or Object form, provided that You
|
|
||||||
meet the following conditions:
|
|
||||||
|
|
||||||
(a) You must give any other recipients of the Work or
|
|
||||||
Derivative Works a copy of this License; and
|
|
||||||
|
|
||||||
(b) You must cause any modified files to carry prominent notices
|
|
||||||
stating that You changed the files; and
|
|
||||||
|
|
||||||
(c) You must retain, in the Source form of any Derivative Works
|
|
||||||
that You distribute, all copyright, patent, trademark, and
|
|
||||||
attribution notices from the Source form of the Work,
|
|
||||||
excluding those notices that do not pertain to any part of
|
|
||||||
the Derivative Works; and
|
|
||||||
|
|
||||||
(d) If the Work includes a "NOTICE" text file as part of its
|
|
||||||
distribution, then any Derivative Works that You distribute must
|
|
||||||
include a readable copy of the attribution notices contained
|
|
||||||
within such NOTICE file, excluding those notices that do not
|
|
||||||
pertain to any part of the Derivative Works, in at least one
|
|
||||||
of the following places: within a NOTICE text file distributed
|
|
||||||
as part of the Derivative Works; within the Source form or
|
|
||||||
documentation, if provided along with the Derivative Works; or,
|
|
||||||
within a display generated by the Derivative Works, if and
|
|
||||||
wherever such third-party notices normally appear. The contents
|
|
||||||
of the NOTICE file are for informational purposes only and
|
|
||||||
do not modify the License. You may add Your own attribution
|
|
||||||
notices within Derivative Works that You distribute, alongside
|
|
||||||
or as an addendum to the NOTICE text from the Work, provided
|
|
||||||
that such additional attribution notices cannot be construed
|
|
||||||
as modifying the License.
|
|
||||||
|
|
||||||
You may add Your own copyright statement to Your modifications and
|
|
||||||
may provide additional or different license terms and conditions
|
|
||||||
for use, reproduction, or distribution of Your modifications, or
|
|
||||||
for any such Derivative Works as a whole, provided Your use,
|
|
||||||
reproduction, and distribution of the Work otherwise complies with
|
|
||||||
the conditions stated in this License.
|
|
||||||
|
|
||||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
||||||
any Contribution intentionally submitted for inclusion in the Work
|
|
||||||
by You to the Licensor shall be under the terms and conditions of
|
|
||||||
this License, without any additional terms or conditions.
|
|
||||||
Notwithstanding the above, nothing herein shall supersede or modify
|
|
||||||
the terms of any separate license agreement you may have executed
|
|
||||||
with Licensor regarding such Contributions.
|
|
||||||
|
|
||||||
6. Trademarks. This License does not grant permission to use the trade
|
|
||||||
names, trademarks, service marks, or product names of the Licensor,
|
|
||||||
except as required for reasonable and customary use in describing the
|
|
||||||
origin of the Work and reproducing the content of the NOTICE file.
|
|
||||||
|
|
||||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
||||||
agreed to in writing, Licensor provides the Work (and each
|
|
||||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
||||||
implied, including, without limitation, any warranties or conditions
|
|
||||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
||||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
||||||
appropriateness of using or redistributing the Work and assume any
|
|
||||||
risks associated with Your exercise of permissions under this License.
|
|
||||||
|
|
||||||
8. Limitation of Liability. In no event and under no legal theory,
|
|
||||||
whether in tort (including negligence), contract, or otherwise,
|
|
||||||
unless required by applicable law (such as deliberate and grossly
|
|
||||||
negligent acts) or agreed to in writing, shall any Contributor be
|
|
||||||
liable to You for damages, including any direct, indirect, special,
|
|
||||||
incidental, or consequential damages of any character arising as a
|
|
||||||
result of this License or out of the use or inability to use the
|
|
||||||
Work (including but not limited to damages for loss of goodwill,
|
|
||||||
work stoppage, computer failure or malfunction, or any and all
|
|
||||||
other commercial damages or losses), even if such Contributor
|
|
||||||
has been advised of the possibility of such damages.
|
|
||||||
|
|
||||||
9. Accepting Warranty or Additional Liability. While redistributing
|
|
||||||
the Work or Derivative Works thereof, You may choose to offer,
|
|
||||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
||||||
or other liability obligations and/or rights consistent with this
|
|
||||||
License. However, in accepting such obligations, You may act only
|
|
||||||
on Your own behalf and on Your sole responsibility, not on behalf
|
|
||||||
of any other Contributor, and only if You agree to indemnify,
|
|
||||||
defend, and hold each Contributor harmless for any liability
|
|
||||||
incurred by, or claims asserted against, such Contributor by reason
|
|
||||||
of your accepting any such warranty or additional liability.
|
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
|
||||||
|
|
||||||
APPENDIX: How to apply the Apache License to your work.
|
|
||||||
|
|
||||||
To apply the Apache License to your work, attach the following
|
|
||||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
||||||
replaced with your own identifying information. (Don't include
|
|
||||||
the brackets!) The text should be enclosed in the appropriate
|
|
||||||
comment syntax for the file format. We also recommend that a
|
|
||||||
file or class name and description of purpose be included on the
|
|
||||||
same "printed page" as the copyright notice for easier
|
|
||||||
identification within third-party archives.
|
|
||||||
|
|
||||||
Copyright [yyyy] [name of copyright owner]
|
|
||||||
|
|
||||||
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.
|
|
||||||
@ -7,7 +7,7 @@ The Harvester UI Extension is a Rancher extension that provides the user interfa
|
|||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
For Harvester UI extension installation instructions, please refer to the page **Rancher Integration** -> **Harvester UI Extension** in [official Harvester documentation](https://docs.harvesterhci.io).
|
For detailed installation instructions, please refer to the [official Harvester documentation](https://docs.harvesterhci.io/v1.5/rancher/harvester-ui-extension#installation-on-rancher-210).
|
||||||
|
|
||||||
|
|
||||||
## Development Setup
|
## Development Setup
|
||||||
@ -163,7 +163,7 @@ If you want to contribute, start by reading this document, then visit our [Getti
|
|||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Copyright (c) 2014-2026 [SUSE, LLC.](https://www.suse.com/)
|
Copyright (c) 2014-2025 [SUSE, LLC.](https://www.suse.com/)
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
|
|||||||
BIN
assets/harvester/harvester-1.0.0.tgz
Normal file
BIN
assets/harvester/harvester-1.0.0.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.1.tgz
Normal file
BIN
assets/harvester/harvester-1.0.1.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.2.tgz
Normal file
BIN
assets/harvester/harvester-1.0.2.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.3.tgz
Normal file
BIN
assets/harvester/harvester-1.0.3.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.4.tgz
Normal file
BIN
assets/harvester/harvester-1.0.4.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.5.tgz
Normal file
BIN
assets/harvester/harvester-1.0.5.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.0.6.tgz
Normal file
BIN
assets/harvester/harvester-1.0.6.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.5.0.tgz
Normal file
BIN
assets/harvester/harvester-1.5.0.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.5.1.tgz
Normal file
BIN
assets/harvester/harvester-1.5.1.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.5.2.tgz
Normal file
BIN
assets/harvester/harvester-1.5.2.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.6.0.tgz
Normal file
BIN
assets/harvester/harvester-1.6.0.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.6.1.tgz
Normal file
BIN
assets/harvester/harvester-1.6.1.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.7.0.tgz
Normal file
BIN
assets/harvester/harvester-1.7.0.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.7.1.tgz
Normal file
BIN
assets/harvester/harvester-1.7.1.tgz
Normal file
Binary file not shown.
BIN
assets/harvester/harvester-1.8.0.tgz
Normal file
BIN
assets/harvester/harvester-1.8.0.tgz
Normal file
Binary file not shown.
334
assets/index.yaml
Normal file
334
assets/index.yaml
Normal file
@ -0,0 +1,334 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
entries:
|
||||||
|
harvester:
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.14.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.8.0
|
||||||
|
created: "2026-04-24T08:42:25.876102825Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 3d59157b1f071cf7e6da5efa2024c2484681075c18b1ef1ee9d114805b995af9
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.8.0.tgz
|
||||||
|
version: 1.8.0
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.13.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.7.1
|
||||||
|
created: "2026-02-09T01:38:47.352758035Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: c570a3e3c94e82ead235d9466bac185d7b598900475deab0252d41164e9ee8b6
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.7.1.tgz
|
||||||
|
version: 1.7.1
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.13.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.7.0
|
||||||
|
created: "2025-12-22T05:51:53.138074031Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: cd5c5510f7ae950080515d45a8fdff4e4783bb5f84aa1a3137beea9b31c36ca4
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.7.0.tgz
|
||||||
|
version: 1.7.0
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.12.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.6.1
|
||||||
|
created: "2025-10-16T04:39:45.574842313Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: df703aaada94422091572b9688a99bb307ed4554d97e170bf33672f1be24fbec
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.6.1.tgz
|
||||||
|
version: 1.6.1
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.12.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.6.0
|
||||||
|
created: "2025-08-26T03:29:21.033664392Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 909af8d2367e4c7efe00d3ed652f08de754e6649f4918f4ed2061c07ae1d3d80
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.6.0.tgz
|
||||||
|
version: 1.6.0
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.2
|
||||||
|
created: "2025-09-17T03:07:46.804461872Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 87cf31646a9b992062fcfe814141a4d94e08084fd90beb4d7013ca76c166282a
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.5.2.tgz
|
||||||
|
version: 1.5.2
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.1
|
||||||
|
created: "2025-06-27T09:48:21.367483564Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: babe61b6d79da2e3aff8cb728b0ba199b452aede7415e4c0f0f7fa64db2753cd
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.5.1.tgz
|
||||||
|
version: 1.5.1
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.0
|
||||||
|
created: "2025-04-25T02:20:26.600866687Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 5e1afb0097c5462f993a05a9349a15a60b469f640c767a3c93b6bcc80d3c44ac
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.5.0.tgz
|
||||||
|
version: 1.5.0
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.6
|
||||||
|
created: "2025-05-26T06:32:05.860124157Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 96a36d27d133efa201ab66d90ef836a0d3d77f6545644072be28171401a3ae63
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.6.tgz
|
||||||
|
version: 1.0.6
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.5
|
||||||
|
created: "2025-04-09T06:25:21.340042447Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: fa5abbe0e45e49503ae2c7a02d51a0a04712a89e2e37580492f049a4c2d21f56
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.5.tgz
|
||||||
|
version: 1.0.5
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.4
|
||||||
|
created: "2025-03-12T04:29:44.860530676Z"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: dd764576608dc58afb8a295465e5d96eb62465f81619b8b330431049d6abc620
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.4.tgz
|
||||||
|
version: 1.0.4
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.3
|
||||||
|
created: "2025-01-23T09:53:53.344703+08:00"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 5c48a041bf53352b577b676b00cdbaa33111d6e56dc0ef3c6b4e3356af8fa7e6
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.3.tgz
|
||||||
|
version: 1.0.3
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.2
|
||||||
|
created: "2024-12-11T16:31:27.652133344+01:00"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: f67131b4885906997f72215207b26758fafaeef0fb499d76c5f44d37e4fcbcd3
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.2.tgz
|
||||||
|
version: 1.0.2
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.1
|
||||||
|
created: "2024-12-05T10:00:30.505664281+01:00"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 1a913ee87fc9b99b3f98f6782910288e6b3c704ad4deec4d449aab5fd981b698
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.1.tgz
|
||||||
|
version: 1.0.1
|
||||||
|
- annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0-0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.0
|
||||||
|
created: "2024-11-13T11:07:57.455463377+01:00"
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
digest: 3ef724e6bf906c1cfa691a43e7c9be737a9bc2fc0b3df6d227fac05adf0aea04
|
||||||
|
icon: https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- assets/harvester/harvester-1.0.0.tgz
|
||||||
|
version: 1.0.0
|
||||||
|
generated: "2026-04-24T08:42:25.87529445Z"
|
||||||
@ -1 +0,0 @@
|
|||||||
module.exports = require('@rancher/shell/babel.config.js');
|
|
||||||
19
charts/harvester/1.0.0/Chart.yaml
Normal file
19
charts/harvester/1.0.0/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.0-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0-0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.0
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.0
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.0/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.0/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.0/templates/cr.yaml
Normal file
14
charts/harvester/1.0.0/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.0
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.0/values.yaml
Normal file
12
charts/harvester/1.0.0/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0-0"
|
||||||
19
charts/harvester/1.0.1/Chart.yaml
Normal file
19
charts/harvester/1.0.1/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.1
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.1
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.1/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.1/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.1/templates/cr.yaml
Normal file
14
charts/harvester/1.0.1/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.1
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.1/values.yaml
Normal file
12
charts/harvester/1.0.1/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.0.2/Chart.yaml
Normal file
19
charts/harvester/1.0.2/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.2
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.2
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.2/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.2/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.2/templates/cr.yaml
Normal file
14
charts/harvester/1.0.2/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.2
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.2/values.yaml
Normal file
12
charts/harvester/1.0.2/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.0.3/Chart.yaml
Normal file
19
charts/harvester/1.0.3/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.3
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.3
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.3/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.3/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.3/templates/cr.yaml
Normal file
14
charts/harvester/1.0.3/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.3
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.3/values.yaml
Normal file
12
charts/harvester/1.0.3/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.0.4/Chart.yaml
Normal file
19
charts/harvester/1.0.4/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.4
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.4
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.4/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.4/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.4/templates/cr.yaml
Normal file
14
charts/harvester/1.0.4/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.4
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.4/values.yaml
Normal file
12
charts/harvester/1.0.4/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.0.5/Chart.yaml
Normal file
19
charts/harvester/1.0.5/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.5
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.5
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.5/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.5/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.5/templates/cr.yaml
Normal file
14
charts/harvester/1.0.5/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.5
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.5/values.yaml
Normal file
12
charts/harvester/1.0.5/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.0.6/Chart.yaml
Normal file
19
charts/harvester/1.0.6/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.10.1-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.0.6
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.0.6
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.0.6/templates/_helpers.tpl
Normal file
63
charts/harvester/1.0.6/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.0.6/templates/cr.yaml
Normal file
14
charts/harvester/1.0.6/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.0.6
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.0.6/values.yaml
Normal file
12
charts/harvester/1.0.6/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.10.1-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.5.0/Chart.yaml
Normal file
19
charts/harvester/1.5.0/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.0
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.5.0
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.5.0/templates/_helpers.tpl
Normal file
63
charts/harvester/1.5.0/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.5.0/templates/cr.yaml
Normal file
14
charts/harvester/1.5.0/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.5.0
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.5.0/values.yaml
Normal file
12
charts/harvester/1.5.0/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.11.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.5.1/Chart.yaml
Normal file
19
charts/harvester/1.5.1/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.1
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.5.1
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.5.1/templates/_helpers.tpl
Normal file
63
charts/harvester/1.5.1/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.5.1/templates/cr.yaml
Normal file
14
charts/harvester/1.5.1/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.5.1
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.5.1/values.yaml
Normal file
12
charts/harvester/1.5.1/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.11.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.5.2/Chart.yaml
Normal file
19
charts/harvester/1.5.2/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.11.0-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.5.2
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.5.2
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.5.2/templates/_helpers.tpl
Normal file
63
charts/harvester/1.5.2/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
14
charts/harvester/1.5.2/templates/cr.yaml
Normal file
14
charts/harvester/1.5.2/templates/cr.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.5.2
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
12
charts/harvester/1.5.2/values.yaml
Normal file
12
charts/harvester/1.5.2/values.yaml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.11.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.6.0/Chart.yaml
Normal file
19
charts/harvester/1.6.0/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.12.0-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.6.0
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.6.0
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.6.0/templates/_helpers.tpl
Normal file
63
charts/harvester/1.6.0/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | replace "+" "_" | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
15
charts/harvester/1.6.0/templates/cr.yaml
Normal file
15
charts/harvester/1.6.0/templates/cr.yaml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: {{ .Values.plugin.endpoint | quote }}
|
||||||
|
compressedEndpoint: {{ .Values.plugin.compressedEndpoint | quote }}
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
16
charts/harvester/1.6.0/values.yaml
Normal file
16
charts/harvester/1.6.0/values.yaml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
endpoint: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.6.0
|
||||||
|
compressedEndpoint: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.6.0.tgz
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.12.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
19
charts/harvester/1.6.1/Chart.yaml
Normal file
19
charts/harvester/1.6.1/Chart.yaml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
annotations:
|
||||||
|
catalog.cattle.io/certified: rancher
|
||||||
|
catalog.cattle.io/namespace: cattle-ui-plugin-system
|
||||||
|
catalog.cattle.io/os: linux
|
||||||
|
catalog.cattle.io/permits-os: linux, windows
|
||||||
|
catalog.cattle.io/scope: management
|
||||||
|
catalog.cattle.io/ui-component: plugins
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: '>= 1.16.0-0'
|
||||||
|
catalog.cattle.io/rancher-version: '>= 2.12.0-0'
|
||||||
|
catalog.cattle.io/ui-extensions-version: '>= 3.0.0 < 4.0.0'
|
||||||
|
apiVersion: v2
|
||||||
|
appVersion: 1.6.1
|
||||||
|
description: Rancher UI Extension for Harvester
|
||||||
|
name: harvester
|
||||||
|
type: application
|
||||||
|
version: 1.6.1
|
||||||
|
icon: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/main/pkg/harvester/icon.svg
|
||||||
63
charts/harvester/1.6.1/templates/_helpers.tpl
Normal file
63
charts/harvester/1.6.1/templates/_helpers.tpl
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "extension-server.chart" . }}
|
||||||
|
{{ include "extension-server.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | replace "+" "_" | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "extension-server.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Pkg annotations
|
||||||
|
*/}}
|
||||||
|
{{- define "extension-server.pluginMetadata" -}}
|
||||||
|
{{- with .Values.plugin.metadata }}
|
||||||
|
{{- range $key, $value := . }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
15
charts/harvester/1.6.1/templates/cr.yaml
Normal file
15
charts/harvester/1.6.1/templates/cr.yaml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: catalog.cattle.io/v1
|
||||||
|
kind: UIPlugin
|
||||||
|
metadata:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels: {{ include "extension-server.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
plugin:
|
||||||
|
name: {{ include "extension-server.fullname" . }}
|
||||||
|
version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }}
|
||||||
|
endpoint: {{ .Values.plugin.endpoint | quote }}
|
||||||
|
compressedEndpoint: {{ .Values.plugin.compressedEndpoint | quote }}
|
||||||
|
noCache: {{ .Values.plugin.noCache }}
|
||||||
|
noAuth: {{ .Values.plugin.noAuth }}
|
||||||
|
metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }}
|
||||||
16
charts/harvester/1.6.1/values.yaml
Normal file
16
charts/harvester/1.6.1/values.yaml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
nameOverride: ""
|
||||||
|
fullnameOverride: ""
|
||||||
|
plugin:
|
||||||
|
enabled: true
|
||||||
|
versionOverride: ""
|
||||||
|
endpoint: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.6.1
|
||||||
|
compressedEndpoint: >-
|
||||||
|
https://raw.githubusercontent.com/harvester/harvester-ui-extension/gh-pages/extensions/harvester/1.6.1.tgz
|
||||||
|
noCache: false
|
||||||
|
noAuth: false
|
||||||
|
metadata:
|
||||||
|
catalog.cattle.io/display-name: Harvester
|
||||||
|
catalog.cattle.io/kube-version: ">= 1.16.0-0"
|
||||||
|
catalog.cattle.io/rancher-version: ">= 2.12.0-0"
|
||||||
|
catalog.cattle.io/ui-extensions-version: ">= 3.0.0 < 4.0.0"
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user