gen

package
v0.25.0 Latest Latest
Warning

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

Go to latest
Published: Jun 19, 2019 License: Apache-2.0 Imports: 12 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NodeJSClient

func NodeJSClient(swagger map[string]interface{}, templateDir string,
) (inputsts, outputsts, indexts, yamlts, packagejson string, groupsts map[string]*GroupTS, err error)

NodeJSClient will generate a Pulumi Kubernetes provider client SDK for nodejs.

func PythonClient added in v0.18.0

func PythonClient(
	swagger map[string]interface{},
	templateDir string,
	rootInit func(initPy string) error,
	groupInit func(group, initPy string) error,
	customResource func(crPy string) error,
	versionInit func(group, version, initPy string) error,
	kindFile func(group, version, kind, kindPy string) error,
	casingFile func(casingPy string) error,
	yamlFile func(yamlPy string) error,
) error

PythonClient will generate a Pulumi Kubernetes provider client SDK for nodejs.

Types

type GroupConfig

type GroupConfig struct {
	// contains filtered or unexported fields
}

GroupConfig represents a Kubernetes API group (e.g., core, apps, extensions, etc.)

func (*GroupConfig) Group

func (gc *GroupConfig) Group() string

Group returns the name of the group (e.g., `core` for core, etc.)

func (*GroupConfig) Versions

func (gc *GroupConfig) Versions() []*VersionConfig

Versions returns the set of version for some Kubernetes API group. For example, the `apps` group has `v1beta1`, `v1beta2`, and `v1`.

type GroupTS added in v0.21.1

type GroupTS struct {
	Versions map[string]*VersionTS
	Index    string
}

type KindConfig

type KindConfig struct {
	// contains filtered or unexported fields
}

KindConfig represents a Kubernetes API kind (e.g., the `Deployment` type in `apps/v1beta1/Deployment`).

func (*KindConfig) APIVersion

func (kc *KindConfig) APIVersion() string

APIVersion returns the fully-qualified apiVersion (e.g., `storage.k8s.io/v1` for storage, etc.)

func (*KindConfig) Comment

func (kc *KindConfig) Comment() string

Comment returns the comments associated with some Kubernetes API kind.

func (*KindConfig) Kind

func (kc *KindConfig) Kind() string

Kind returns the name of the Kubernetes API kind (e.g., `Deployment` for `apps/v1beta1/Deployment`).

func (*KindConfig) OptionalProperties

func (kc *KindConfig) OptionalProperties() []*Property

OptionalProperties returns the list of properties that are optional on some Kubernetes API kind (i.e., things that we will want to `.` into, like `thing.apiVersion`, `thing.kind`, `thing.metadata`, etc.).

func (*KindConfig) Properties

func (kc *KindConfig) Properties() []*Property

Properties returns the list of properties that exist on some Kubernetes API kind (i.e., things that we will want to `.` into, like `thing.apiVersion`, `thing.kind`, `thing.metadata`, etc.).

func (*KindConfig) RawAPIVersion added in v0.15.0

func (kc *KindConfig) RawAPIVersion() string

RawAPIVersion returns the "raw" apiVersion (e.g., `v1` rather than `core/v1`).

func (*KindConfig) RequiredProperties

func (kc *KindConfig) RequiredProperties() []*Property

RequiredProperties returns the list of properties that are required to exist on some Kubernetes API kind (i.e., things that we will want to `.` into, like `thing.apiVersion`, `thing.kind`, `thing.metadata`, etc.).

func (*KindConfig) TypeGuard added in v0.15.0

func (kc *KindConfig) TypeGuard() string

TypeGuard returns the text of a TypeScript type guard for the given kind.

func (*KindConfig) URNAPIVersion added in v0.18.0

func (kc *KindConfig) URNAPIVersion() string

URNAPIVersion returns API version that can be used in a URN (e.g., using the backwards-compatible alias `apiextensions` instead of `apiextensions.k8s.io`).

type Property

type Property struct {
	// contains filtered or unexported fields
}

Property represents a property we want to expose on a Kubernetes API kind (i.e., things that we will want to `.` into, like `thing.apiVersion`, `thing.kind`, `thing.metadata`, etc.).

func (*Property) Comment

func (p *Property) Comment() string

Comment returns the comments associated with some property.

func (*Property) DefaultValue

func (p *Property) DefaultValue() string

DefaultValue returns the type of the property.

func (*Property) LanguageName added in v0.18.0

func (p *Property) LanguageName() string

LanguageName returns the name of the property.

func (*Property) Name

func (p *Property) Name() string

Name returns the name of the property.

func (*Property) PropType

func (p *Property) PropType() string

PropType returns the type of the property.

type VersionConfig

type VersionConfig struct {
	// contains filtered or unexported fields
}

VersionConfig represents a version of a Kubernetes API group (e.g., the `apps` group has `v1beta1`, `v1beta2`, and `v1`.)

func (*VersionConfig) APIVersion

func (vc *VersionConfig) APIVersion() string

APIVersion returns the fully-qualified apiVersion (e.g., `storage.k8s.io/v1` for storage, etc.)

func (*VersionConfig) Kinds

func (vc *VersionConfig) Kinds() []*KindConfig

Kinds returns the set of kinds in some Kubernetes API group/version combination (e.g., `apps/v1beta1` has the `Deployment` kind, etc.).

func (*VersionConfig) KindsAndAliases added in v0.18.0

func (vc *VersionConfig) KindsAndAliases() []*KindConfig

KindsAndAliases will produce a list of kinds, including aliases (e.g., both `apiregistration` and `apiregistration.k8s.io`).

func (*VersionConfig) ListKindsAndAliases added in v0.18.0

func (vc *VersionConfig) ListKindsAndAliases() []*KindConfig

ListKindsAndAliases will return all known `Kind`s that are lists, or aliases of lists. These `Kind`s are not instantiated by the API server, and we must "flatten" them client-side to get an accurate view of what resource operations we need to perform.

func (*VersionConfig) RawAPIVersion added in v0.15.0

func (vc *VersionConfig) RawAPIVersion() string

RawAPIVersion returns the "raw" apiVersion (e.g., `v1` rather than `core/v1`).

func (*VersionConfig) Version

func (vc *VersionConfig) Version() string

Version returns the name of the version (e.g., `apps/v1beta1` would return `v1beta1`).

type VersionTS added in v0.21.1

type VersionTS struct {
	Kinds map[string]string
	Index string
}

Jump to

Keyboard shortcuts

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