Commit Graph

224 Commits

Author SHA1 Message Date
Nish Krishnan
7ac8106f8a Add structured logger (#54) (#1467)
This is two changes:

Replacing all usages of SimpleLogger with it's interface SimpleLogging which makes it easier to swap out loggers going forward
Nukes SimpleLogger in favor of StructuredLogger which allows us to better analyze logs in our log management system we choose.
2021-04-06 12:02:25 -07:00
Sarvar Muminov
ad76385c76 Global atlantis lock new release branch (#1473)
* Orca 679 global atlantis lock new release branch (#49)

* Adding CommandLocker to boltDB and exposing it through locker interface

* Apply lock ui and apply command lock controller

* Minor comments

* Adding more tests and refactorinng

* Linting fixes

* creating applyLockingClient variable to fix interface error

* nullsink for stats

* Addressing PR comments

* fixing e2e tests

* linting fix fml

* Update outdated function descriptions

Address PR comments

* revert stats sink changes

* remove unnecessary dependencies
2021-04-01 15:40:29 -07:00
laurent apollis
d2ef2775c8 Support regexp in command builder on the project name (#1419) 2021-03-05 16:13:23 -08:00
Nish Krishnan
8598c37671 Support pre-workflow hooks on all comment/auto triggered commands. (#43) (#1418)
Fixes pre-workflow-hooks not logging errors #1371
Prevents pre-workflow-hook from locking and cloning the dir if there are no hooks registered. #1342
2021-02-22 08:34:26 -08:00
Sarvar Muminov
af2a806870 Implement a new policy check workflow (#1317)
* Adding policy_check support into yaml config

* Added policy check model and runtime structs

* Adding BuildPolicyCheckCommand to ProjectCommandBuilder

* Return incorrectly deleted code

* Remove BuildAutoPolicyPlanCommand from ProjectCommandBuilder

* Split runAutoCommand into two functions

runAutoPlanCommand - does what originally RunAutoplancommand was doing
except now it returns CommandResult and []models.ProjectCommandContext
runAutoPolicyCheckCommand - accepts CommandContext, CommandResult, and
[]models.ProjectCommandContext as arguments and runs PolicyCheckStep runner

* Refactor RunCommentCommand
* Remove BuildPolicyCheckCommand and rename StepCmdExec back to TerraformExec
* Add policy step runner logic and conftest interfaces.
* Add show step runner to policy check stage.

* Adding models.PolicyCheckCommand to buildCtx

This also means buildPlanAllCommands call buildCtx twice once with
models.PlanCommand and once with models.PolicyCheckCommand

* Adding new project_command_builder that supports policy_check

* Refactoring PolicyCheck specific logic into a PolicyCheckProjectCommandBuilder

* Moving events.CommandContext to models.CommandContext this will allow me
to remove buildCtx method and move ProjectCommandContext creation into
models package

* Policy Owners might be different types, for that reason we are
refactoring Owners into its own struct with specific keys defining
different owner types

Co-authored-by: Nish Krishnan <nishk@lyft.com>
Co-authored-by: Nish Krishnan <nishkrishnan@users.noreply.github.com>
2021-02-10 18:13:44 -08:00
Gerald Barker
1137a82c60 Add the ability to disable Atlantis locking a repo (#1340)
* Add the ability to disable Atlantis locking a repo

* Fix incorrect logic when creating locking Client

Co-authored-by: kbaldyga <kbaldyga@gmail.com>

* Add tests for noOpLocker to improve coverage

Co-authored-by: Gerald Barker <geraldbarker@mail.com>
Co-authored-by: kbaldyga <kbaldyga@gmail.com>
2021-01-14 10:20:27 -05:00
Istvan Tapaszto
68e20b1dc1 Fixing AutoMerge issue with Azure DevOps (#1289)
* Getting Azure DevOps user id on the fly

* mcdafydd/go-azuredevops module version increased

* Additional errorhandling

* Additional errorhandling Part2

* Doc update:  Access permission requirement

* Fixing modules.txt

* Fixing modules.txt

* Modules.txt fixed

* AzureDevops dependencies committed to vendor

* Fixing AzureDevOpsClient tests

* Fixing invalid bitbucket references in docs

* Fixing modules.txt

* Fixing go.mod

Co-authored-by: Tapaszto, Istvan <istvan.tapaszto@msciintegration.onmicrosoft.com>
2021-01-13 09:01:06 -05:00
Nish Krishnan
1513ee6421 Add support for fetching gh app user. (#30) (#1334)
* Add support for fetching gh app user. (#30)

* Upgrade pegomock.

* go mod vendor.
2021-01-05 15:21:31 -08:00
Sarvar Muminov
3456dc934b Add pre workflow custom hooks to run scripts before workflow execution(plan, apply, etc) (#1255)
* Updated runatlantis.io/docs to have `pre-workflow-hooks` use cases and examples
2020-12-14 15:19:52 -05:00
Gerald Barker
9a0cfd3c53 Set ApplyDisabled on CommentParser to fix help output 2020-11-01 22:58:11 +00:00
Gerald Barker
d2610a78af Add Option to globally disable apply (#1230)
* Add Option to globally disable apply

Co-authored-by: Gerald Barker <geraldbarker@mail.com>
2020-10-27 21:01:39 -07:00
dmattia
d1fe029438 Added configurable parallelism pool size 2020-09-03 10:51:40 -05:00
Luke Kysow
cd37563857 Merge pull request #1159 from runatlantis/disable-autoplan
Disable autoplan global flag
2020-08-18 15:59:59 -07:00
ValdirGuerra
34f9f3f348 Add support for disable autoplan from server config 2020-08-18 15:55:22 -07:00
Quan Hoang
54e3dc2ef0 Skip cloning PR repository in case of no projects configured in repo config file were changed 2020-08-18 15:48:05 -07:00
Luke Kysow
8ac19e4017 Deprecate --repo-whitelist for --repo-allowlist 2020-07-25 23:50:09 -07:00
Luke Kysow
4455e8b050 Merge pull request #1091 from runatlantis/unlock-cmd
Unlock cmd
2020-06-23 21:54:08 -07:00
Paris Morali
aed8d22b52 Implement atlantis unlock
This command is run on a pr and deletes all locks for the pr
2020-06-23 20:42:03 -07:00
Luke Kysow
875abf1362 Refactoring to github app code
- rename gh-app-key to gh-app-key-file for clarity
- change git credentials writer to append a line if there is an existing
.git-credentials file and in the case of the github app to replace the
old github app line
- removed automatically setting --write-git-creds to true when using a
github app and instead requiring this is set specifically
2020-06-19 11:41:44 -07:00
rob
011d3f8229 Test against a live repo, fix accordingly
more docs, add installation step
2020-06-03 20:25:11 -04:00
rob
227ce9cbf4 Upgrade to github/v31 for CompleteAppManifest
split fixtures out elsewhere, add working dir test
2020-06-03 20:18:13 -04:00
Roberto Hidalgo
199cdfe192 Play around with github app credentials 2020-06-03 20:16:24 -04:00
Mark Brennan
1269c8f1a5 Fixed Azure URL parameter for WriteGitCreds
The AzureDevopsUser, AzureDevopsToken, and the AzureDevopsURL are combined
to create the .git-credentials file.
When supplying the full FQDN, https://dev.azure.com, https://
is written twice to the .git-credentials file.
2020-06-02 13:20:44 -04:00
Christopher Ketchum
88e397ed6d vcs/github_client: add logging around github API calls (#1042) 2020-06-01 16:42:03 -07:00
CJ Ketchum
d7ce63742e Add test for plan-draft behavior 2020-05-25 16:45:38 -07:00
Christopher Ketchum
c300dee745 Add flag to toggle autoplanning on draft PRs 2020-05-25 16:28:55 -07:00
Luke Kysow
909723f22e Merge pull request #1051 from runatlantis/draining
Support graceful shutdown
2020-05-25 15:09:25 -07:00
Luke Kysow
78b1ea25d5 Refactor draining feature
- trigger on SIGTERM/INT rather than HTTP POST
- remove atlantis drain command
- refactor into generic status controller
2020-05-25 15:03:08 -07:00
Marc Barlo
bebfdcaeef Add back the parallel_plan repo cfg option
+ Default parallel plans breaks in a lot of autoplan scenarios i.e. with shared workspaces
+ Added a set of e2e tests to check parallel plans and applies
+ Also added an option to the Terraform client to turn off the plugin cache. This was breaking the e2e test suite (never seen this error in practice)
2020-05-07 22:14:04 -07:00
Marc Barlo
4d1899f032 Remove pool size option, set default to 15 2020-05-05 17:33:52 -07:00
Benoit BERAUD
c8bbad6de7 Add even more tests 2020-05-05 16:17:43 +02:00
Benoit BERAUD
6d42a56747 Move drainage checks to the async command runner 2020-05-05 16:15:24 +02:00
Benoit BERAUD
e64fbad5a3 Add drain operation + endpoint to clean properly the server before shutdown 2020-05-05 16:15:24 +02:00
Marc Barlo
d078357d65 Merge branch 'master' of github.com:runatlantis/atlantis into parallel-plans-upstream 2020-05-04 17:19:34 -07:00
David McPike
c8b2252704 Add VCSClient to server ProjectLocker and tests 2020-04-24 22:59:24 -05:00
Luke Kysow
80347f4c1d Merge remote-tracking branch 'origin/master' into hide-comments 2020-04-15 21:47:58 -07:00
Mike Hume
35b6a1bdb2 Merge branch 'wrapped-default' into long-folding 2020-03-29 15:36:53 -07:00
CJ Ketchum
bc545844d3 Update autoplan so commit status is set only after finding projects (resolves #954) 2020-03-29 15:12:12 -07:00
Mike Hume
62d3522d33 Adding --fold-long-output flag to toggle wrapped default 2020-02-18 01:48:28 -08:00
Marc Barlo
f0c483d7eb Add wait group for parallel plans 2020-02-07 14:30:02 -08:00
Sam Park
782501b8e9 Add a flag to control hiding behavior 2020-01-24 22:09:29 -08:00
Josh Soref
2cf5b0a42a Spelling (#902)
Spelling fixes
2020-01-20 12:46:00 -06:00
Luke Jolly
18208abdfc Added flag --silence-fork-pr-errors 2020-01-20 10:30:14 -06:00
Luke Kysow
ec92e43d4b Refactor --vcs-status-name flag. 2020-01-20 10:16:59 -06:00
Tim Birkett
d6cfe5b20e Add status-name command line arg, config and tests 2020-01-20 10:11:21 -06:00
Luke Kysow
823263094c Merge pull request #903 from runatlantis/download-url
Add `--tf-download-url` flag
2020-01-20 09:22:53 -06:00
Luke Kysow
84e41ce110 Refactor -tf-download-url flag changes.
* Fix bad ordering of args calling NewClient()
* Make error messages clearer
2020-01-20 09:19:54 -06:00
Cullen McDermott
d4362ffec3 Add --tf-download-url configuration option 2020-01-20 09:19:54 -06:00
Andrew Jeffree
27c13036a0 Fix WriteGitCreds for BitBucket
The default BitbucketBaseURL value if not set by the user is
"https://api.bitbucket.org" which does not actually work with git.
2019-12-18 10:38:46 +11:00
Luke Kysow
fed2f59b85 Merge pull request #813 from runatlantis/azdo
Small refactoring to azure devops support
2019-10-25 18:11:15 -07:00