Skip to content

Commit

Permalink
feat: migrate OdigosConfig CR to ConfigMap when upgrading
Browse files Browse the repository at this point in the history
  • Loading branch information
rauno56 committed Aug 12, 2024
1 parent b71d947 commit bbe4161
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 4 deletions.
25 changes: 25 additions & 0 deletions api/odigos/v1alpha1/odigosconfig_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,28 @@ type OdigosConfigurationList struct {
func init() {
SchemeBuilder.Register(&OdigosConfiguration{}, &OdigosConfigurationList{})
}

func (odigosConfig *OdigosConfiguration) ToCommonConfig() *common.OdigosConfiguration {
return &common.OdigosConfiguration{
OdigosVersion: odigosConfig.Spec.OdigosVersion,
ConfigVersion: odigosConfig.Spec.ConfigVersion,
TelemetryEnabled: odigosConfig.Spec.TelemetryEnabled,
OpenshiftEnabled: odigosConfig.Spec.OpenshiftEnabled,
IgnoredNamespaces: odigosConfig.Spec.IgnoredNamespaces,
IgnoredContainers: odigosConfig.Spec.IgnoredContainers,
Psp: odigosConfig.Spec.Psp,
ImagePrefix: odigosConfig.Spec.ImagePrefix,
OdigletImage: odigosConfig.Spec.OdigletImage,
InstrumentorImage: odigosConfig.Spec.InstrumentorImage,
AutoscalerImage: odigosConfig.Spec.AutoscalerImage,
SupportedSDKs: odigosConfig.Spec.SupportedSDKs,
DefaultSDKs: odigosConfig.Spec.DefaultSDKs,
CollectorGateway: &common.CollectorGatewayConfiguration{
RequestMemoryMiB: odigosConfig.Spec.CollectorGateway.RequestMemoryMiB,
MemoryLimiterLimitMiB: odigosConfig.Spec.CollectorGateway.MemoryLimiterLimitMiB,
MemoryLimiterSpikeLimitMiB: odigosConfig.Spec.CollectorGateway.MemoryLimiterSpikeLimitMiB,
GoMemLimitMib: odigosConfig.Spec.CollectorGateway.GoMemLimitMib,
},
GoAutoIncludeCodeAttributes: odigosConfig.Spec.GoAutoIncludeCodeAttributes,
}
}
1 change: 0 additions & 1 deletion autoscaler/controllers/odigosconfig_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ type OdigosConfigReconciler struct {
}

func (r *OdigosConfigReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {

logger := log.FromContext(ctx)
logger.V(0).Info("Reconciling Odigos Configuration")

Expand Down
6 changes: 6 additions & 0 deletions cli/cmd/resources/applyresources.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"fmt"
"os"

"github.com/odigos-io/odigos/api/odigos/v1alpha1"
"github.com/odigos-io/odigos/cli/cmd/resources/resourcemanager"
"github.com/odigos-io/odigos/cli/pkg/kube"
"github.com/odigos-io/odigos/cli/pkg/log"
Expand Down Expand Up @@ -53,3 +54,8 @@ func GetCurrentConfig(ctx context.Context, client *kube.Client, ns string) (*com
}
return &odigosConfig, nil
}

func GetCurrentOdigosConfig(ctx context.Context, client *kube.Client, ns string) (*v1alpha1.OdigosConfiguration, error) {
return client.OdigosClient.OdigosConfigurations(ns).Get(ctx, consts.OdigosConfigurationName, metav1.GetOptions{})
}

1 change: 0 additions & 1 deletion cli/cmd/resources/odigosconfig.go
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,6 @@ func NewOdigosConfigResourceManager(client *kube.Client, ns string, config *comm
func (a *odigosConfigResourceManager) Name() string { return "OdigosConfig" }

func (a *odigosConfigResourceManager) InstallFromScratch(ctx context.Context) error {

var defaultOtelSdkPerLanguage map[common.ProgrammingLanguage]common.OtelSdk
var supportedOtelSdksPerLanguage map[common.ProgrammingLanguage][]common.OtelSdk
switch a.odigosTier {
Expand Down
9 changes: 7 additions & 2 deletions cli/cmd/upgrade.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import (
"github.com/odigos-io/odigos/cli/cmd/resources/odigospro"
"github.com/odigos-io/odigos/cli/pkg/confirm"
"github.com/odigos-io/odigos/cli/pkg/kube"
"github.com/odigos-io/odigos/common"
"github.com/odigos-io/odigos/common/consts"
"github.com/odigos-io/odigos/common/utils"
"github.com/spf13/cobra"
Expand Down Expand Up @@ -92,8 +93,12 @@ and apply any required migrations and adaptations.`,

config, err := resources.GetCurrentConfig(ctx, client, ns)
if err != nil {
fmt.Println("Odigos upgrade failed - unable to read the current Odigos configuration.")
os.Exit(1)
odigosConfig, err := resources.GetCurrentOdigosConfig(ctx, client, ns)
if err != nil {
fmt.Println("Odigos upgrade failed - unable to read the current Odigos configuration.")
os.Exit(1)
}
config = odigosConfig.ToCommonConfig()
}

// update the config on upgrade
Expand Down

0 comments on commit bbe4161

Please sign in to comment.