1
1
package variablesources
2
2
3
3
import (
4
- "context"
5
4
"fmt"
6
5
"sort"
7
6
8
7
"github.com/operator-framework/deppy/pkg/deppy"
9
- "github.com/operator-framework/deppy/pkg/deppy/input"
10
8
"k8s.io/apimachinery/pkg/util/sets"
11
9
12
10
"github.com/operator-framework/operator-controller/internal/catalogmetadata"
@@ -15,53 +13,6 @@ import (
15
13
olmvariables "github.com/operator-framework/operator-controller/internal/resolution/variables"
16
14
)
17
15
18
- var _ input.VariableSource = & BundlesAndDepsVariableSource {}
19
-
20
- type BundlesAndDepsVariableSource struct {
21
- allBundles []* catalogmetadata.Bundle
22
- variableSources []input.VariableSource
23
- }
24
-
25
- func NewBundlesAndDepsVariableSource (allBundles []* catalogmetadata.Bundle , inputVariableSources ... input.VariableSource ) * BundlesAndDepsVariableSource {
26
- return & BundlesAndDepsVariableSource {
27
- allBundles : allBundles ,
28
- variableSources : inputVariableSources ,
29
- }
30
- }
31
-
32
- func (b * BundlesAndDepsVariableSource ) GetVariables (ctx context.Context ) ([]deppy.Variable , error ) {
33
- variables := []deppy.Variable {}
34
-
35
- for _ , variableSource := range b .variableSources {
36
- inputVariables , err := variableSource .GetVariables (ctx )
37
- if err != nil {
38
- return nil , err
39
- }
40
- variables = append (variables , inputVariables ... )
41
- }
42
-
43
- requiredPackages := []* olmvariables.RequiredPackageVariable {}
44
- installedPackages := []* olmvariables.InstalledPackageVariable {}
45
- for _ , variable := range variables {
46
- switch v := variable .(type ) {
47
- case * olmvariables.RequiredPackageVariable :
48
- requiredPackages = append (requiredPackages , v )
49
- case * olmvariables.InstalledPackageVariable :
50
- installedPackages = append (installedPackages , v )
51
- }
52
- }
53
-
54
- bundles , err := MakeBundleVariables (b .allBundles , requiredPackages , installedPackages )
55
- if err != nil {
56
- return nil , err
57
- }
58
-
59
- for _ , v := range bundles {
60
- variables = append (variables , v )
61
- }
62
- return variables , nil
63
- }
64
-
65
16
func MakeBundleVariables (
66
17
allBundles []* catalogmetadata.Bundle ,
67
18
requiredPackages []* olmvariables.RequiredPackageVariable ,
0 commit comments