create

package
v1.0.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 23, 2024 License: Apache-2.0 Imports: 8 Imported by: 1

Documentation

Index

Constants

View Source
const (
	DatabaseAddress           = "address"
	DatabaseAddressShorthand  = "a"
	DatabaseUsername          = "username"
	DatabaseUsernameShorthand = "u"
	DatabasePassword          = "password"
	DatabasePasswordShorthand = "p"
	DatabaseType              = "type"
	DatabaseTypeShorthand     = "t"
)
View Source
const (
	NameKey       = "name"
	NameShorthand = "n"
)
View Source
const (
	EnvironmentIDKey         = "env-id"
	IntegrationNameKey       = "name"
	IntegrationNameShorthand = "n"
)

Variables

View Source
var CreateDatabaseIntegrationCmd = &cobra.Command{
	Use:          "database",
	Short:        "Create a database integration",
	Args:         cobra.NoArgs,
	SilenceUsage: true,
	RunE: func(_ *cobra.Command, args []string) error {
		ctxTimeout, cancel := context.WithTimeout(context.Background(), config.DefaultTimeout)
		defer cancel()

		c, err := cloudclient.NewClient(ctxTimeout)
		if err != nil {
			return err
		}

		r, err := c.CreateDatabaseIntegrationMutationWithResponse(ctxTimeout,
			cloudapi.CreateDatabaseIntegrationMutationJSONRequestBody{
				Name: viper.GetString(NameKey),
				DatabaseInfo: cloudapi.DatabaseInfoInput{
					Address: viper.GetString(DatabaseAddress),
					Credentials: map[string]interface{}{
						"username": viper.GetString(DatabaseUsername),
						"password": viper.GetString(DatabasePassword),
					},
					DatabaseType: cloudapi.DatabaseInfoInputDatabaseType(viper.GetString(DatabaseType)),
				},
			})
		if err != nil {
			return err
		}

		output.FormatIntegrations([]cloudapi.Integration{lo.FromPtr(r.JSON200)}, true)
		return nil
	},
}
View Source
var CreateGenericIntegrationCmd = &cobra.Command{
	Use:          "generic",
	Short:        "Create a generic integration",
	Args:         cobra.NoArgs,
	SilenceUsage: true,
	RunE: func(_ *cobra.Command, args []string) error {
		ctxTimeout, cancel := context.WithTimeout(context.Background(), config.DefaultTimeout)
		defer cancel()

		c, err := cloudclient.NewClient(ctxTimeout)
		if err != nil {
			return err
		}

		r, err := c.CreateGenericIntegrationMutationWithResponse(ctxTimeout,
			cloudapi.CreateGenericIntegrationMutationJSONRequestBody{
				Name: viper.GetString(NameKey),
			})
		if err != nil {
			return err
		}

		output.FormatIntegrations([]cloudapi.Integration{lo.FromPtr(r.JSON200)}, true)
		return nil
	},
}
View Source
var CreateGithubIntegrationCmd = &cobra.Command{
	Use:          "github",
	Short:        "Create a GitHub integration",
	Args:         cobra.NoArgs,
	SilenceUsage: true,
	RunE: func(_ *cobra.Command, args []string) error {
		output.PrintStdout("To create a GitHub integration, you need to authorize Otterize Cloud on your GitHub account. To do that, use Otterize Cloud at https://app.otterize.com/integrations")
		return nil
	},
}
View Source
var CreateIntegrationCmd = &cobra.Command{
	Use:   "create",
	Short: "Create an integration",
}
View Source
var CreateKubernetesIntegrationCmd = &cobra.Command{
	Use:          "kubernetes",
	Short:        "Create a Kubernetes integration",
	Args:         cobra.NoArgs,
	SilenceUsage: true,
	RunE: func(_ *cobra.Command, args []string) error {
		ctxTimeout, cancel := context.WithTimeout(context.Background(), config.DefaultTimeout)
		defer cancel()

		c, err := cloudclient.NewClient(ctxTimeout)
		if err != nil {
			return err
		}

		r, err := c.CreateKubernetesIntegrationMutationWithResponse(ctxTimeout,
			cloudapi.CreateKubernetesIntegrationMutationJSONRequestBody{
				EnvironmentId: lo.Ternary(viper.IsSet(EnvironmentIDKey), lo.ToPtr(viper.GetString(EnvironmentIDKey)), nil),
				Name:          viper.GetString(IntegrationNameKey),
			})
		if err != nil {
			return err
		}

		output.FormatIntegrations([]cloudapi.Integration{lo.FromPtr(r.JSON200)}, true)
		return nil
	},
}

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL