Skip to main content

package.appvia.io/v2beta1

Package v2beta1 contains API Schema definitions for the package API group

Exported Resource Types

Package

Package is a package definition

FieldDescription

apiVersion
string

package.appvia.io/v2beta1

kind
string

Package
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
PackageSpec
dependencies

[]string

Dependencies provides a list of dependent services which have to deployed before this package can be installed

installNamespace

string

InstallNamespace is the location to install the package

source
ChartSource

Source is used to define the source location of the chart and the revision which used to used to install

selectors
Kubernetes meta/v1.LabelSelector

Selectors are the label matching selectors for where the package should be installed

name

string

Name is the display name of the package

summary

string

Summary provides short description as to use of the package

values
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON

Values is a collection of values to injected into the chart when rendering the package into the clusters

valuesFrom
[]ValuesFrom

ValuesFrom is a optional collection of resources which are injected into the helm values before render

userValues
[]UserValue

UserValues is a collection of user values that are exposed by this package

workloadIdentity
WorkloadIdentity

WorkloadIdentity is an optional request to create a workload identity

releaseName

string

ReleaseName is the name of the release in the cluster

version

string

Version is the semver of the package

skipTests

bool

SkipTests will skip execution of any ‘helm test’ tests defined on the package.

status
PackageStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RoutingStatus
RoutingStatus

(Members of RoutingStatus are embedded into this type.)

PackageRelease

PackageRelease is a package definition

FieldDescription

apiVersion
string

package.appvia.io/v2beta1

kind
string

PackageRelease
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
PackageReleaseSpec
revision

string

Revision is revision of the package in which is associated to the release

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on

globalRef

string

GlobalRef is the name of the cloud package which is associated to the release

packageRef

string

PackageRef is the name of the package within the workspace namespace that is associated to this release

package
PackageSpec

Package contains all the package details which has been copied over from the package definition - this creates a local copy of the package as is used to reconcile the release

status
PackageReleaseStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

appliedValues
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON

AppliedValues is the rendered set of values for this package release (excluding any values derived from secrets)

failedEvents
[]FailedEvent

FailedEvents is a list of failed events from the namespace where the release is installed Only populated if the release has failed

PackageUpdate

PackageUpdate is the schema package version updates in Wayfinder

FieldDescription

apiVersion
string

package.appvia.io/v2beta1

kind
string

PackageUpdate
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
PackageUpdateSpec
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

packageToUpdate

string

PackageToUpdate is the name of the package to update on the owning cluster

newVersion

string

NewVersion is the new package version to be released into the cluster

options
PackageUpdateOptions

Options are the options for the package update

status
PackageUpdateStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

currentVersion

string

CurrentVersion is the version of the package currently applied. May be empty if no package release exists.

startTime
Kubernetes meta/v1.Time

StartTime is the time the update was started Is used to estimate the percentage complete time

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the update - Based on the time from StartTime and a test of actual updates

Repository

Repository is a package definition

FieldDescription

apiVersion
string

package.appvia.io/v2beta1

kind
string

Repository
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
RepositorySpec
selectors
Kubernetes meta/v1.LabelSelector

Selectors are the label matching selectors for where the package should be installed

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on. Field is optional, but we gonna populate this down the stream when assigned to cluster

globalRef

string

GlobalRef is the name of the cloud global repository which is associated to the repository

packageRef

string

RepositoryRef is the name of the repository within the workspace namespace that is associated to this repository

revision

string

Revision is revision of the package in which is associated to the release

url

string

The Helm repository URL, a valid URL contains at least a protocol and host.

secretRef
Kubernetes core/v1.SecretReference
(Optional)

repository. For HTTP/S basic auth the secret must contain username and password fields. For TLS the secret must contain a certFile and keyFile, and/or caCert fields.

interval

string

(Optional)

The interval at which to check the upstream for updates.

timeout

string

(Optional)

The timeout of index downloading, defaults to 60s.

suspend

bool

(Optional)

This flag tells the controller to suspend the reconciliation of this source.

status
RepositoryStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RepositoryRelease

RepositoryRelease is a package definition

FieldDescription

apiVersion
string

package.appvia.io/v2beta1

kind
string

RepositoryRelease
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
RepositoryReleaseSpec
revision

string

Revision is revision of the release in which is associated to the release

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on

globalRef

string

GlobalRef is the name of the cloud package which is associated to the release

packageRef

string

GlobalRef is the name of the cloud release which is associated to the release

repository
RepositorySpec

Release contains all the release details which has been copied over from the release definition - this creates a local copy of the release as is used to reconcile the release

status
RepositoryReleaseStatus

reuse repository spec

CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

Internal Resource Types

AWSWorkloadIdentityProviderDetails

(Appears on: WorkloadIdentityProviderDetails)

AWSWorkloadIdentityProviderDetails provides the specific parameters for AWS

FieldDescription
iamPolicies

[]string

IAMPolicies defines a list of (additional) IAM policies to bind to the workload identity role It is assumed that these will exist in the target AWS account for the cluster, therefore use either built-in AWS-managed policies or make sure that your process for managing policies in your accounts will always ensure these policies exist in any account this package may be deployed into. For AWS-managed policies, specify the full ARN (e.g. arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess) For self-managed policies, specify the ARN without an account ID (e.g. arn:aws:iam:::policy/myorg-policy-s3-write)

customIAMPolicy
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON

CustomIAMPolicy defines an additional dedicated IAM policy to create and bind to this workload identity.

helmServiceAccountAnnotationsPaths

[]string

helmServiceAccountAnnotationsPaths defines paths to the service account annotations parameter within the helm chart. AWS ManagedIdentity works based on ServiceAccounts annotations.

AzureWorkloadIdentityProviderDetails

(Appears on: WorkloadIdentityProviderDetails)

AzureWorkloadIdentityProviderDetails provides the specific parameters for Azure

FieldDescription
helmPodLabelsPaths

[]string

HelmPodLabelsPath defines paths to the podLabels parameter within the helm chart. Azure ManagedIdentity works based on Pod labels.

helmPodSelector

string

helmServiceAccountAnnotationsPaths

[]string

HelmServiceAccountAnnotationsPaths defines paths to the service account annotations parameter within the helm chart.

clientIDPaths

[]string

ClientIDPaths defines paths to additional places in the values to set the client ID

ChartSource

(Appears on: PackageSpec)

ChartSource defines the location of the helm package

FieldDescription
git
GitSource

Git can be used to define the location of the helm chart in a git repository

helm
HelmSource

Helm can be used to define a helm index as the source location of the chart to be installed

EventReferenceTo

(Appears on: FailedEvent)

FieldDescription
name

string

Name is the name of the object

namespace

string

Namespace is the namespace of the object

kind

string

Kind is the kind of the object

FailedEvent

(Appears on: PackageReleaseStatus)

FieldDescription
message

string

Message is the message of the event

regarding
EventReferenceTo

Regarding is the reference to the object the event is about

GCPWorkloadIdentityProviderDetails

(Appears on: WorkloadIdentityProviderDetails)

GCPWorkloadIdentityProviderDetails provides the specific parameters for GCP

FieldDescription
helmServiceAccountAnnotationsPaths

[]string

HelmServiceAccountAnnotationsPaths defines paths to the service account annotations parameter within the helm chart. GCP ManagedIdentity works based on ServiceAccounts annotations.

GitSource

(Appears on: ChartSource)

GitSource defines the location of a chart in a git repository

FieldDescription
gitPullSecrets
Kubernetes core/v1.SecretReference

GitPullSecrets is a reference to any credentials used to pull the repository

url

string

URL is the location of the git repository

HelmSource

(Appears on: ChartSource)

HelmSource is used to the define the location of a chart in a helm repository

FieldDescription
name

string

Name is the name of the chart we wish to install

url

string

URL is the url to the helm repository where the chart lives

version

string

Version is the version of the chart that should be installed

PackageReleaseSpec

(Appears on: PackageRelease)

PackageReleaseSpec defines the the desired status for an helm package

FieldDescription
revision

string

Revision is revision of the package in which is associated to the release

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on

globalRef

string

GlobalRef is the name of the cloud package which is associated to the release

packageRef

string

PackageRef is the name of the package within the workspace namespace that is associated to this release

package
PackageSpec

Package contains all the package details which has been copied over from the package definition - this creates a local copy of the package as is used to reconcile the release

PackageReleaseStatus

(Appears on: PackageRelease)

PackageReleaseStatus defines the observed state of the package

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

appliedValues
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON

AppliedValues is the rendered set of values for this package release (excluding any values derived from secrets)

failedEvents
[]FailedEvent

FailedEvents is a list of failed events from the namespace where the release is installed Only populated if the release has failed

PackageSpec

(Appears on: Package, PackageReleaseSpec)

PackageSpec defines a helm package

FieldDescription
dependencies

[]string

Dependencies provides a list of dependent services which have to deployed before this package can be installed

installNamespace

string

InstallNamespace is the location to install the package

source
ChartSource

Source is used to define the source location of the chart and the revision which used to used to install

selectors
Kubernetes meta/v1.LabelSelector

Selectors are the label matching selectors for where the package should be installed

name

string

Name is the display name of the package

summary

string

Summary provides short description as to use of the package

values
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON

Values is a collection of values to injected into the chart when rendering the package into the clusters

valuesFrom
[]ValuesFrom

ValuesFrom is a optional collection of resources which are injected into the helm values before render

userValues
[]UserValue

UserValues is a collection of user values that are exposed by this package

workloadIdentity
WorkloadIdentity

WorkloadIdentity is an optional request to create a workload identity

releaseName

string

ReleaseName is the name of the release in the cluster

version

string

Version is the semver of the package

skipTests

bool

SkipTests will skip execution of any ‘helm test’ tests defined on the package.

PackageStatus

(Appears on: Package)

PackageStatus defines the observed state of the package

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RoutingStatus
RoutingStatus

(Members of RoutingStatus are embedded into this type.)

PackageUpdateOptions

(Appears on: PackageUpdateSpec)

PackageUpdateOptions are the options for updating a package

PackageUpdateSpec

(Appears on: PackageUpdate)

FieldDescription
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

packageToUpdate

string

PackageToUpdate is the name of the package to update on the owning cluster

newVersion

string

NewVersion is the new package version to be released into the cluster

options
PackageUpdateOptions

Options are the options for the package update

PackageUpdateStatus

(Appears on: PackageUpdate)

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

currentVersion

string

CurrentVersion is the version of the package currently applied. May be empty if no package release exists.

startTime
Kubernetes meta/v1.Time

StartTime is the time the update was started Is used to estimate the percentage complete time

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the update - Based on the time from StartTime and a test of actual updates

RepositoryReleaseSpec

(Appears on: RepositoryRelease)

RepositoryReleaseSpec defines the the desired status for an helm repository release

FieldDescription
revision

string

Revision is revision of the release in which is associated to the release

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on

globalRef

string

GlobalRef is the name of the cloud package which is associated to the release

packageRef

string

GlobalRef is the name of the cloud release which is associated to the release

repository
RepositorySpec

Release contains all the release details which has been copied over from the release definition - this creates a local copy of the release as is used to reconcile the release

RepositoryReleaseStatus

(Appears on: RepositoryRelease)

RepositoryStatus defines the observed state of the repository

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RepositorySpec

(Appears on: Repository, RepositoryReleaseSpec)

RepositorySpec defines the the desired status for an helm repository

FieldDescription
selectors
Kubernetes meta/v1.LabelSelector

Selectors are the label matching selectors for where the package should be installed

clusterRef
Ownership

ClusterRef provides reference to the cluster this release is associated and intended to be installed on. Field is optional, but we gonna populate this down the stream when assigned to cluster

globalRef

string

GlobalRef is the name of the cloud global repository which is associated to the repository

packageRef

string

RepositoryRef is the name of the repository within the workspace namespace that is associated to this repository

revision

string

Revision is revision of the package in which is associated to the release

url

string

The Helm repository URL, a valid URL contains at least a protocol and host.

secretRef
Kubernetes core/v1.SecretReference
(Optional)

repository. For HTTP/S basic auth the secret must contain username and password fields. For TLS the secret must contain a certFile and keyFile, and/or caCert fields.

interval

string

(Optional)

The interval at which to check the upstream for updates.

timeout

string

(Optional)

The timeout of index downloading, defaults to 60s.

suspend

bool

(Optional)

This flag tells the controller to suspend the reconciliation of this source.

RepositoryStatus

(Appears on: Repository)

RepositoryStatus defines the observed state of the package

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

UserValue

(Appears on: PackageSpec)

UserValue defines a value exposed to the user

FieldDescription
name

string

Name is the name of the value field

description

string

Description is an explanation of value’s significance/usage

value

string

Value is a representation of the value

WorkloadIdentity

(Appears on: PackageSpec)

WorkloadIdentity defines values for the WorkloadIdentity that should be created

FieldDescription
clusterServiceAccount
ClusterServiceAccount

ClusterServiceAccount is the name and namespace of the service account which will use this identity in the target cluster. Required on AWS and GCP, optional (and unused) on Azure at this time.

identityOnly

bool

IdentityOnly will create an identity associated with a cluster with no specific permissions Must specify Role=None if this is true. In AWS: - An IAM role is created and associated with a specific Kubernetes service account - no inline or attached policies are managed (post creation of the IAM role) - It is a “user” responsibility to attach policies to the IAM role In Azure: - The user defined managed identity is created - No role definitions or role assignments are created - It is a “user” responsibility to create relevant role assignments

role
WorkloadIdentityRole

Role must be the name of a valid workload identity role known to Wayfinder

roleParameters

map[string]string

RoleParameters are any parameters required for the specified role

cloudResourceName

string

CloudResourceName specifies the name of the workload identity in the cloudaccount Can be left blank so that the name is derived from the cluster name + resource name

providerDetails
WorkloadIdentityProviderDetails

ProviderDetails provides additional fields which can be used for cloud-provider specific data, such as a GCP billing account ID.

WorkloadIdentityProviderDetails

(Appears on: WorkloadIdentity)

FieldDescription
aws
AWSWorkloadIdentityProviderDetails

AWS holds parameters specific to AWS workload identity

azure
AzureWorkloadIdentityProviderDetails

Azure holds parameters specific to Azure workload identity

gcp
GCPWorkloadIdentityProviderDetails

GCP holds parameters specific to GCP workload identity