Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce aws-load-balancer-controller #198

Merged
merged 1 commit into from
Oct 21, 2024

Conversation

kaessert
Copy link
Collaborator

@kaessert kaessert commented Oct 16, 2024

Description of your changes

This PR introduces aws load-balancer controller in the mix. In-tree providers like used here are subject to being removed in the near future.

In order to more realistically picture a production setup, i also chose to switch to an Ingress instead of a plain service.

I updated to latest version of uptest because debugging with old kuttl was close to impossible and in order to use latest pod identity standard it was necessary to update the eks-module which meant i needed to upgrade every other configuration dependency as well, so please pardon that i mix these changes in one PR.

I also moved the composition to apis/pat to comply with current standards.

I have:

  • Read and followed Upbound's contribution process.
  • Run make reviewable to ensure this PR is ready for review.
  • Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

$> make check-examples
19:35:12 [ .. ] Checking if package versions in dependencies match examples
19:35:12 [ OK ] Package versions are sane
$> make render
---
apiVersion: aws.platformref.upbound.io/v1alpha1
kind: Cluster
metadata:
  annotations:
    render.crossplane.io/composition-path: apis/pat/composition.yaml
    render.crossplane.io/function-path: examples/functions.yaml
  labels:
    platform.upbound.io/deletion-ordering: enabled
  name: platform-ref-aws
  namespace: default
spec:
  compositeDeletePolicy: Foreground
  parameters:
    gitops:
      git:
        ref:
          name: refs/heads/main
        url: https://github.com/upbound/platform-ref-aws/
    id: platform-ref-aws
    nodes:
      count: 3
      instanceType: t3.small
    region: us-west-2
    version: "1.27"
  writeConnectionSecretToRef:
    name: platform-ref-aws-kubeconfig
status:
  conditions:
  - lastTransitionTime: "2024-01-01T00:00:00Z"
    message: 'Unready resources: XEKS, XFlux, XNetwork, and 6 more'
    reason: Creating
    status: "False"
    type: Ready
---
apiVersion: aws.platform.upbound.io/v1alpha1
kind: XEKS
metadata:
  annotations:
    crossplane.io/composition-resource-name: XEKS
    crossplane.io/external-name: platform-ref-aws
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
    platform.upbound.io/deletion-ordering: enabled
    xeks.aws.platform.upbound.io/cluster-id: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  parameters:
    id: platform-ref-aws
    nodes:
      count: 3
      instanceType: t3.small
    region: us-west-2
    version: "1.27"
---
apiVersion: gitops.platform.upbound.io/v1alpha1
kind: XFlux
metadata:
  annotations:
    crossplane.io/composition-resource-name: XFlux
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  parameters:
    providerConfigName: platform-ref-aws
    source:
      git:
        ref:
          name: refs/heads/main
        url: https://github.com/upbound/platform-ref-aws/
---
apiVersion: aws.platform.upbound.io/v1alpha1
kind: XNetwork
metadata:
  annotations:
    crossplane.io/composition-resource-name: XNetwork
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  parameters:
    id: platform-ref-aws
    region: us-west-2
---
apiVersion: observe.platform.upbound.io/v1alpha1
kind: XOss
metadata:
  annotations:
    crossplane.io/composition-resource-name: XOss
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  parameters:
    id: platform-ref-aws
---
apiVersion: apiextensions.crossplane.io/v1alpha1
kind: Usage
metadata:
  annotations:
    crossplane.io/composition-resource-name: usageXAWSLBControllerByArbitraryLabeledApp
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  by:
    apiVersion: platform.upbound.io/v1alpha1
    kind: XApp
    resourceSelector:
      matchLabels:
        platform.upbound.io/deletion-ordering: enabled
  of:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XAWSLBController
    resourceSelector:
      matchControllerRef: true
---
apiVersion: apiextensions.crossplane.io/v1alpha1
kind: Usage
metadata:
  annotations:
    crossplane.io/composition-resource-name: usageXEksByArbitraryLabeledRelease
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  by:
    apiVersion: helm.crossplane.io/v1beta1
    kind: Release
    resourceSelector:
      matchLabels:
        platform.upbound.io/deletion-ordering: enabled
  of:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XEKS
    resourceSelector:
      matchControllerRef: true
---
apiVersion: apiextensions.crossplane.io/v1alpha1
kind: Usage
metadata:
  annotations:
    crossplane.io/composition-resource-name: usageXEksByXFlux
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  by:
    apiVersion: gitops.platform.upbound.io/v1alpha1
    kind: XFlux
    resourceSelector:
      matchControllerRef: true
  of:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XEKS
    resourceSelector:
      matchControllerRef: true
---
apiVersion: apiextensions.crossplane.io/v1alpha1
kind: Usage
metadata:
  annotations:
    crossplane.io/composition-resource-name: usageXEksByXOss
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  by:
    apiVersion: observe.platform.upbound.io/v1alpha1
    kind: XOss
    resourceSelector:
      matchControllerRef: true
  of:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XEKS
    resourceSelector:
      matchControllerRef: true
---
apiVersion: apiextensions.crossplane.io/v1alpha1
kind: Usage
metadata:
  annotations:
    crossplane.io/composition-resource-name: usageXNetworkByXEKS
  generateName: platform-ref-aws-
  labels:
    crossplane.io/composite: platform-ref-aws
  ownerReferences:
  - apiVersion: aws.platformref.upbound.io/v1alpha1
    blockOwnerDeletion: true
    controller: true
    kind: Cluster
    name: platform-ref-aws
    uid: ""
spec:
  by:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XEKS
    resourceSelector:
      matchControllerRef: true
  of:
    apiVersion: aws.platform.upbound.io/v1alpha1
    kind: XNetwork
    resourceSelector:
      matchControllerRef: true

@kaessert
Copy link
Collaborator Author

/test-examples

@kaessert
Copy link
Collaborator Author

/test-examples

@kaessert kaessert requested a review from ytsarev October 18, 2024 12:25
Copy link
Member

@ytsarev ytsarev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! Congrats on finalizing README update :D

@kaessert kaessert merged commit dcb95e3 into upbound:main Oct 21, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants