Havard Noren
10/28/2024, 11:36 AMiac-modules -iaciac<http://team1-eks.tf|team1-eks.tf>/etc/team1-eks<http://team1-eks.tf|team1-eks.tf>/etc/team1-eksiac-modulessmellsAbby Bangser
10/28/2024, 11:45 AMAbby Bangser
10/28/2024, 11:47 AMHavard Noren
10/28/2024, 11:59 AMKief Morris
10/28/2024, 12:42 PMKief Morris
10/28/2024, 12:43 PMHavard Noren
10/28/2024, 12:50 PMKief Morris
10/28/2024, 1:00 PMKief Morris
10/28/2024, 1:00 PMKief Morris
10/28/2024, 1:01 PMTroy Knapp
10/28/2024, 1:12 PMTroy Knapp
10/28/2024, 1:15 PMTroy Knapp
10/28/2024, 1:18 PMHavard Noren
10/28/2024, 1:18 PMfoldersteam1testeks<http://eks-module.tf|eks-module.tf><http://eks-module.tf|eks-module.tf>Havard Noren
10/28/2024, 1:21 PMTroy Knapp
10/28/2024, 1:23 PMHavard Noren
10/28/2024, 1:29 PMTroy Knapp
10/28/2024, 1:43 PMHavard Noren
10/28/2024, 2:18 PMmessmessmessmessterraform graphmessmessmessHavard Noren
10/28/2024, 2:19 PMTroy Knapp
10/28/2024, 2:28 PMmessmessmessHavard Noren
10/28/2024, 2:41 PMterramateTroy Knapp
10/28/2024, 2:48 PMTroy Knapp
10/28/2024, 2:50 PMTroy Knapp
10/28/2024, 3:00 PMTroy Knapp
10/28/2024, 3:01 PMHavard Noren
10/29/2024, 8:22 AMSo the only way to do that if using a workspace or symlinked stack is to just delay applying the changes until they are fully vetted in a lower environment. This is ok if you have a TACOS that can handle this well... but its not very GitOps friendly. Now you have code that's eventually going to be compatible with what's in your repo while you're trying things outTroy Knapp
10/29/2024, 12:31 PMWould you mind elaborating this a little more? I’m not understanding what it entails.Let's take, for example, you want to make a change in a stack but that stack is symlinked or its in a part of a workspace. Let's also assume you have 3 environments dev/stage/prod. Because the code is shared between all three environments when you make a change in one place, it changes in all three. This is both a strength and a weakness. Its a strength because it keeps all your environments in sync. (You can't imagine how many problems I could have fixed if I had just had the ability to have stage and prod match completely.) Its a weakness because once you commit and merge your code, you have to figure out how to manage testing your lower environments first, then rolling it out to upper environments. For small changes, this isn't a big deal... but for big ones it certainly can be. For example, over the last three weeks I've migrated all my app's secrets away from AWS secrets manager to Doppler. Every single secret was touched, new DB users with new permissions were created... it was a BIG change, and it's rollout needed to be carefully controlled. I made three PRs one for each environment three weeks ago, merged the first into dev, let it cook for a week, merged the second to stage, let it cook for a week, then merged the last into prod yesterday. Imagine if I had made a similarly sweeping change in a workspace/symlink. Git has a linear history, so my workflow would be like commit the big change, test on dev, wait for a week WHILE BLOCKING ALL CHANGES FROM BEING APPLIED TO STAGING. Any changes that I want to apply to stage now has the big awesome change that I want to let cook on dev, therefore, I can't apply those changes. This means in the case described above that I'm essentially blocking prod for 3 weeks. Furthermore, I have a job, and just because things are being tested on a lower environment doesn't mean I have a 3 week vacation. What if I make ANOTHER big change that I need to test for a bit in lower environments first? If I apply that to dev, then any of my future applies in stage/prod would include THAT code too. Or what happens if I have to make an emergency change on prod while my awesome new feature is cooking on stage? Non of these are insurmountable problems, but they are cases that you need to think about and plan for. Maybe push your dev team to have better integration tests on their application that you can run... Maybe create integration tests of your own to test changes faster. Maybe have a TACOS that can queue up changes that you can run sequentially (as opposed to just applying latest). Maybe you need to be able to revert changes on the fly... So, the above problems are you
messmessHavard Noren
10/29/2024, 12:55 PMTroy Knapp
10/29/2024, 1:00 PMTroy Knapp
10/29/2024, 1:09 PMTroy Knapp
10/29/2024, 1:22 PMHavard Noren
10/29/2024, 2:02 PMHavard Noren
03/17/2025, 9:43 AMtofu-controllerburritokubernetes resource orchestratoraws controllers for kuberneteskube resource orchestratoraws controllers for kubernetesAbby Bangser
03/17/2025, 10:21 AMHavard Noren
03/17/2025, 10:35 AMTroy Knapp
03/17/2025, 12:50 PM