mirror of
https://github.com/mudler/LocalAI.git
synced 2026-04-17 05:18:53 -04:00
Add Version, URI, and Digest fields to BackendMetadata for tracking installed backend versions and enabling upgrade detection. Add Version field to GalleryBackend. Add UpgradeAvailable/AvailableVersion fields to SystemBackend. Implement GetImageDigest() for lightweight OCI digest lookups via remote.Head. Record version, URI, and digest at install time in InstallBackend() and propagate version through meta backends.
47 lines
1.1 KiB
Go
47 lines
1.1 KiB
Go
package oci_test
|
|
|
|
import (
|
|
"context"
|
|
"os"
|
|
"runtime"
|
|
|
|
"github.com/mudler/LocalAI/pkg/oci"
|
|
. "github.com/mudler/LocalAI/pkg/oci" // Update with your module path
|
|
. "github.com/onsi/ginkgo/v2"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
var _ = Describe("OCI", func() {
|
|
|
|
Context("when template is loaded successfully", func() {
|
|
It("should evaluate the template correctly", func() {
|
|
if runtime.GOOS == "darwin" {
|
|
Skip("Skipping test on darwin")
|
|
}
|
|
imageName := "alpine"
|
|
img, err := GetImage(imageName, "", nil, nil)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
size, err := GetOCIImageSize(imageName, "", nil, nil)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
|
|
Expect(size).ToNot(Equal(int64(0)))
|
|
|
|
// Create tempdir
|
|
dir, err := os.MkdirTemp("", "example")
|
|
Expect(err).NotTo(HaveOccurred())
|
|
defer os.RemoveAll(dir)
|
|
|
|
err = ExtractOCIImage(context.TODO(), img, imageName, dir, nil)
|
|
Expect(err).NotTo(HaveOccurred())
|
|
})
|
|
})
|
|
})
|
|
|
|
var _ = Describe("GetImageDigest", func() {
|
|
It("returns an error for an invalid image reference", func() {
|
|
_, err := oci.GetImageDigest("!!!invalid-ref!!!", "", nil, nil)
|
|
Expect(err).To(HaveOccurred())
|
|
})
|
|
})
|