-
Notifications
You must be signed in to change notification settings - Fork 92
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
Implements stack listing and change detection #5
Conversation
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 from what I can tell! Really great job @i4ki ! You rock!
@thiesen maybe you can review it from a more go point of view :) |
@@ -1,2 +1,53 @@ | |||
# terrastack |
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 wrote here my understanding of terraform stacks but I'm not sure if it's accurate. Please let me know if makes sense.
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.
will check and give you detailed feedback
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.
will check..
sorry for the delay
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.
Just read through it now. Thanks for the comprehensive description @i4ki it reads really well. One of the major upsides of a stack that should be be forgotten is that it decreases the execution time of terraform by a lot also. I feel we should include this in the why
also - @mariux could you also provide your input here? Thanks
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.
time is another good point... this also comes with coat reduction as CI runs are payed by time so significantly reducing this also reduces number of build minutes needed..
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 improved by adding the reduced time benefit.
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.
man, this is a beautiful PR!
1. The default branch (commonly main) has the production (applied) code. | ||
2. Before planning and apply, the changes must be committed in a feature/bugfix | ||
branch. | ||
3. The IaC project must use [non | ||
fast-forwarded](https://git-scm.com/docs/git-merge#_fast_forward_merge) merge | ||
commits. (the default in github and bitbucket). |
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.
yes... the mostimportant to note here:
each merge to main needs to be easily detectable e.g. by using get ref like HEAD^ or HEAD~ we need to be able to point to the last merge, or any number of merges e.g. HEAD~4
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.
Should I improve here somehow? Maybe we should avoid being too technical about git here, since using merge commits already makes this implicit.
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 .... cannot run go-lang inmy head yet.... ;) so cannot judge the code... added some coment in the docs though.... great work afaict
@mariux I'm working in the cli now =) Next PR will be easy to test it working. |
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.
good work! I left some comments.
Consider using the if _, err := funcReturnsWhateverAndErr(); err != nil { ...
if you only check for error. Also in some cases multiple nested if conditions can be ANDed
@@ -1,2 +1,53 @@ | |||
# terrastack |
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.
Just read through it now. Thanks for the comprehensive description @i4ki it reads really well. One of the major upsides of a stack that should be be forgotten is that it decreases the execution time of terraform by a lot also. I feel we should include this in the why
also - @mariux could you also provide your input here? Thanks
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!
@thiesen @zwopir @soerenmartius @mariux I just squashed the commits. Can you guys approve for merging? |
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!
The change detection mimics the internal make/bash scripts but is not the optimal solution. We will improve it after the MVP validation.