mirror of
https://github.com/mudler/LocalAI.git
synced 2026-11-05 03:53:11 -05:00
Add the add-on runtime to LocalAI: manifests, the host operation broker, admin gating by account role, the add-on UI bundle builder and the SDK for add-on pages. Move the navigation to Chat, Models, Add-ons and Settings, with pinned add-ons in the sidebar and an Add-ons drawer. Ship the first-party add-ons (voice, face, fine-tuning, quantization) as packages for linux/amd64, linux/arm64 and darwin/arm64. Intel macOS (darwin/amd64) is enabled in the platform files. Squashed from the review branch. The tree is unchanged; the pre-squash history is kept on a local backup branch. Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
25 lines
975 B
Go
25 lines
975 B
Go
//go:build !linux
|
|
|
|
// SPDX-License-Identifier: MIT
|
|
package application
|
|
|
|
import (
|
|
"context"
|
|
"path/filepath"
|
|
|
|
"github.com/mudler/LocalAI/core/config"
|
|
addonruntime "github.com/mudler/LocalAI/core/services/addons/runtime"
|
|
"github.com/mudler/LocalAI/pkg/addons/contract"
|
|
. "github.com/onsi/ginkgo/v2"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
var _ = Describe("addon owner where the runtime is unavailable", func() {
|
|
It("fails closed instead of starting an owner without a process ledger", func() {
|
|
owner := config.AddonConfig{Enabled: true, InstanceID: "owner", OwnerID: "owner", OwnerAddress: "https://owner.example", StorageID: "local", Root: filepath.Join(realTempDir(), "addons"), AdminCheck: func(context.Context, contract.Actor) error { return nil }}
|
|
a := &Application{applicationConfig: &config.ApplicationConfig{Context: context.Background(), Addons: owner}}
|
|
Expect(a.startAddons()).To(MatchError(addonruntime.ErrRuntime))
|
|
Expect(a.AddonManager()).To(BeNil())
|
|
})
|
|
})
|