diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 56a252f5..4a799fb8 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -24,28 +24,28 @@ steps: - "build" key: "build-docker" -# - wait: -# if: build.branch == "master" || build.branch =~ /^v/ -# -# - 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/ -# -# - label: ":docker: Deploy Manifests" -# command: "authelia-scripts docker push-manifest" -# branches: "master v*" -# env: -# DOCKER_CLI_EXPERIMENTAL: "enabled" -# -# - label: ":github: Deploy Artifacts" -# command: ".buildkite/steps/ghartifacts.sh" -# agents: -# upload: "fast" -# depends_on: "build-docker" -# if: build.tag != null \ No newline at end of file + - wait: + if: build.branch == "master" || build.branch =~ /^v/ + + - 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/ + + - label: ":docker: Deploy Manifests" + command: "authelia-scripts docker push-manifest" + branches: "master v*" + env: + DOCKER_CLI_EXPERIMENTAL: "enabled" + + - label: ":github: Deploy Artifacts" + command: ".buildkite/steps/ghartifacts.sh" + agents: + upload: "fast" + depends_on: "build-docker" + if: build.tag != null \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 211b4745..00000000 --- a/.travis.yml +++ /dev/null @@ -1,133 +0,0 @@ -language: go - -required: sudo - -go: - - "1.13" - -services: - - docker - -addons: - chrome: stable - apt: - sources: - - google-chrome - packages: - - google-chrome-stable - -install: - - export PATH=$PATH:./cmd/authelia-scripts/:/tmp - - source bootstrap.sh - -jobs: - include: - - stage: build & test - before_script: - - curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash - - nvm install v12 && nvm use v12 - - go mod download - script: - - authelia-scripts --log-level debug ci - - # Run all suites in a dedicated container - - &e2e-test - stage: end-to-end suite tests - env: - - SUITE_NAME=BypassAll - before_script: - # Install chrome driver - # TODO(c.michaud): this could be done in authelia-scripts instead for devs to not do the install themselves. - # or even provide a docker image with a selenium server. - - wget -N https://chromedriver.storage.googleapis.com/78.0.3904.70/chromedriver_linux64.zip -P ~/ - - unzip ~/chromedriver_linux64.zip -d ~/ - - rm ~/chromedriver_linux64.zip - - sudo mv -f ~/chromedriver /usr/bin/chromedriver - - sudo chmod +x /usr/bin/chromedriver - - sudo ln -s /usr/bin/google-chrome-stable /usr/bin/chromium-browser - - go mod download - script: - # Run the suite - - authelia-scripts --log-level debug suites test $SUITE_NAME --headless - # TODO(c.michaud): check if all suites are listed based on `authelia-scripts suites list` command. - - <<: *e2e-test - env: - - SUITE_NAME=Docker - - <<: *e2e-test - env: - - SUITE_NAME=DuoPush - - <<: *e2e-test - env: - - SUITE_NAME=HAProxy - - <<: *e2e-test - env: - - SUITE_NAME=HighAvailability - - <<: *e2e-test - env: - - SUITE_NAME=Kubernetes - - <<: *e2e-test - env: - - SUITE_NAME=LDAP - - <<: *e2e-test - env: - - SUITE_NAME=Mariadb - - <<: *e2e-test - env: - - SUITE_NAME=NetworkACL - - <<: *e2e-test - env: - - SUITE_NAME=Postgres - - <<: *e2e-test - env: - - SUITE_NAME=ShortTimeouts - - <<: *e2e-test - env: - - SUITE_NAME=Standalone - - <<: *e2e-test - env: - - SUITE_NAME=Traefik - - - &build-images - stage: build images - if: branch = "master" && type != "pull_request" || branch =~ /^v/ - env: - - ARCH=amd64 - script: - - while sleep 9m; do echo '===== Prevent build from terminating ====='; done & - - authelia-scripts docker build --arch=$ARCH - - kill %1 - after_success: - - authelia-scripts docker push-image --arch=$ARCH - before_deploy: - - docker create --name authelia-binary authelia/authelia:${TRAVIS_TAG:1}-$ARCH - - docker cp authelia-binary:/usr/app/authelia ./authelia-linux-$ARCH - - docker cp authelia-binary:/usr/app/public_html ./ - - 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 - deploy: - provider: releases - api_key: "$GITHUB_API_KEY" - file_glob: true - file: "authelia-linux-$ARCH.tar.zst*" - skip_cleanup: true - on: - tags: true - - <<: *build-images - env: - - ARCH=arm32v7 - - <<: *build-images - env: - - ARCH=arm64v8 - - stage: deploy manifests - if: branch = "master" && type != "pull_request" || branch =~ /^v/ - env: - - DOCKER_CLI_EXPERIMENTAL=enabled - script: - - authelia-scripts docker push-manifest - -notifications: - email: - recipients: - - clement.michaud34@gmail.com - on_success: change - on_failure: always diff --git a/README.md b/README.md index 099c0097..c7e488ed 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,12 @@
- [![license](https://img.shields.io/badge/license-Apache%202.0-green.svg)][Apache 2.0] - [![Build](https://travis-ci.org/authelia/authelia.svg?branch=master)](https://travis-ci.org/authelia/authelia) - [![Gitter](https://img.shields.io/gitter/room/badges/shields.svg)](https://gitter.im/authelia/general?utm_source=share-link&utm_medium=link&utm_campaign=share-link) + [![Docker Tag](https://images.microbadger.com/badges/version/authelia/authelia.svg)](https://microbadger.com/images/authelia/authelia) + [![Docker Size](https://img.shields.io/microbadger/image-size/authelia/authelia?style=flat-square&=blue&logo=docker)](https://microbadger.com/images/authelia/authelia) + [![GitHub Release](https://img.shields.io/github/release/authelia/authelia.svg?style=flat-square&color=blue&logo=github&logoColor=FFFFFF)](https://github.com/authelia/authelia/releases) + [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg?style=flat-square)][Apache 2.0] + [![Build](https://img.shields.io/buildkite/d6543d3ece3433f46dbe5fd9fcfaf1f68a6dbc48eb1048bc22/master?style=flat-square&color=brightgreen)](https://buildkite.com/authelia/authelia) + [![Gitter](https://img.shields.io/gitter/room/badges/shields.svg?style=flat-square&color=brightgreen)](https://gitter.im/authelia/general?utm_source=share-link&utm_medium=link&utm_campaign=share-link) **Authelia** is an open-source authentication and authorization server providing 2-factor authentication and single sign-on (SSO) for your @@ -56,7 +59,7 @@ For more details about the features, follow [Features](./docs/features.md). ## Proxy support -Authelia works in combination with [nginx] or [Traefik] and [HAProxy]. It can be deployed on bare metal with +Authelia works in combination with [nginx], [Traefik] or [HAProxy]. It can be deployed on bare metal with Docker or directly in [Kubernetes].
diff --git a/cmd/authelia-scripts/cmd_docker.go b/cmd/authelia-scripts/cmd_docker.go
index d01b14ae..cb12ce9e 100644
--- a/cmd/authelia-scripts/cmd_docker.go
+++ b/cmd/authelia-scripts/cmd_docker.go
@@ -18,16 +18,12 @@ var supportedArch = []string{"amd64", "arm32v7", "arm64v8", "CI"}
var defaultArch = "amd64"
var buildkite = os.Getenv("BUILDKITE")
var buildkiteQEMU = os.Getenv("BUILDKITE_AGENT_META_DATA_QEMU")
-
-//TODO(nightah): Uncomment when turning off Travis
-//var ciBranch = os.Getenv("BUILDKITE_BRANCH")
-//var ciPullRequest = os.Getenv("BUILDKITE_PULL_REQUEST")
-//var ciTag = os.Getenv("BUILDKITE_TAG")
+var ciBranch = os.Getenv("BUILDKITE_BRANCH")
+var ciPullRequest = os.Getenv("BUILDKITE_PULL_REQUEST")
+var ciTag = os.Getenv("BUILDKITE_TAG")
var dockerTags = regexp.MustCompile(`v(?P