diff --git a/.buildkite/hooks/pre-artifact b/.buildkite/hooks/pre-artifact index f14eaf59d..8bfaab03f 100755 --- a/.buildkite/hooks/pre-artifact +++ b/.buildkite/hooks/pre-artifact @@ -4,13 +4,6 @@ set +u DOCKER_IMAGE=authelia/authelia -if [[ $BUILDKITE_COMMAND == "authelia-scripts --log-level debug ci" ]]; -then - echo "--- :go::node: Saving artifacts for :chrome::selenium: Integration tests" - tar -I 'zstdmt -T0 -12' -cf dist.tar.zst dist - tar -I 'zstdmt -T0 -12' -cf web.tar.zst web -fi - if [[ $BUILDKITE_LABEL =~ ":docker: Build Image" ]]; then echo "--- :docker: Saving artifacts for :buildkite: :docker: :github: releases" @@ -21,6 +14,6 @@ then docker rm -f authelia-binary tar -I 'zstdmt -T0 -12' -cf authelia-linux-"${ARCH}".tar.zst authelia-linux-"${ARCH}" public_html sha256sum authelia-linux-"${ARCH}".tar.zst > authelia-linux-"${ARCH}".tar.zst.sha256 - # Saving image for push to DockerHub + # Saving image for push to docker hub docker save $DOCKER_IMAGE | zstdmt -T0 -12 > authelia-image-"${ARCH}".tar.zst fi \ No newline at end of file diff --git a/.buildkite/hooks/pre-command b/.buildkite/hooks/pre-command index d062e5fec..5f4670f59 100755 --- a/.buildkite/hooks/pre-command +++ b/.buildkite/hooks/pre-command @@ -4,12 +4,11 @@ set +u if [[ $BUILDKITE_LABEL =~ ":selenium:" ]]; then - echo "--- :twisted_rightwards_arrows::desktop_computer: Downloading build artifacts" - buildkite-agent artifact download "dist.tar.zst" . - buildkite-agent artifact download "web.tar.zst" . - echo "--- :go::node: Extracting build artifacts" - tar xf dist.tar.zst - tar xf web.tar.zst + DEFAULT_ARCH=amd64 + echo "--- :docker: Extract, load and tag build container" + buildkite-agent artifact download "authelia-image-${DEFAULT_ARCH}*" . + zstdcat authelia-image-${DEFAULT_ARCH}.tar.zst | docker load + docker tag authelia/authelia authelia:dist fi if [[ $BUILDKITE_LABEL =~ ":docker: Deploy Image" ]]; diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 4a799fb8f..455cf6b5d 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -1,28 +1,19 @@ steps: - - label: ":hammer_and_wrench: Build & Test" + - label: ":hammer_and_wrench: Unit Test" command: "authelia-scripts --log-level debug ci" - artifact_paths: - - "dist.tar.zst" - - "web.tar.zst" - key: "build" - - - wait - - - label: ":chrome: Integration Tests" - command: ".buildkite/steps/e2etests.sh | buildkite-agent pipeline upload" - key: "test" - - - wait: - if: build.branch == "master" || build.branch =~ /^v/ - label: ":docker: Image Builds" command: ".buildkite/steps/buildimages.sh | buildkite-agent pipeline upload" agents: build: "true" - branches: "master v*" + depends_on: ~ + + - wait + + - label: ":chrome: Integration Tests" + command: ".buildkite/steps/e2etests.sh | buildkite-agent pipeline upload" depends_on: - - "build" - key: "build-docker" + - "build-docker-amd64" - wait: if: build.branch == "master" || build.branch =~ /^v/ @@ -30,9 +21,6 @@ steps: - label: ":docker: Image Deployments" command: ".buildkite/steps/deployimages.sh | buildkite-agent pipeline upload" branches: "master v*" - depends_on: - - "test" - - "build-docker" - wait: if: build.branch == "master" || build.branch =~ /^v/ @@ -47,5 +35,8 @@ steps: command: ".buildkite/steps/ghartifacts.sh" agents: upload: "fast" - depends_on: "build-docker" + depends_on: + - "build-docker-amd64" + - "build-docker-arm32v7" + - "build-docker-arm64v8" if: build.tag != null \ No newline at end of file diff --git a/.buildkite/steps/buildimages.sh b/.buildkite/steps/buildimages.sh index eed81008e..aaf256ee2 100755 --- a/.buildkite/steps/buildimages.sh +++ b/.buildkite/steps/buildimages.sh @@ -10,6 +10,11 @@ do echo " - \"authelia-image-${BUILD_ARCH}.tar.zst\"" echo " - \"authelia-linux-${BUILD_ARCH}.tar.zst\"" echo " - \"authelia-linux-${BUILD_ARCH}.tar.zst.sha256\"" + if [[ "${BUILD_ARCH}" != "amd64" ]]; + then + echo " branches: \"master v*\"" + fi echo " env:" echo " "ARCH: ${BUILD_ARCH}"" + echo " key: \"build-docker-${BUILD_ARCH}\"" done \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 9f336fd5e..a4c14baf3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,7 +27,7 @@ RUN echo "Write tag ${BUILD_TAG} and commit ${BUILD_COMMIT} in binary." && \ RUN cd cmd/authelia && \ GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build -tags netgo -ldflags '-w -linkmode external -extldflags -static' -trimpath -o authelia && \ cd ../authelia-scripts && \ -GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build -ldflags '-w -linkmode external -extldflags -static' -o authelia-scripts +GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build -ldflags '-w -linkmode external -extldflags -static' -trimpath -o authelia-scripts # ======================================== # ===== Build image for the frontend ===== @@ -38,7 +38,7 @@ WORKDIR /node/src/app COPY web . # Install the dependencies and build -RUN yarn install && yarn build +RUN yarn install --frozen-lockfile && yarn build # =================================== # ===== Authelia official image ===== diff --git a/Dockerfile.CI b/Dockerfile.CI deleted file mode 100644 index ac5580e0c..000000000 --- a/Dockerfile.CI +++ /dev/null @@ -1,17 +0,0 @@ -# =================================== -# ===== Authelia CI image ===== -# =================================== -FROM alpine:3.11.2 - -RUN apk --no-cache add ca-certificates tzdata - -WORKDIR /usr/app - -COPY dist ./ - -EXPOSE 9091 - -VOLUME /etc/authelia -VOLUME /var/lib/authelia - -CMD ["./authelia", "--config", "/etc/authelia/configuration.yml"] \ No newline at end of file diff --git a/Dockerfile.arm32v7 b/Dockerfile.arm32v7 index e3f69f8a4..d2316b008 100644 --- a/Dockerfile.arm32v7 +++ b/Dockerfile.arm32v7 @@ -42,7 +42,7 @@ WORKDIR /node/src/app COPY web . # Install the dependencies and build -RUN yarn install && yarn build +RUN yarn install --frozen-lockfile && yarn build # =================================== # ===== Authelia official image ===== diff --git a/Dockerfile.arm64v8 b/Dockerfile.arm64v8 index 79138e5f1..98f29aa25 100644 --- a/Dockerfile.arm64v8 +++ b/Dockerfile.arm64v8 @@ -42,7 +42,7 @@ WORKDIR /node/src/app COPY web . # Install the dependencies and build -RUN yarn install && yarn build +RUN yarn install --frozen-lockfile && yarn build # =================================== # ===== Authelia official image ===== diff --git a/cmd/authelia-scripts/cmd_docker.go b/cmd/authelia-scripts/cmd_docker.go index cb12ce9eb..f8d15fd78 100644 --- a/cmd/authelia-scripts/cmd_docker.go +++ b/cmd/authelia-scripts/cmd_docker.go @@ -14,7 +14,7 @@ import ( var arch string -var supportedArch = []string{"amd64", "arm32v7", "arm64v8", "CI"} +var supportedArch = []string{"amd64", "arm32v7", "arm64v8"} var defaultArch = "amd64" var buildkite = os.Getenv("BUILDKITE") var buildkiteQEMU = os.Getenv("BUILDKITE_AGENT_META_DATA_QEMU") diff --git a/example/compose/authelia/Dockerfile.backend b/example/compose/authelia/Dockerfile.backend index 78e640496..eda677b84 100644 --- a/example/compose/authelia/Dockerfile.backend +++ b/example/compose/authelia/Dockerfile.backend @@ -3,8 +3,10 @@ FROM golang:1.13-alpine ARG USER_ID ARG GROUP_ID +# gcc and musl-dev are required for building go-sqlite3 RUN addgroup --gid ${GROUP_ID} dev && \ - adduser --uid ${USER_ID} -G dev -D dev + adduser --uid ${USER_ID} -G dev -D dev && \ + apk --no-cache add gcc musl-dev RUN mkdir -p /etc/authelia && chown dev:dev /etc/authelia RUN mkdir -p /var/lib/authelia && chown dev:dev /var/lib/authelia diff --git a/example/compose/authelia/docker-compose.backend.yml b/example/compose/authelia/docker-compose.backend.dev.yml similarity index 89% rename from example/compose/authelia/docker-compose.backend.yml rename to example/compose/authelia/docker-compose.backend.dev.yml index e6e45a285..4ba712f5e 100644 --- a/example/compose/authelia/docker-compose.backend.yml +++ b/example/compose/authelia/docker-compose.backend.dev.yml @@ -15,7 +15,6 @@ services: - "${GOPATH}:/go" environment: - ENVIRONMENT=dev - - CI=${CI} networks: authelianet: ipv4_address: 192.168.240.50 \ No newline at end of file diff --git a/example/compose/authelia/docker-compose.backend-dist.yml b/example/compose/authelia/docker-compose.backend.dist.yml similarity index 58% rename from example/compose/authelia/docker-compose.backend-dist.yml rename to example/compose/authelia/docker-compose.backend.dist.yml index 6f55bdda3..348846a54 100644 --- a/example/compose/authelia/docker-compose.backend-dist.yml +++ b/example/compose/authelia/docker-compose.backend.dist.yml @@ -1,9 +1,7 @@ version: "3" services: authelia-backend: - build: - context: . - dockerfile: Dockerfile.CI + image: authelia:dist environment: - ENVIRONMENT=dev restart: always diff --git a/example/compose/authelia/docker-compose.frontend.yml b/example/compose/authelia/docker-compose.frontend.dev.yml similarity index 87% rename from example/compose/authelia/docker-compose.frontend.yml rename to example/compose/authelia/docker-compose.frontend.dev.yml index a27c47773..2253a46ef 100644 --- a/example/compose/authelia/docker-compose.frontend.yml +++ b/example/compose/authelia/docker-compose.frontend.dev.yml @@ -12,7 +12,5 @@ services: volumes: - "./example/compose/authelia/resources/:/resources" - "./web:/app" - environment: - - CI=${CI} networks: - authelianet \ No newline at end of file diff --git a/example/compose/authelia/docker-compose.frontend-dist.yml b/example/compose/authelia/docker-compose.frontend.dist.yml similarity index 100% rename from example/compose/authelia/docker-compose.frontend-dist.yml rename to example/compose/authelia/docker-compose.frontend.dist.yml diff --git a/example/compose/authelia/resources/entrypoint-backend.sh b/example/compose/authelia/resources/entrypoint-backend.sh index 11d17add4..f6290ea38 100755 --- a/example/compose/authelia/resources/entrypoint-backend.sh +++ b/example/compose/authelia/resources/entrypoint-backend.sh @@ -2,17 +2,11 @@ set -x -if [ "$CI" == "true" ]; -then - echo "Use CI version of Authelia" - /resources/run-backend.sh -else - echo "Use hot reloaded version of Authelia backend" - go get github.com/cespare/reflex +echo "Use hot reloaded version of Authelia backend" +go get github.com/cespare/reflex - # Sleep 10 seconds to wait the end of npm install updating web directory - # and making reflex reload multiple times. - sleep 10 +# Sleep 10 seconds to wait the end of npm install updating web directory +# and making reflex reload multiple times. +sleep 10 - reflex -c /resources/reflex.conf -fi \ No newline at end of file +reflex -c /resources/reflex.conf \ No newline at end of file diff --git a/example/compose/authelia/resources/entrypoint-frontend.sh b/example/compose/authelia/resources/entrypoint-frontend.sh index 7e1ba2fbb..2dba2298e 100755 --- a/example/compose/authelia/resources/entrypoint-frontend.sh +++ b/example/compose/authelia/resources/entrypoint-frontend.sh @@ -2,10 +2,4 @@ set -x -if [ "$CI" == "true" ]; -then - echo "Use CI version of Authelia frontend" - yarn start -else - yarn install && yarn start -fi \ No newline at end of file +yarn install --frozen-lockfile && yarn start \ No newline at end of file diff --git a/example/compose/authelia/resources/reflex.conf b/example/compose/authelia/resources/reflex.conf index 0c8051961..1afafadc1 100644 --- a/example/compose/authelia/resources/reflex.conf +++ b/example/compose/authelia/resources/reflex.conf @@ -1 +1 @@ --r '(\.go$|go\.mod|\.sh|\.yml)' -s /resources/run-backend.sh \ No newline at end of file +-r '(\.go$|go\.mod|\.sh|\.yml)' -s /resources/run-backend-dev.sh \ No newline at end of file diff --git a/example/compose/authelia/resources/run-backend-dev.sh b/example/compose/authelia/resources/run-backend-dev.sh new file mode 100755 index 000000000..a809cf089 --- /dev/null +++ b/example/compose/authelia/resources/run-backend-dev.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +set -e + +# Build the binary +go build -o /tmp/authelia/authelia-tmp cmd/authelia/*.go +while true; +do + /tmp/authelia/authelia-tmp --config /etc/authelia/configuration.yml + sleep 10 +done \ No newline at end of file diff --git a/example/compose/authelia/resources/run-backend.sh b/example/compose/authelia/resources/run-backend.sh deleted file mode 100755 index 1fb339a8e..000000000 --- a/example/compose/authelia/resources/run-backend.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -set -e - -while /app/dist/authelia --config /etc/authelia/configuration.yml; [ $? -ne 0 ]; -do - echo "Waiting on services for Authelia" -done \ No newline at end of file diff --git a/example/compose/duo-api/Dockerfile b/example/compose/duo-api/Dockerfile index 51d227524..49cbbad84 100644 --- a/example/compose/duo-api/Dockerfile +++ b/example/compose/duo-api/Dockerfile @@ -3,7 +3,7 @@ FROM node:12-alpine WORKDIR /usr/app/src ADD package.json package.json -RUN yarn install --production --silent +RUN yarn install --frozen-lockfile --production --silent ADD duo_api.js duo_api.js diff --git a/internal/suites/Standalone/configuration.yml b/internal/suites/Standalone/configuration.yml index 0e2dbdffd..c56df9bb6 100644 --- a/internal/suites/Standalone/configuration.yml +++ b/internal/suites/Standalone/configuration.yml @@ -22,7 +22,7 @@ session: storage: local: - path: /tmp/authelia/db.sqlite3 + path: /tmp/db.sqlite3 totp: issuer: example.com diff --git a/internal/suites/Standalone/docker-compose.yml b/internal/suites/Standalone/docker-compose.yml index 305ddfc42..9231bb69f 100644 --- a/internal/suites/Standalone/docker-compose.yml +++ b/internal/suites/Standalone/docker-compose.yml @@ -4,4 +4,3 @@ services: volumes: - "./internal/suites/Standalone/configuration.yml:/etc/authelia/configuration.yml:ro" - "./internal/suites/Standalone/users.yml:/var/lib/authelia/users.yml" - - "/tmp/authelia:/tmp/authelia" diff --git a/internal/suites/docker.go b/internal/suites/docker.go index 448026cbc..2a90ba16b 100644 --- a/internal/suites/docker.go +++ b/internal/suites/docker.go @@ -2,6 +2,7 @@ package suites import ( "fmt" + "os" "os/exec" "strings" @@ -16,6 +17,15 @@ type DockerEnvironment struct { // NewDockerEnvironment create a new docker environment func NewDockerEnvironment(files []string) *DockerEnvironment { + if os.Getenv("CI") == "true" { + for i := range files { + files[i] = strings.ReplaceAll(files[i], "{}", "dist") + } + } else { + for i := range files { + files[i] = strings.ReplaceAll(files[i], "{}", "dev") + } + } return &DockerEnvironment{dockerComposeFiles: files} } diff --git a/internal/suites/suite_bypass_all.go b/internal/suites/suite_bypass_all.go index 87dbe05fc..bd7592c89 100644 --- a/internal/suites/suite_bypass_all.go +++ b/internal/suites/suite_bypass_all.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/BypassAll/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/httpbin/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_docker.go b/internal/suites/suite_docker.go index 86d307ae3..334be2364 100644 --- a/internal/suites/suite_docker.go +++ b/internal/suites/suite_docker.go @@ -9,8 +9,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/Docker/docker-compose.yml", - "example/compose/authelia/docker-compose.backend-dist.yml", - "example/compose/authelia/docker-compose.frontend-dist.yml", + "example/compose/authelia/docker-compose.backend.dist.yml", + "example/compose/authelia/docker-compose.frontend.dist.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", diff --git a/internal/suites/suite_duo_push.go b/internal/suites/suite_duo_push.go index f6442e989..e99fbc8a5 100644 --- a/internal/suites/suite_duo_push.go +++ b/internal/suites/suite_duo_push.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/DuoPush/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/duo-api/docker-compose.yml", @@ -23,7 +23,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_haproxy.go b/internal/suites/suite_haproxy.go index f3aea69af..7c7ba6c93 100644 --- a/internal/suites/suite_haproxy.go +++ b/internal/suites/suite_haproxy.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/HAProxy/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/haproxy/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_high_availability.go b/internal/suites/suite_high_availability.go index a5f43c0bd..981e643f4 100644 --- a/internal/suites/suite_high_availability.go +++ b/internal/suites/suite_high_availability.go @@ -10,8 +10,8 @@ var highAvailabilitySuiteName = "HighAvailability" var haDockerEnvironment = NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/HighAvailability/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/mariadb/docker-compose.yml", "example/compose/redis/docker-compose.yml", "example/compose/nginx/backend/docker-compose.yml", @@ -28,7 +28,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(haDockerEnvironment) + return waitUntilAutheliaBackendIsReady(haDockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_kubernetes.go b/internal/suites/suite_kubernetes.go index f22a31367..3ffd4cba0 100644 --- a/internal/suites/suite_kubernetes.go +++ b/internal/suites/suite_kubernetes.go @@ -2,6 +2,7 @@ package suites import ( "fmt" + "os" "time" "github.com/authelia/authelia/internal/utils" @@ -41,13 +42,15 @@ func init() { } } - log.Debug("Building authelia:dist image...") - if err := utils.Shell("authelia-scripts docker build --arch=CI").Run(); err != nil { - return err + log.Debug("Building authelia:dist image or use cache if already built...") + if os.Getenv("CI") != "true" { + if err := utils.Shell("authelia-scripts docker build").Run(); err != nil { + return err + } } log.Debug("Loading images into Kubernetes container...") - if err = loadDockerImages(); err != nil { + if err := loadDockerImages(); err != nil { return err } @@ -57,7 +60,7 @@ func init() { } log.Debug("Deploying thirdparties...") - if err = kubectl.DeployThirdparties(); err != nil { + if err := kubectl.DeployThirdparties(); err != nil { return err } diff --git a/internal/suites/suite_ldap.go b/internal/suites/suite_ldap.go index 66838f054..cf114a46c 100644 --- a/internal/suites/suite_ldap.go +++ b/internal/suites/suite_ldap.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/LDAP/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -27,7 +27,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_mariadb.go b/internal/suites/suite_mariadb.go index cdf46efdf..6da030298 100644 --- a/internal/suites/suite_mariadb.go +++ b/internal/suites/suite_mariadb.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/Mariadb/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_network_acl.go b/internal/suites/suite_network_acl.go index a2f6c74b4..bf809e484 100644 --- a/internal/suites/suite_network_acl.go +++ b/internal/suites/suite_network_acl.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/NetworkACL/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/squid/docker-compose.yml", @@ -26,7 +26,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_postgres.go b/internal/suites/suite_postgres.go index 26033736b..454defaaf 100644 --- a/internal/suites/suite_postgres.go +++ b/internal/suites/suite_postgres.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/Postgres/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_short_timeouts.go b/internal/suites/suite_short_timeouts.go index 394c846b5..d06f12677 100644 --- a/internal/suites/suite_short_timeouts.go +++ b/internal/suites/suite_short_timeouts.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/ShortTimeouts/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -23,7 +23,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_standalone.go b/internal/suites/suite_standalone.go index f89a7f6ad..109f21e98 100644 --- a/internal/suites/suite_standalone.go +++ b/internal/suites/suite_standalone.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/Standalone/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/nginx/portal/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/internal/suites/suite_standalone_test.go b/internal/suites/suite_standalone_test.go index b022b2cdd..9842e412f 100644 --- a/internal/suites/suite_standalone_test.go +++ b/internal/suites/suite_standalone_test.go @@ -75,7 +75,7 @@ func (s *StandaloneWebDriverSuite) TestShouldCheckUserIsAskedToRegisterDevice() password := "password" // Clean up any TOTP secret already in DB - provider := storage.NewSQLiteProvider("/tmp/authelia/db.sqlite3") + provider := storage.NewSQLiteProvider("/tmp/db.sqlite3") require.NoError(s.T(), provider.DeleteTOTPSecret(username)) // Login one factor diff --git a/internal/suites/suite_traefik.go b/internal/suites/suite_traefik.go index a5ac6c99f..c5017e9f5 100644 --- a/internal/suites/suite_traefik.go +++ b/internal/suites/suite_traefik.go @@ -11,8 +11,8 @@ func init() { dockerEnvironment := NewDockerEnvironment([]string{ "docker-compose.yml", "internal/suites/Traefik/docker-compose.yml", - "example/compose/authelia/docker-compose.backend.yml", - "example/compose/authelia/docker-compose.frontend.yml", + "example/compose/authelia/docker-compose.backend.{}.yml", + "example/compose/authelia/docker-compose.frontend.{}.yml", "example/compose/nginx/backend/docker-compose.yml", "example/compose/traefik/docker-compose.yml", "example/compose/smtp/docker-compose.yml", @@ -25,7 +25,7 @@ func init() { return err } - return waitUntilAutheliaIsReady(dockerEnvironment) + return waitUntilAutheliaBackendIsReady(dockerEnvironment) } onSetupTimeout := func() error { diff --git a/web/yarn.lock b/web/yarn.lock index a0ba192de..e09f37b03 100644 --- a/web/yarn.lock +++ b/web/yarn.lock @@ -1805,11 +1805,6 @@ abab@^2.0.0: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" @@ -1970,19 +1965,11 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -aproba@^1.0.3, aproba@^1.1.1: +aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -3079,11 +3066,6 @@ console-browserify@^1.1.0: resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" @@ -3538,7 +3520,7 @@ debug@=3.1.0: dependencies: ms "2.0.0" -debug@^3.0.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.1, debug@^3.2.5: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -3588,11 +3570,6 @@ deep-equal@^1.0.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -3652,11 +3629,6 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" @@ -3675,11 +3647,6 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - detect-newline@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" @@ -4792,13 +4759,6 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -4851,20 +4811,6 @@ functions-have-names@^1.2.0: resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.0.tgz#83da7583e4ea0c9ac5ff530f73394b033e0bf77d" integrity sha512-zKXyzksTeaCSw5wIX79iCA40YAa6CJMJgNg9wdkU/ERBrIdPSimPICYiLp65lRbSBqtiHql/HZfS2DyI/AH6tQ== -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" @@ -5062,11 +5008,6 @@ has-symbols@^1.0.0, has-symbols@^1.0.1: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -5325,7 +5266,7 @@ hyphenate-style-name@^1.0.3: resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48" integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ== -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: +iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -5361,13 +5302,6 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" - ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" @@ -5459,7 +5393,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.5, ini@~1.3.0: +ini@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -7003,21 +6937,6 @@ minimist@~0.0.1: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -7050,7 +6969,7 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -7150,15 +7069,6 @@ nearley@^2.7.10: randexp "0.4.6" semver "^5.4.1" -needle@^2.2.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" - integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -7241,22 +7151,6 @@ node-notifier@^5.4.2: shellwords "^0.1.1" which "^1.3.0" -node-pre-gyp@*: - version "0.14.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" - integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - node-releases@^1.1.29, node-releases@^1.1.42: version "1.1.43" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.43.tgz#2c6ca237f88ce11d49631f11190bb01f8d0549f2" @@ -7264,14 +7158,6 @@ node-releases@^1.1.29, node-releases@^1.1.42: dependencies: semver "^6.3.0" -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - normalize-package-data@^2.3.2: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -7319,26 +7205,6 @@ normalize-url@^3.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-packlist@^1.1.6: - version "1.4.7" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848" - integrity sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -7346,16 +7212,6 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - nth-check@^1.0.2, nth-check@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" @@ -7576,11 +7432,6 @@ os-browserify@^0.3.0: resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - os-locale@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" @@ -7590,19 +7441,11 @@ os-locale@^3.0.0: lcid "^2.0.0" mem "^4.0.0" -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: +os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" @@ -8884,16 +8727,6 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - react-app-polyfill@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.5.tgz#59c7377a0b9ed25692eeaca7ad9b12ef2d064709" @@ -9125,7 +8958,7 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== @@ -9465,7 +9298,7 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: +rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -9611,7 +9444,7 @@ selfsigned@^1.9.1: dependencies: node-forge "0.9.0" -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -9673,7 +9506,7 @@ serve-static@1.14.1: parseurl "~1.3.3" send "0.17.1" -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= @@ -10082,7 +9915,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: +string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -10207,11 +10040,6 @@ strip-json-comments@^3.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - style-loader@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.0.tgz#1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82" @@ -10292,19 +10120,6 @@ tapable@^1.0.0, tapable@^1.1.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== -tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - terser-webpack-plugin@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz#61b18e40eaee5be97e771cdbb10ed1280888c2b4" @@ -11007,13 +10822,6 @@ which@^1.2.9, which@^1.3.0, which@^1.3.1: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -11250,7 +11058,7 @@ xtend@^4.0.0, xtend@~4.0.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==