From bd936eb81de9f8682820b5e187c1c6292e8232a4 Mon Sep 17 00:00:00 2001 From: Sai Date: Thu, 2 Jan 2025 20:13:26 +0800 Subject: [PATCH 1/3] new app MoviePilot --- moviepilot/.helmignore | 0 moviepilot/Chart.yaml | 24 ++++++ moviepilot/OlaresManifest.yaml | 98 +++++++++++++++++++++++ moviepilot/i18n/en-US/OlaresManifest.yaml | 42 ++++++++++ moviepilot/i18n/zh-CN/OlaresManifest.yaml | 43 ++++++++++ moviepilot/owners | 4 + moviepilot/templates/moviepilot.yaml | 96 ++++++++++++++++++++++ moviepilot/values.yaml | 0 8 files changed, 307 insertions(+) create mode 100644 moviepilot/.helmignore create mode 100644 moviepilot/Chart.yaml create mode 100644 moviepilot/OlaresManifest.yaml create mode 100644 moviepilot/i18n/en-US/OlaresManifest.yaml create mode 100644 moviepilot/i18n/zh-CN/OlaresManifest.yaml create mode 100644 moviepilot/owners create mode 100644 moviepilot/templates/moviepilot.yaml create mode 100644 moviepilot/values.yaml diff --git a/moviepilot/.helmignore b/moviepilot/.helmignore new file mode 100644 index 00000000..e69de29b diff --git a/moviepilot/Chart.yaml b/moviepilot/Chart.yaml new file mode 100644 index 00000000..e01de5d8 --- /dev/null +++ b/moviepilot/Chart.yaml @@ -0,0 +1,24 @@ +apiVersion: v2 +name: moviepilot +description: moviepilot + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: '1.0.3' + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "1.24.1" diff --git a/moviepilot/OlaresManifest.yaml b/moviepilot/OlaresManifest.yaml new file mode 100644 index 00000000..8ebedf68 --- /dev/null +++ b/moviepilot/OlaresManifest.yaml @@ -0,0 +1,98 @@ +olaresManifest.version: '0.8.1' +olaresManifest.type: app +metadata: + name: moviepilot + description: moviepilot is an extendable workflow automation tool. + icon: https://file.bttcdn.com/appstore/moviepilot/icon.png + appid: moviepilot + version: '1.0.3' + title: moviepilot + categories: + - Productivity +permission: + appData: true + appCache: true +spec: + versionName: '1.24.1' + featuredImage: https://file.bttcdn.com/appstore/moviepilot/promote_image_1v2.webp + promoteImage: + - https://file.bttcdn.com/appstore/moviepilot/promote_image_1v2.webp + - https://file.bttcdn.com/appstore/moviepilot/promote_image_2v2.webp + - https://file.bttcdn.com/appstore/moviepilot/promote_image_3v2.webp + - https://file.bttcdn.com/appstore/moviepilot/promote_image_4v2.webp + fullDescription: | + moviepilot is an extendable workflow automation tool. With a fair-code distribution model, moviepilot will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. moviepilot's node-based approach makes it highly versatile, enabling you to connect anything to everything. + + # Available integrations + moviepilot has 200+ different nodes to automate workflows. The list can be found on: + https://moviepilot.io/integrations + + # Build powerful workflows, really fast + Handle really complex processes + Simple debugging + Use templates to get started fast + Code when you need it, UI when you don''t + Reuse your work + + # Get peace of mind + Connect to any system + Customize error handling + Horizontal scaling + Host on your own infrastructure + + # Features + Visual workflow editor + Run JavaScript + npm package import + Workflows can wait + Conditional logic and branching + Webhook triggers + Retry failed executions + Multi-trigger workflows + Source code available + User management + Create custom nodes + Encrypted credential store + Copy + paste workflows + Export workflows to JSON + Custom error workflows + + upgradeDescription: | + Reduce required CPU. + developer: moviepilot + website: https://moviepilot.io/ + sourceCode: https://github.com/moviepilot-io/moviepilot + submitter: Olares + locale: + - en-US + - zh-CN + doc: https://docs.moviepilot.io/?_gl=1*1s8nde9*_ga*MTAyODQxOTEuMTY5NzQyODM3MA..*_ga_0SC4FF2FH9*MTY5NzQyODM3MC4xLjAuMTY5NzQyODM3MC42MC4wLjA. + requiredMemory: 1Gi + limitedMemory: 1.5Gi + requiredDisk: 128Mi + limitedDisk: 256Mi + requiredCpu: 0.3 + limitedCpu: 1 + legal: + - text: moviepilot Legal + url: https://moviepilot.io/legal/ + license: + - text: Unknown + url: https://github.com/moviepilot-io/moviepilot/blob/master/LICENSE.md + supportArch: + - amd64 + - arm64 + runAsUser: true +options: + dependencies: + - name: olares + type: system + version: '>=1.10.1-0' +entrances: +- name: moviepilot + port: 3000 + host: moviepilot + title: moviepilot + icon: https://file.bttcdn.com/appstore/moviepilot/icon.png + authLevel: private + openMethod: window diff --git a/moviepilot/i18n/en-US/OlaresManifest.yaml b/moviepilot/i18n/en-US/OlaresManifest.yaml new file mode 100644 index 00000000..3cf739c4 --- /dev/null +++ b/moviepilot/i18n/en-US/OlaresManifest.yaml @@ -0,0 +1,42 @@ +metadata: + title: moviepilot + description: moviepilot is an extendable workflow automation tool. +spec: + fullDescription: | + moviepilot is an extendable workflow automation tool. With a fair-code distribution model, moviepilot will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. moviepilot's node-based approach makes it highly versatile, enabling you to connect anything to everything. + + # Available integrations + moviepilot has 200+ different nodes to automate workflows. The list can be found on: + https://moviepilot.io/integrations + + # Build powerful workflows, really fast + Handle really complex processes + Simple debugging + Use templates to get started fast + Code when you need it, UI when you don''t + Reuse your work + + # Get peace of mind + Connect to any system + Customize error handling + Horizontal scaling + Host on your own infrastructure + + # Features + Visual workflow editor + Run JavaScript + npm package import + Workflows can wait + Conditional logic and branching + Webhook triggers + Retry failed executions + Multi-trigger workflows + Source code available + User management + Create custom nodes + Encrypted credential store + Copy + paste workflows + Export workflows to JSON + Custom error workflows + upgradeDescription: | + Reduce required CPU. diff --git a/moviepilot/i18n/zh-CN/OlaresManifest.yaml b/moviepilot/i18n/zh-CN/OlaresManifest.yaml new file mode 100644 index 00000000..6301dd44 --- /dev/null +++ b/moviepilot/i18n/zh-CN/OlaresManifest.yaml @@ -0,0 +1,43 @@ +metadata: + description: moviepilot 是一款可扩展的工作流自动化工具。 + title: moviepilot +spec: + fullDescription: | + moviepilot 是一款可扩展的工作流自动化工具。moviepilot 采用开放源码,支持自托管,您还可以添加自定义功能和应用。moviepilot 的节点式架构让它具备高度的灵活性,能连接任何东西到一切。 + + # Available integrations + moviepilot 提供超过 200 种不同节点用于自动化工作流。更多信息请见: + https://moviepilot.io/integrations + + # Build powerful workflows, really fast + 处理复杂流程 + 简化调试 + 使用模板快速启动 + 需要编程时编码,不需要时用 UI + 复用成果 + + # Get peace of mind + 接入任何系统 + 自定义错误处理 + 横向扩展 + 在自有基础设施上部署 + + # Features + 可视化工作流编辑器 + 执行 JavaScript + 引入 npm 包 + 工作流可暂停 + 条件逻辑与分支 + Webhook 触发 + 重试失败任务 + 多触发器工作流 + 开放源代码 + 用户管理 + 制作自定义节点 + 加密的凭证存储 + 复制粘贴工作流 + 工作流导出为 JSON + 定制错误处理流程 + + upgradeDescription: | + 降低 CPU 占用 diff --git a/moviepilot/owners b/moviepilot/owners new file mode 100644 index 00000000..c90f45c3 --- /dev/null +++ b/moviepilot/owners @@ -0,0 +1,4 @@ +owners: +- 'LittleLollipop' +- 'TShentu' +- 'pengpeng' diff --git a/moviepilot/templates/moviepilot.yaml b/moviepilot/templates/moviepilot.yaml new file mode 100644 index 00000000..34a369e9 --- /dev/null +++ b/moviepilot/templates/moviepilot.yaml @@ -0,0 +1,96 @@ +{{- $moviepilotDomainENV := split "," .Values.domain.moviepilot -}} +{{- $moviepilotDomain := index $moviepilotDomainENV "_0" -}} + +--- +apiVersion: v1 +kind: Service +metadata: + name: moviepilot + namespace: {{ .Release.Namespace }} +spec: + selector: + app: moviepilot + ports: + - protocol: TCP + port: 3000 + targetPort: 3000 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: moviepilot + namespace: {{ .Release.Namespace }} + labels: + app: moviepilot +spec: + replicas: 1 + selector: + matchLabels: + app: moviepilot + template: + metadata: + labels: + app: moviepilot + spec: + volumes: + - name: appcache + hostPath: + type: DirectoryOrCreate + path: {{ .Values.userspace.appCache}}/moviepilot + - name: moviepilot-config + hostPath: + type: DirectoryOrCreate + path: {{ .Values.userspace.appCache}}/moviepilot/config + - name: moviepilot-core + hostPath: + type: DirectoryOrCreate + path: {{ .Values.userspace.appCache}}/moviepilot/core + - name: home + hostPath: + type: Directory + path: {{ .Values.userspace.userData }}/ + initContainers: + - name: init-chmod-data + image: 'docker.io/aboveos/busybox:latest' + command: + - sh + - '-c' + - | + chown -R 1000:1000 /appcache + resources: {} + volumeMounts: + - name: appcache + mountPath: /appcache + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + imagePullPolicy: IfNotPresent + securityContext: + runAsUser: 0 + containers: + - name: moviepilot + image: jxxghp/moviepilot:1.9.17 + resources: + requests: + cpu: 300m + memory: 1Gi + limits: + cpu: 1000m + memory: 1.5Gi + ports: + - containerPort: 3000 + env: + - name: PGID + value: "1000" + - name: PUID + value: "1000" + + securityContext: + runAsUser: 0 + runAsNonRoot: false + volumeMounts: + - mountPath: /config + name: moviepilot-config + - mountPath: /moviepilot/.cache/ms-playwright + name: moviepilot-core + - mountPath: /home + name: home diff --git a/moviepilot/values.yaml b/moviepilot/values.yaml new file mode 100644 index 00000000..e69de29b From 9a106c9bf40951c562cae15d21cd211bd177c30c Mon Sep 17 00:00:00 2001 From: Sai Date: Thu, 2 Jan 2025 20:36:26 +0800 Subject: [PATCH 2/3] update image --- moviepilot/OlaresManifest.yaml | 31 ++++++++++++++++++++++++++++ moviepilot/templates/moviepilot.yaml | 2 +- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/moviepilot/OlaresManifest.yaml b/moviepilot/OlaresManifest.yaml index 8ebedf68..29dc22df 100644 --- a/moviepilot/OlaresManifest.yaml +++ b/moviepilot/OlaresManifest.yaml @@ -12,6 +12,37 @@ metadata: permission: appData: true appCache: true + userData: + - Home + sysData: + - dataType: legacy_qbittorrent + appName: qbittorrent + port: 8001 + group: apiv2.qbittorrent + version: v2 + ops: + - All + - dataType: legacy_deluge + appName: deluge + port: 8112 + group: api.deluge + version: v2 + ops: + - All + - dataType: legacy_nzbget + appName: nzbget + port: 6789 + group: api.nzbget + version: v2 + ops: + - All + - dataType: legacy_transmission + appName: transmission + port: 9091 + group: api.transmission + version: v2 + ops: + - All spec: versionName: '1.24.1' featuredImage: https://file.bttcdn.com/appstore/moviepilot/promote_image_1v2.webp diff --git a/moviepilot/templates/moviepilot.yaml b/moviepilot/templates/moviepilot.yaml index 34a369e9..1b3799c9 100644 --- a/moviepilot/templates/moviepilot.yaml +++ b/moviepilot/templates/moviepilot.yaml @@ -68,7 +68,7 @@ spec: runAsUser: 0 containers: - name: moviepilot - image: jxxghp/moviepilot:1.9.17 + image: aboveos/jxxghp-moviepilot:1.9.17 resources: requests: cpu: 300m From 55d312c751beb8a71059bd3a1700c232666d7014 Mon Sep 17 00:00:00 2001 From: RiddleMe <142984611+TShentu@users.noreply.github.com> Date: Fri, 3 Jan 2025 22:51:23 +0800 Subject: [PATCH 3/3] fix description --- moviepilot/Chart.yaml | 2 +- moviepilot/OlaresManifest.yaml | 80 +++++++---------------- moviepilot/i18n/en-US/OlaresManifest.yaml | 48 ++++---------- moviepilot/i18n/zh-CN/OlaresManifest.yaml | 48 ++++---------- 4 files changed, 49 insertions(+), 129 deletions(-) diff --git a/moviepilot/Chart.yaml b/moviepilot/Chart.yaml index e01de5d8..4c91f0c5 100644 --- a/moviepilot/Chart.yaml +++ b/moviepilot/Chart.yaml @@ -21,4 +21,4 @@ version: '1.0.3' # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: "1.24.1" +appVersion: "2.1.7" diff --git a/moviepilot/OlaresManifest.yaml b/moviepilot/OlaresManifest.yaml index 29dc22df..0dba047a 100644 --- a/moviepilot/OlaresManifest.yaml +++ b/moviepilot/OlaresManifest.yaml @@ -2,11 +2,11 @@ olaresManifest.version: '0.8.1' olaresManifest.type: app metadata: name: moviepilot - description: moviepilot is an extendable workflow automation tool. - icon: https://file.bttcdn.com/appstore/moviepilot/icon.png + description: NAS Media Library Automation Management Tool + icon: https://file.bttcdn.com/appstore/moviepilot/logo.png appid: moviepilot version: '1.0.3' - title: moviepilot + title: MoviePilot categories: - Productivity permission: @@ -44,72 +44,40 @@ permission: ops: - All spec: - versionName: '1.24.1' - featuredImage: https://file.bttcdn.com/appstore/moviepilot/promote_image_1v2.webp - promoteImage: - - https://file.bttcdn.com/appstore/moviepilot/promote_image_1v2.webp - - https://file.bttcdn.com/appstore/moviepilot/promote_image_2v2.webp - - https://file.bttcdn.com/appstore/moviepilot/promote_image_3v2.webp - - https://file.bttcdn.com/appstore/moviepilot/promote_image_4v2.webp + versionName: '2.1.7' + featuredImage: https://file.bttcdn.com/appstore/moviepilot/featured_image.jpg fullDescription: | - moviepilot is an extendable workflow automation tool. With a fair-code distribution model, moviepilot will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. moviepilot's node-based approach makes it highly versatile, enabling you to connect anything to everything. + MoviePilot has been redesigned based on NAS-tool code to focus on the core needs of automation, reducing problems while being easier to extend and maintain. + Note: to use this application, you need to pass a user authentication in one of the supported PT site. - # Available integrations - moviepilot has 200+ different nodes to automate workflows. The list can be found on: - https://moviepilot.io/integrations - - # Build powerful workflows, really fast - Handle really complex processes - Simple debugging - Use templates to get started fast - Code when you need it, UI when you don''t - Reuse your work - - # Get peace of mind - Connect to any system - Customize error handling - Horizontal scaling - Host on your own infrastructure - - # Features - Visual workflow editor - Run JavaScript - npm package import - Workflows can wait - Conditional logic and branching - Webhook triggers - Retry failed executions - Multi-trigger workflows - Source code available - User management - Create custom nodes - Encrypted credential store - Copy + paste workflows - Export workflows to JSON - Custom error workflows + Key Features + Front-end and back-end separation, based on FastApi + Vue3 + Focus on the core requirements, simplify the functions and settings, some settings can directly use the default values. + Redesigned user interface, more beautiful and easy to use. upgradeDescription: | - Reduce required CPU. - developer: moviepilot - website: https://moviepilot.io/ - sourceCode: https://github.com/moviepilot-io/moviepilot + Fixed the issue of catalog monitoring. + Fixed the problem of messy code in individual sites + Optimized the UI details of the plugin + Added several new authentication sites + + developer: MoviePilot + website: https://wiki.movie-pilot.org/ + sourceCode: https://github.com/jxxghp/MoviePilot submitter: Olares locale: - en-US - zh-CN - doc: https://docs.moviepilot.io/?_gl=1*1s8nde9*_ga*MTAyODQxOTEuMTY5NzQyODM3MA..*_ga_0SC4FF2FH9*MTY5NzQyODM3MC4xLjAuMTY5NzQyODM3MC42MC4wLjA. + doc: https://wiki.movie-pilot.org/ requiredMemory: 1Gi limitedMemory: 1.5Gi requiredDisk: 128Mi limitedDisk: 256Mi requiredCpu: 0.3 limitedCpu: 1 - legal: - - text: moviepilot Legal - url: https://moviepilot.io/legal/ license: - - text: Unknown - url: https://github.com/moviepilot-io/moviepilot/blob/master/LICENSE.md + - text: GPL-3.0 + url: https://github.com/jxxghp/MoviePilot?tab=GPL-3.0-1-ov-file#readme supportArch: - amd64 - arm64 @@ -123,7 +91,7 @@ entrances: - name: moviepilot port: 3000 host: moviepilot - title: moviepilot - icon: https://file.bttcdn.com/appstore/moviepilot/icon.png + title: MoviePilot + icon: https://file.bttcdn.com/appstore/moviepilot/logo.png authLevel: private openMethod: window diff --git a/moviepilot/i18n/en-US/OlaresManifest.yaml b/moviepilot/i18n/en-US/OlaresManifest.yaml index 3cf739c4..617483ea 100644 --- a/moviepilot/i18n/en-US/OlaresManifest.yaml +++ b/moviepilot/i18n/en-US/OlaresManifest.yaml @@ -1,42 +1,18 @@ metadata: - title: moviepilot - description: moviepilot is an extendable workflow automation tool. + title: MoviePilot + description: NAS Media Library Automation Management Tool spec: fullDescription: | - moviepilot is an extendable workflow automation tool. With a fair-code distribution model, moviepilot will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. moviepilot's node-based approach makes it highly versatile, enabling you to connect anything to everything. + MoviePilot has been redesigned based on NAS-tool code to focus on the core needs of automation, reducing problems while being easier to extend and maintain. + Note: to use this application, you need to pass a user authentication in one of the supported PT site. - # Available integrations - moviepilot has 200+ different nodes to automate workflows. The list can be found on: - https://moviepilot.io/integrations + Key Features + Front-end and back-end separation, based on FastApi + Vue3 + Focus on the core requirements, simplify the functions and settings, some settings can directly use the default values. + Redesigned user interface, more beautiful and easy to use. - # Build powerful workflows, really fast - Handle really complex processes - Simple debugging - Use templates to get started fast - Code when you need it, UI when you don''t - Reuse your work - - # Get peace of mind - Connect to any system - Customize error handling - Horizontal scaling - Host on your own infrastructure - - # Features - Visual workflow editor - Run JavaScript - npm package import - Workflows can wait - Conditional logic and branching - Webhook triggers - Retry failed executions - Multi-trigger workflows - Source code available - User management - Create custom nodes - Encrypted credential store - Copy + paste workflows - Export workflows to JSON - Custom error workflows upgradeDescription: | - Reduce required CPU. + Fixed the issue of catalog monitoring. + Fixed the problem of messy code in individual sites + Optimized the UI details of the plugin + Added several new authentication sites \ No newline at end of file diff --git a/moviepilot/i18n/zh-CN/OlaresManifest.yaml b/moviepilot/i18n/zh-CN/OlaresManifest.yaml index 6301dd44..e1256eba 100644 --- a/moviepilot/i18n/zh-CN/OlaresManifest.yaml +++ b/moviepilot/i18n/zh-CN/OlaresManifest.yaml @@ -1,43 +1,19 @@ metadata: - description: moviepilot 是一款可扩展的工作流自动化工具。 - title: moviepilot + title: MoviePilot + description: NAS媒体库自动化管理工具 spec: fullDescription: | - moviepilot 是一款可扩展的工作流自动化工具。moviepilot 采用开放源码,支持自托管,您还可以添加自定义功能和应用。moviepilot 的节点式架构让它具备高度的灵活性,能连接任何东西到一切。 + MoviePilot 基于 NAStool 部分代码重新设计,聚焦自动化核心需求,减少问题同时更易于扩展和维护。 + 注意:使用本软件需要先在支持的PT站点进行用户认证。 - # Available integrations - moviepilot 提供超过 200 种不同节点用于自动化工作流。更多信息请见: - https://moviepilot.io/integrations - # Build powerful workflows, really fast - 处理复杂流程 - 简化调试 - 使用模板快速启动 - 需要编程时编码,不需要时用 UI - 复用成果 - - # Get peace of mind - 接入任何系统 - 自定义错误处理 - 横向扩展 - 在自有基础设施上部署 - - # Features - 可视化工作流编辑器 - 执行 JavaScript - 引入 npm 包 - 工作流可暂停 - 条件逻辑与分支 - Webhook 触发 - 重试失败任务 - 多触发器工作流 - 开放源代码 - 用户管理 - 制作自定义节点 - 加密的凭证存储 - 复制粘贴工作流 - 工作流导出为 JSON - 定制错误处理流程 + 主要特性 + 前后端分离,基于FastApi + Vue3 + 聚焦核心需求,简化功能和设置,部分设置项可直接使用默认值。 + 重新设计了用户界面,更加美观易用。 upgradeDescription: | - 降低 CPU 占用 + 修复了目录监控的问题 + 修复了个别站点乱码的问题 + 优化了插件的UI细节 + 新增了多个认证站点