Files
Olares/cli/pkg/pipelines/storage.go
Eliott van Nuffel df38148149
Some checks failed
Native Verification / Build Docs (pull_request) Successful in 1m12s
Native Verification / Build App-Service Native (pull_request) Successful in 1m27s
Native Verification / Build Daemon Native (pull_request) Successful in 42s
Lint and Test Charts / lint-test (pull_request_target) Failing after 19s
Lint and Test Charts / test-version (pull_request_target) Successful in 0s
Lint and Test Charts / push-image (pull_request_target) Failing after 15s
Lint and Test Charts / upload-cli (pull_request_target) Failing after 1m15s
Lint and Test Charts / upload-daemon (pull_request_target) Failing after 1m12s
Lint and Test Charts / push-deps (pull_request_target) Has been skipped
Lint and Test Charts / push-deps-arm64 (pull_request_target) Has been skipped
Lint and Test Charts / push-image-arm64 (pull_request_target) Has been cancelled
Lint and Test Charts / upload-package (pull_request_target) Has been cancelled
Lint and Test Charts / install-test (pull_request_target) Has been cancelled
continue beOS rebrand and add native verification
2026-03-10 13:48:45 +01:00

53 lines
1.6 KiB
Go

package pipelines
import (
"fmt"
"path"
"github.com/beclab/beos/cli/pkg/common"
"github.com/beclab/beos/cli/pkg/phase"
"github.com/beclab/beos/cli/pkg/phase/system"
"github.com/pkg/errors"
"github.com/spf13/viper"
)
func CliInstallStoragePipeline() error {
var terminusVersion, _ = phase.GetBeOSVersion()
if terminusVersion != "" {
return errors.New("beOS Pro is already installed, please uninstall it first.")
}
arg := common.NewArgument()
arg.SetBeOSVersion(viper.GetString(common.FlagVersion))
arg.SetStorage(getStorageConfig())
runtime, err := common.NewKubeRuntime(*arg)
if err != nil {
return fmt.Errorf("error creating runtime: %v", err)
}
manifest := path.Join(runtime.GetInstallerDir(), "installation.manifest")
runtime.Arg.SetManifest(manifest)
return system.InstallStoragePipeline(runtime).Start()
}
func getStorageConfig() *common.Storage {
storageType := viper.GetString(common.FlagStorageType)
if storageType == "" {
storageType = common.ManagedMinIO
}
return &common.Storage{
StorageType: storageType,
StorageBucket: viper.GetString(common.FlagS3Bucket),
StoragePrefix: viper.GetString(common.FlagBackupKeyPrefix),
StorageAccessKey: viper.GetString(common.FlagAWSAccessKeyIDSetup),
StorageSecretKey: viper.GetString(common.FlagAWSSecretAccessKeySetup),
StorageToken: viper.GetString(common.FlagAWSSessionTokenSetup),
StorageClusterId: viper.GetString(common.FlagClusterID),
StorageSyncSecret: viper.GetString(common.FlagBackupSecret),
StorageVendor: viper.GetString(common.FlagIsCloudVersion),
BackupClusterBucket: viper.GetString(common.FlagBackupClusterBucket),
}
}