-
Notifications
You must be signed in to change notification settings - Fork 48
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
[feature] Protect atlantis.yaml #236
Comments
My mistake, output of these hooks isn't printed to comments |
I think this is still an issue actually. If there's an error while running the scripts then we print out the output if you run the command with |
I think the best way to fix this is to only execute the atlantis.yaml file that's on the branch being pull requested into. |
Using old |
@eriksw in that case you'd have to do 2 pull requests. The first would be the version change and the second would be the tf changes. It's kind of annoying but if we use the I anticipate that |
I can't say I'm a fan of having to go through a two-PR process every time there's a new version of terraform. (Pinning in both .tf The simplicity of requiring a simple detached hmac "signature" of |
@eriksw you're right that that is a poor workflow. Thank you for your concerns. As a result I've spent some more time looking into how drone.io deals with these issues and why they removed the signing step. This thread is particularly illuminating: harness/harness#1935 My conclusions:
|
I like the conclusion - in Drone we do provide a list of admins as part of the configuration, but you will get this from the repo attributes? Does this mean |
Yes, for now until I have time to work on a more robust authentication/authorization system
Yes, exactly–because otherwise you could put malicious changes in the plan step |
Another use case:
The proposed solution there won't work, as a user could simply change atlantis.yml in master and then create a PR. An additionally solution for such mono repo use cases: separate atlantis.yml from the terraform files and load it directly on the (secured) server. |
This issue was migrated to runatlantis/atlantis#47. Read about why here. |
Atm, any developer can add
pre_get
,pre_init
,pre/post_plan
commands to expose secrets viaatlantis.yaml
- as Atlantis requires quite significant permissions, this might be a concern.Drone used to have a signing step required for the
drone.yaml
file, ensuring unauthorized modifications toatlantis.yaml
can be preventedThe text was updated successfully, but these errors were encountered: