James Elliott
eaddf11df6
refactor: http verbs etc ( #5248 )
...
Signed-off-by: James Elliott <james-d-elliott@users.noreply.github.com>
2023-04-15 15:03:14 +10:00
James Elliott
36e817df92
test(suites): load environment into suites ( #4762 )
...
* test(suites): load environment into suites
* test(suites): default setup suite
* test(suites): create base suite
* test(suites): fix nil ptr
* test(suites): add logging
* test: fix missing devworkflow path
* refactor: apply suggestions
* refactor: log
* fix: dev workflow requires env file to trigger vite hmr
* fix(suites): fix dynamic configuration in dev workflow for all proxies
* refactor: apply final suggestions
* fix: pass log level to suites
* fix(suites): include pathprefix to prevent react router basename issues
* fix: missing setup logging calls
* fix: gate suite setup funcs
* test: fix lint
* test: fix tmp dir
* fix(suites): fix gitignore of .env.development with vite hmr
Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2023-01-25 15:11:05 +11:00
Manuel Nuñez
8b29cf7ee8
feat(session): multiple session cookie domains ( #3754 )
...
This adds support to configure multiple session cookie domains.
Closes #1198
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2023-01-12 21:57:44 +11:00
Amir Zarrinkafsh
cac8919f97
test: add redis restart test back to traefik2 suite ( #3298 )
...
* test: add redis restart test back to traefik2 suite
* refactor(suites): mustpress -> mustinput for totp
* refactor(suites): rename suites for test ordering
2022-05-04 11:01:36 +10:00
James Elliott
1772a83190
refactor: apply godot recommendations ( #2839 )
2022-01-31 16:25:15 +11:00
Amir Zarrinkafsh
83488d52a6
refactor(suites): replace selenium with go-rod ( #2534 )
...
* refactor(suites): replace selenium with go-rod
This change replaces [tebeka/selenium](https://github.com/tebeka/selenium ) with [go-rod](https://github.com/go-rod/rod ).
We no longer have a chromedriver/external driver dependency to utilise Selenium as we instead utilise the Chrome Dev Protocol to communicate with the browser.
Rod [documents](https://go-rod.github.io/#/why-rod ) benefits of choosing the library as opposed to the available alternatives.
2021-11-06 00:14:42 +11:00
James Elliott
a0248cd096
test(suites): short mode skip suites testing ( #1823 )
...
This PR changes the suites tests so if go test -short is used, they are skipped per go standards and a message is displayed. Additionally removed some redundant types from suite_high_availability_test.go and adjusted a warning about a nil req var.
2021-03-14 18:08:26 +11:00
James Elliott
e041143f87
feat(session): add redis sentinel provider ( #1768 )
...
* feat(session): add redis sentinel provider
* refactor(session): use int for ports as per go standards
* refactor(configuration): adjust tests and validation
* refactor(configuration): add err format consts
* refactor(configuration): explicitly map redis structs
* refactor(session): merge redis/redis sentinel providers
* refactor(session): add additional checks to redis providers
* feat(session): add redis cluster provider
* fix: update config for new values
* fix: provide nil certpool to affected tests/mocks
* test: add additional tests to cover uncovered code
* docs: expand explanation of host and nodes relation for redis
* ci: add redis-sentinel to suite highavailability, add redis-sentinel quorum
* fix(session): sentinel password
* test: use redis alpine library image for redis sentinel, use expose instead of ports, use redis ip, adjust redis ip range, adjust redis config
* test: make entrypoint.sh executable, fix entrypoint.sh if/elif
* test: add redis failover tests
* test: defer docker start, adjust sleep, attempt logout before login, attempt visit before login and tune timeouts, add additional logging
* test: add sentinel integration test
* test: add secondary node failure to tests, fix password usage, bump test timeout, add sleep
* feat: use sentinel failover cluster
* fix: renamed addrs to sentineladdrs upstream
* test(session): sentinel failover
* test: add redis standard back into testing
* test: move redis standalone test to traefik2
* fix/docs: apply suggestions from code review
2021-03-10 10:03:05 +11:00
Amir Zarrinkafsh
b27c1fbae9
[CI] Add PathPrefix integration test suite ( #1052 )
...
Add a suite for testing the PathPrefix feature implemented earlier to serve authelia under a multi-purpose domain.
Co-authored-by: Clément Michaud <clement.michaud34@gmail.com>
2020-05-27 13:55:44 +02:00
Amir Zarrinkafsh
1600e0f7da
[CI] Add wsl linter ( #980 )
...
* [CI] Add wsl linter
* Implement wsl recommendations
Co-authored-by: Clément Michaud <clement.michaud34@gmail.com>
2020-05-05 21:35:32 +02:00
Amir Zarrinkafsh
de2c5836fd
[Buildkite] Introduce CI linting with golangci-lint and reviewdog ( #832 )
...
* [Buildkite] Introduce CI linting with golangci-lint and reviewdog
* Initial pass of golangci-lint
* Add gosimple (megacheck) recommendations
* Add golint recommendations
* [BUGFIX] Migrate authentication traces from v3 mongodb
* Add deadcode recommendations
* [BUGFIX] Fix ShortTimeouts suite when run in dev workflow
* Add unused recommendations
* Add unparam recommendations
* Disable linting on unfixable errors instead of skipping files
* Adjust nolint notation for unparam
* Fix ineffectual assignment to err raised by linter.
* Export environment variable in agent hook
* Add ineffassign recommendations
* Add staticcheck recommendations
* Add gocyclo recommendations
* Adjust ineffassign recommendations
Co-authored-by: Clement Michaud <clement.michaud34@gmail.com>
2020-04-09 11:05:17 +10:00
Clement Michaud
6f1ec2094d
Fix HighAvailability suite randomness.
2019-12-08 16:41:28 +01:00
Clement Michaud
3d20142292
Allow administrator to provide a Google Analytics tracking ID.
...
Providing a GA tracking ID allows administrators to analyze
how the portal is used by their users in large environments,
i.e., with many users.
This will make even more sense when we have users and admins
management interfaces.
2019-12-08 14:31:48 +01:00
Clement Michaud
336276be98
Be able to run scenarii in isolation for each suite.
2019-12-06 07:11:54 +01:00
Clement Michaud
b89f63e9c1
Fix and parallelize integration tests.
2019-12-05 11:05:24 +01:00
Clement Michaud
c78a732c6a
Rewrite and fix remaining suites in Go.
2019-12-05 11:05:24 +01:00
Clement Michaud
3b2d733367
Move source code into internal directory to follow standard project layout.
...
https://github.com/golang-standards/project-layout
2019-11-17 16:30:33 +01:00