-
Notifications
You must be signed in to change notification settings - Fork 127
Start Basic Pulumi Typescript Implementation #39
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
Start Basic Pulumi Typescript Implementation #39
Conversation
csantanapr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hard ask is on the directory name adding eks folder
Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
* update crossplane --------- Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
…bridge-dev#46) Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
* initial work argo-workflows Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
* update argo workflows Signed-off-by: Carlos Santana <csantana23@gmail.com> * add karpenter pattern Signed-off-by: Carlos Santana <csantana23@gmail.com> * make eks 1.29 Signed-off-by: Carlos Santana <csantana23@gmail.com> --------- Signed-off-by: Carlos Santana <csantana23@gmail.com> Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
…ap command. Signed-off-by: Blake Romano <blake.romano@imaginelearning.com>
799ba00 to
f790c55
Compare
csantanapr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you need to rebase I see other none related changes
csantanapr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This is a very basic implementation of the GitOps Bridge in Pulumi Typescript. This implores using a Hub Spoke model where a GitOps Controller is deployed in a "Hub" cluster and there are "Spoke" clusters that the Hub cluster communicates with and deploys resources to.
In this implementation we use IRSA to give Argo an appropriate role as well as the ability to assume other roles in other accounts/regions and create a role in our Spoke clusters for Argo to be able to assume as well mapping that to a master role in the control plane.
We ideally want to support two types of GitOps configuration. One is where we can upload a K8s secret yaml into Github where a GitOps Controller could pick it up and deploy and manage the lifecycle of it. Another is where you generate the K8s secret yaml and Pulumi manages the lifecycle of it. In the current implementation only the first method is functional but should be fairly simple for someone to add support for the latter.
Note: Outside of Pulumi Preview and an adaptation of this that I have done previously this is untested so I'd recommend validating that this works as expected by actually deploying this.