Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 43 additions & 3 deletions cmd/family-migrator/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,14 @@ import (
"github.com/AlecAivazis/survey/v2"
"github.com/alecthomas/kong"
"github.com/crossplane/crossplane-runtime/pkg/logging"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/upjet/pkg/migration"
"gopkg.in/yaml.v3"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"sigs.k8s.io/controller-runtime/pkg/log/zap"

"github.com/upbound/extensions-migration/converters/common"
"github.com/upbound/extensions-migration/pkg/converter/configuration"
)

Expand Down Expand Up @@ -76,7 +77,9 @@ type Options struct {
} `kong:"cmd"`

Managed struct {
resourcePath string
resourcePath string
SkipGVKs string `name:"skip-gvks" help:"Path of the file containing the GVKs to skip." survey:"skip-gvks"`
ProviderConfig string `name:"set-provider-config" help:"Used to set a ProviderConfig Reference to all Managed Resources. The string specified for this flag is added as a ProviderConfig Reference to all MRs to be converted." survey:"set-provider-config"`
} `kong:"cmd"`

RegistryOrg string `name:"regorg" help:"<registry host>/<organization> for the provider family packages."`
Expand Down Expand Up @@ -124,6 +127,11 @@ func main() {
func generatePlan(kongCtx *kong.Context, opts *Options, planDir string, mode string) {
r := migration.NewRegistry(runtime.NewScheme())

if opts.Generate.Managed.ProviderConfig != "" {
pc := common.NewProviderConfigPreProcessor(opts.Generate.Managed.ProviderConfig)
r.RegisterResourcePreProcessor(migration.ResourcePreProcessor(pc.SetProviderConfig))
}

switch mode {
case configurationMode:
if err := registerConfigurationPackageConverters(opts, r); err != nil {
Expand All @@ -146,9 +154,17 @@ func generatePlan(kongCtx *kong.Context, opts *Options, planDir string, mode str
kongCtx.FatalIfErrorf(err, "Failed to initialize sources")
}

var skipGVKs []schema.GroupVersionKind
if opts.Generate.Managed.SkipGVKs != "" {
skipGVKs, err = readSkipFile(opts.Generate.Managed.SkipGVKs)
if err != nil {
kongCtx.FatalIfErrorf(err, "Failed to read the skip GVK file")
}
}

pgOpts := []migration.PlanGeneratorOption{
migration.WithMultipleSources(sources...),
migration.WithSkipGVKs(schema.GroupVersionKind{}),
migration.WithSkipGVKs(skipGVKs...),
migration.WithEnableConfigurationMigrationSteps(),
}

Expand Down Expand Up @@ -608,3 +624,27 @@ func (cb *executionCallback) StepFailed(s migration.Step, index int, diagnostics
}

}

func readSkipFile(path string) ([]schema.GroupVersionKind, error) {
buff, err := os.ReadFile(path)
if err != nil {
return nil, err
}

var skipGVKs []schema.GroupVersionKind
var skipGVKMapSlice []map[string]string

if err := yaml.Unmarshal(buff, &skipGVKMapSlice); err != nil {
return nil, err
}

for _, skipGVK := range skipGVKMapSlice {
skipGVKs = append(skipGVKs, schema.GroupVersionKind{
Group: skipGVK["group"],
Version: skipGVK["version"],
Kind: skipGVK["kind"],
})
}

return skipGVKs, nil
}
2 changes: 1 addition & 1 deletion cmd/provider-list/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ import (
"sort"

"github.com/alecthomas/kong"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/upjet/pkg/migration"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"

Expand Down
2 changes: 1 addition & 1 deletion converters/common/common.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ import (
xpv1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
v1 "github.com/crossplane/crossplane/apis/apiextensions/v1"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/upjet/pkg/migration"
"k8s.io/apimachinery/pkg/runtime"
)

Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/extensions-migration/converters/common"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func APIResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/apimapping.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func APIMappingResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/deployment.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func DeploymentResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/domain_name.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func DomainNameResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
3 changes: 2 additions & 1 deletion converters/provider-aws/apigatewayv2/integration.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,13 @@ package apigatewayv2

import (
"fmt"

srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/extensions-migration/converters/common"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func IntegrationResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/route.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func RouteResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/stage.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ package apigatewayv2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/extensions-migration/converters/common"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func StageResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/apigatewayv2/vpclink.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1alpha1"
srcv1beta1 "github.com/crossplane-contrib/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/apigatewayv2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func VPCLinkV1Beta1Resource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/cloudfront/distribution.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package cloudfront
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/cloudfront/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/cloudfront/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func DistributionResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ package cloudfront
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/cloudfront/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/extensions-migration/converters/common"
targetv1beta1 "github.com/upbound/provider-aws/apis/cloudfront/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func ResponseHeadersPolicyResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/cloudwatchlogs/logGroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package cloudwatchlogs
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/cloudwatchlogs/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/cloudwatchlogs/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func LogGroupResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/common/common.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (

"github.com/crossplane/crossplane-runtime/pkg/fieldpath"
xpv1 "github.com/crossplane/crossplane/apis/apiextensions/v1"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
"github.com/upbound/upjet/pkg/migration"
)

// DefaultPatchSetsConverter is a default patchset converter for the community provider-aws
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/docdb/dbcluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package docdb
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/docdb/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/docdb/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func ClusterResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/docdb/dbclusterparametergroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package docdb
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/docdb/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/docdb/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func ClusterParameterGroupResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/docdb/dbinstance.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package docdb
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/docdb/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/docdb/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func InstanceResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/docdb/dbsubnetgroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package docdb
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/docdb/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/docdb/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func SubnetGroupResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/dynamodb/dynamodb.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package dynamodb
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/dynamodb/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/dynamodb/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func TableResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/flowlog.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func FlowLogResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/natgateway.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1beta1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func NATGatewayResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/routetable.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1"
runtimev1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func RouteTableResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/securitygroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ import (
runtimev1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
v1 "github.com/crossplane/crossplane/apis/apiextensions/v1"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"

"github.com/upbound/extensions-migration/converters/common"
providerawscommon "github.com/upbound/extensions-migration/converters/provider-aws/common"
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/subnet.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1beta1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func SubnetResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1alpha1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func TransitGatewayVPCAttachmentResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/vpc.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1beta1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func VPCResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/vpccidrblock.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ package ec2
import (
srcv1beta1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1beta1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func VPCCidrBlockResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
2 changes: 1 addition & 1 deletion converters/provider-aws/ec2/vpcendpoint.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ import (
srcv1alpha1 "github.com/crossplane-contrib/provider-aws/apis/ec2/v1alpha1"
runtimev1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
"github.com/crossplane/crossplane-runtime/pkg/resource"
"github.com/crossplane/upjet/pkg/migration"
"github.com/pkg/errors"
targetv1beta1 "github.com/upbound/provider-aws/apis/ec2/v1beta1"
"github.com/upbound/upjet/pkg/migration"
)

func VPCEndpointResource(mg resource.Managed) ([]resource.Managed, error) {
Expand Down
Loading