mirror of
https://github.com/0rangebananaspy/authelia.git
synced 2024-09-14 22:47:21 +07:00
74a7e96409
* ci: add integration containers for duo and haproxy This change utilises specific integration containers for the DuoPush and HAProxy suites. In the case of DuoPush suite specifically in dev mode the container will be built on suite startup. * ci: factorize pre-command hook and unset async on trigger steps
63 lines
1.6 KiB
Go
63 lines
1.6 KiB
Go
package suites
|
|
|
|
import (
|
|
"fmt"
|
|
"time"
|
|
)
|
|
|
|
var bypassAllSuiteName = "BypassAll"
|
|
|
|
func init() {
|
|
dockerEnvironment := NewDockerEnvironment([]string{
|
|
"internal/suites/docker-compose.yml",
|
|
"internal/suites/BypassAll/docker-compose.yml",
|
|
"internal/suites/example/compose/authelia/docker-compose.backend.{}.yml",
|
|
"internal/suites/example/compose/authelia/docker-compose.frontend.{}.yml",
|
|
"internal/suites/example/compose/nginx/backend/docker-compose.yml",
|
|
"internal/suites/example/compose/nginx/portal/docker-compose.yml",
|
|
"internal/suites/example/compose/httpbin/docker-compose.yml",
|
|
"internal/suites/example/compose/smtp/docker-compose.yml",
|
|
})
|
|
|
|
setup := func(suitePath string) error {
|
|
if err := dockerEnvironment.Up(); err != nil {
|
|
return err
|
|
}
|
|
|
|
return waitUntilAutheliaIsReady(dockerEnvironment, bypassAllSuiteName)
|
|
}
|
|
|
|
displayAutheliaLogs := func() error {
|
|
backendLogs, err := dockerEnvironment.Logs("authelia-backend", nil)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
fmt.Println(backendLogs)
|
|
|
|
frontendLogs, err := dockerEnvironment.Logs("authelia-frontend", nil)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
fmt.Println(frontendLogs)
|
|
|
|
return nil
|
|
}
|
|
|
|
teardown := func(suitePath string) error {
|
|
return dockerEnvironment.Down()
|
|
}
|
|
|
|
GlobalRegistry.Register(bypassAllSuiteName, Suite{
|
|
SetUp: setup,
|
|
SetUpTimeout: 5 * time.Minute,
|
|
OnSetupTimeout: displayAutheliaLogs,
|
|
OnError: displayAutheliaLogs,
|
|
TestTimeout: 1 * time.Minute,
|
|
TearDown: teardown,
|
|
TearDownTimeout: 2 * time.Minute,
|
|
Description: "This suite has been created to test Authelia with a bypass policy on all resources",
|
|
})
|
|
}
|