* Add initial Gitea client structure
* Add various missing config flags
* initial gitea support added
* Fix some post-merge issues
* Replace HidePrevCommandComments by version from @florianbeisel
* Update mocks
* feat: add Webhook Signature Verification
This changes adds support for Gitea Webhook Signatures by wrapping the
function from the Gitea SDK and calling it from `handleGiteaPost()`.
* fix: use release version in go.mod
1.22 as in the previous go.mod is a development version. When referencing
a minimum release version the correct format is 1.22.0
* Set default Gitea url to cloud.gitea.com
* Fix and Add tests for Gitea
* Fix missing copyright header
* Changed comment to reflect no max comment length
Apparently there's no max comment length in Gitea at this point in time.
* Implement GetCloneURL()
* Decode Base64 before passing on downloaded file content
* Enable Gitea client as API Client
* Remove unneded comments
* Remove old redundant file
* fix: invalid version number in go.mod
* fix: remove unnecessary type conversions
* fix: removed unused function
* fix: remove unnecessary type conversion of decodedData
* fix: fixes some tests
* Correct gitea.com URL
* Add Gitea to website docs
* fix: TestPost_UnsupportedGiteaEvent
* revert version downgrades
* docs: add Gitea documentation to Guide section
* docs: fix copy paste mistake
* Update cmd/server_test.go
Co-authored-by: nitrocode <7775707+nitrocode@users.noreply.github.com>
* Clarify usage msg for --gitea-base-url
* Apply suggestions from code review
Co-authored-by: nitrocode <7775707+nitrocode@users.noreply.github.com>
* Turn ebreak number into const with comments
* Add --gitea-page-size server argument
Defaults to 30 based on https://docs.gitea.com/1.18/advanced/config-cheat-sheet#api-api
* Fix broken test
* Fix event parser and comment parser
* Add missing app permission to docs
* Make Gitea client conform to updated interface
* Update server/events/vcs/gitea/client.go
Co-authored-by: Simon Heather <32168619+X-Guardian@users.noreply.github.com>
* Remove no longer needed logger
* Add extra logging statements for Gitea client
* Add debug statements
---------
Co-authored-by: Florian Beisel <florian@pacey.me>
Co-authored-by: Florian Beisel <florian@beisel.it>
Co-authored-by: PePe Amengual <jose.amengual@gmail.com>
Co-authored-by: nitrocode <7775707+nitrocode@users.noreply.github.com>
Co-authored-by: Rui Chen <rui@chenrui.dev>
Co-authored-by: Simon Heather <32168619+X-Guardian@users.noreply.github.com>
* fix(deps): update module github.com/google/go-github/v57 to v58 in go.mod
* Update remaining go-github to v58
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Luke Massa <lmassa@tripadvisor.com>
* Fix Hide Previous Plan Comments
* Update GitLab client tests
* Update GitLab client test
* Update github client test
* Add nolint: errcheck to test
* format github_client.go
* fix(deps): update module github.com/petergtz/pegomock/v3 to v4 in go.mod
* remove pegomock generate m option, which is not support after v4
* make regen-mocks
* replace pegomock v4 primitive eq/matchers
* convert pegomock v4 Eq/Any matchers
* remove custom models.Repo matcher
* pegomock v4 cannot use result method args
ref https://github.com/petergtz/pegomock/issues/123
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat: state rm
* review feedback
* fix conflict for pegomock generation code
* adopt state command into allow-commands
* fix conflicts
* fix: state rm works on workspace
* notify import/state rm discard plan file
* fix lint
* use repeat instead warning for re-plan
* perl -pi -e 's!\* 🔁 plan file was discarded. to!🚮 A plan file was discarded. Re-plan would be required before applying.\n\n\* 🔁 To!g' server/**/*
* follow main branch
* disable pegomock --use-experimental-model-gen, cause random fail by segv
* make regen-mocks
* fix mock code which uses non experimental pegomock codes
* Moved CommandContext and CommandResult to models (#193)
* Moved CommandContext and CommandResult to models
* move from models to command
rename CommandContext -> Context
rename CommandResult -> Result
* moved command related helpers into command package
* move ProjectCommandContext and ProjectResult to command/project package
* move project command context and project result
* revert unrelated code
* move tests
* fix left over
* fix linting
* fix tests
* remove unused import
* fix project context dependencies
* fix depenedecies
* fix typo
* add .devcontainer to .gitignore
* allow AzureDevOps host to be specified in the user_config
* fix spacing issues
* gofmt
* fixes to cmd and update to approach
* add specific self host fixtures
* add specific self host parser tests
* update code to azure self hosted devops
* go fmt
Co-authored-by: atlantisbot <lkysow+atlantis@gmail.com>
* 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>