Blame internal/distro/fedoratest/distro.go

Packit 63bb0d
package fedoratest
Packit 63bb0d
Packit 63bb0d
import (
Packit 63bb0d
	"encoding/json"
Packit 63bb0d
	"errors"
Packit 63bb0d
Packit 63bb0d
	"github.com/osbuild/osbuild-composer/internal/blueprint"
Packit 63bb0d
	"github.com/osbuild/osbuild-composer/internal/distro"
Packit Service 15f37d
	osbuild "github.com/osbuild/osbuild-composer/internal/osbuild1"
Packit 63bb0d
	"github.com/osbuild/osbuild-composer/internal/rpmmd"
Packit 63bb0d
)
Packit 63bb0d
Packit 63bb0d
const name = "fedora-30"
Packit 63bb0d
const modulePlatformID = "platform:f30"
Packit 63bb0d
Packit 63bb0d
type FedoraTestDistro struct{}
Packit 63bb0d
Packit 63bb0d
type arch struct {
Packit 63bb0d
	name   string
Packit 63bb0d
	distro *FedoraTestDistro
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
type imageType struct {
Packit 63bb0d
	name string
Packit 63bb0d
	arch *arch
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (a *arch) Distro() distro.Distro {
Packit 63bb0d
	return a.distro
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) Arch() distro.Arch {
Packit 63bb0d
	return t.arch
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (d *FedoraTestDistro) ListArches() []string {
Packit 63bb0d
	return []string{"x86_64"}
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (d *FedoraTestDistro) GetArch(name string) (distro.Arch, error) {
Packit 63bb0d
	if name != "x86_64" {
Packit 63bb0d
		return nil, errors.New("invalid architecture: " + name)
Packit 63bb0d
	}
Packit 63bb0d
Packit 63bb0d
	return &arch{
Packit 63bb0d
		name:   name,
Packit 63bb0d
		distro: d,
Packit 63bb0d
	}, nil
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (a *arch) Name() string {
Packit 63bb0d
	return a.name
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (a *arch) ListImageTypes() []string {
Packit 63bb0d
	return []string{"qcow2"}
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (a *arch) GetImageType(name string) (distro.ImageType, error) {
Packit 63bb0d
	if name != "qcow2" {
Packit 63bb0d
		return nil, errors.New("invalid image type: " + name)
Packit 63bb0d
	}
Packit 63bb0d
Packit 63bb0d
	return &imageType{
Packit 63bb0d
		name: name,
Packit 63bb0d
		arch: a,
Packit 63bb0d
	}, nil
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) Name() string {
Packit 63bb0d
	return t.name
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) Filename() string {
Packit 63bb0d
	return "test.img"
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) MIMEType() string {
Packit 63bb0d
	return "application/x-test"
Packit 63bb0d
}
Packit 63bb0d
Packit Service bcdfb1
func (t *imageType) OSTreeRef() string {
Packit Service bcdfb1
	return ""
Packit Service bcdfb1
}
Packit Service bcdfb1
Packit 63bb0d
func (t *imageType) Size(size uint64) uint64 {
Packit 63bb0d
	return size
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) Packages(bp blueprint.Blueprint) ([]string, []string) {
Packit 63bb0d
	return nil, nil
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (t *imageType) BuildPackages() []string {
Packit 63bb0d
	return nil
Packit 63bb0d
}
Packit 63bb0d
Packit Service 15f37d
func (t *imageType) PackageSets(bp blueprint.Blueprint) map[string]rpmmd.PackageSet {
Packit Service 15f37d
	return nil
Packit Service 15f37d
}
Packit Service 15f37d
Packit Service 15f37d
func (t *imageType) Exports() []string {
Packit Service 15f37d
	return []string{"assembler"}
Packit Service 15f37d
}
Packit Service 15f37d
Packit 63bb0d
func (t *imageType) Manifest(c *blueprint.Customizations,
Packit 63bb0d
	options distro.ImageOptions,
Packit 63bb0d
	repos []rpmmd.RepoConfig,
Packit Service 15f37d
	packageSpecSets map[string][]rpmmd.PackageSpec,
Packit Service 509fd4
	seed int64) (distro.Manifest, error) {
Packit 63bb0d
Packit 63bb0d
	return json.Marshal(
Packit 63bb0d
		osbuild.Manifest{
Packit 63bb0d
			Sources:  osbuild.Sources{},
Packit 63bb0d
			Pipeline: osbuild.Pipeline{},
Packit 63bb0d
		},
Packit 63bb0d
	)
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func New() *FedoraTestDistro {
Packit 63bb0d
	return &FedoraTestDistro{}
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (d *FedoraTestDistro) Name() string {
Packit 63bb0d
	return name
Packit 63bb0d
}
Packit 63bb0d
Packit 63bb0d
func (d *FedoraTestDistro) ModulePlatformID() string {
Packit 63bb0d
	return modulePlatformID
Packit 63bb0d
}