Commit Graph

192 Commits

Author SHA1 Message Date
Amir Zarrinkafsh
91a2cc1caa
ci(buildkite): add notification webhook for blocked PRs (#2077) 2021-06-10 13:23:23 +10:00
Amir Zarrinkafsh
2b95acb82a
ci(buildkite): add tag for highavailability suite (#2038)
Allows granular control for node assignment on the high availability testing suite.
2021-05-27 14:23:56 +10:00
James Elliott
9d6ad5aa94
release: v4.29.4 (#2025) 2021-05-24 09:26:08 +10:00
James Elliott
70002108bd
release: v4.29.3 (#2015) 2021-05-21 22:34:37 +10:00
James Elliott
40fc1cdc6d
release: v4.29.2 (#1998) 2021-05-11 11:21:15 +10:00
James Elliott
cf63f84753
release: v4.29.1 (#1985) 2021-05-07 12:22:01 +10:00
Clément Michaud
4e8d472e46
release: v4.29.0 (#1972)
Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-05-05 11:46:07 +10:00
Amir Zarrinkafsh
3d08e03592
ci(buildkite): log ghcr id on branch tag removal (#1929) 2021-04-18 14:20:45 +10:00
James Elliott
c16edda893
release: v4.28.2 (#1928) 2021-04-18 11:01:39 +10:00
James Elliott
2f1e45071a
release: v4.28.1 (#1924) 2021-04-16 12:20:31 +10:00
Clément Michaud
7c18081f57
ci: include version in the name of tar.gz artifacts (#1919)
This makes sure the version is included in GitHub artifacts.

Fix #1918

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2021-04-15 17:56:32 +10:00
Clément Michaud
80216b9474
release: 4.28.0 (#1910) 2021-04-13 21:10:56 +10:00
James Elliott
d33d6c2f00
ci: add yamllint (#1895)
This change implements yamllint and adjusts all yaml files to abide by our linting setup. This excludes config.template.yml as this will be done in an alternate commit.
2021-04-11 06:51:00 +10:00
Amir Zarrinkafsh
0cf54214a0
ci(buildkite): log ghcr id on tag removal (#1889) 2021-04-06 11:49:13 +10:00
James Elliott
6ea62657d9
release: v4.27.4 (#1872) 2021-03-30 16:34:11 +11:00
Amir Zarrinkafsh
e816a2e563
ci: publish docker images to ghcr (#1860)
* ci: publish docker images to ghcr

* ci: remove ghcr images with no tags

* ci: remove unnecessary ghcr jq args for empty tags

* ci: move ghcr empty tag clean up

Publishes Docker container images on both DockerHub and GitHub Container Registry.
2021-03-30 09:17:19 +11:00
James Elliott
92f3de28bb
release: v4.27.3 (#1866) 2021-03-29 12:24:05 +11:00
James Elliott
5b9f505e6c
docs: add issue templates (#1847)
* docs: add issue templates
* ci: skip .github/ dir
2021-03-24 09:50:11 +11:00
James Elliott
4f5bda768b
release: v4.27.2 (#1822) 2021-03-13 16:34:39 +11:00
James Elliott
2fabfecb55
release: v4.27.1 (#1801) 2021-03-11 12:29:07 +11:00
James Elliott
1e46ec6c44
ci: restore dependabot rules (#1797)
Restores the dependabot rules in buildkite for the purpose of security fixes which are handled by dependabot still.
2021-03-10 15:53:33 +11:00
James Elliott
98b47227ee
release: v4.27.0 (#1795) 2021-03-10 11:53:49 +11:00
Amir Zarrinkafsh
582ca4cbb1
ci(buildkite): optimise job to agent assignment (#1754)
Split out unit-testing jobs to ensure that the workloads are evenly spread.
2021-02-22 14:24:01 +11:00
Amir Zarrinkafsh
49aa5e0eb8
ci(buildkite): change to concurrency gates (#1752)
* ci(buildkite): change to concurrency gates

Continuation of #1751.

* ci(buildkite): optimise concurrency gates
2021-02-22 12:48:20 +11:00
Amir Zarrinkafsh
6daeaf4e47
ci(buildkite): add concurrency limits to build and test steps (#1751)
Due to the unpredictability of changes that Renovate can submit this PR will allow us to control the number of jobs that will run simultaneously per step.
2021-02-22 11:13:51 +11:00
James Elliott
8bc7ef5d8f
release: v4.26.2 (#1736) 2021-02-22 09:02:15 +11:00
Amir Zarrinkafsh
2c32343885
release: v4.26.1 (#1718) 2021-02-12 22:15:01 +11:00
Amir Zarrinkafsh
8c79e6beca
ci(buildkite): utilise conventional-changelog for release notes (#1714)
Instead of generating our changelog based on crude modifications utilising git log we now utilise conventional-changelog.

conventional-changelog utilises the angular commit structure to categorise and display the changelog for 3 types (fix,feat,perf) and each of the change scopes are identified in the changelog too.

An example of the output for v4.26.0 can be found below:

# [4.26.0](https://github.com/authelia/authelia/compare/v4.25.2...v4.26.0) (2021-02-02)

### Bug Fixes

* **handlers:** refresh user details on all domains ([#1642](https://github.com/authelia/authelia/issues/1642)) ([60ff16b](60ff16b518))

### Docker Container
* `docker pull authelia/authelia:4.26.0`
2021-02-12 14:00:36 +11:00
James Elliott
9e1b6ba82e
ci: consider .all-contributorsrc a docs file for the pipeline (#1704)
* ci: consider .all-contributorsrc a docs file for the pipeline

This change prevents the unit/integration testing and image deployment similar to other docs only changes.
2021-02-05 14:26:16 +11:00
Amir Zarrinkafsh
aac5170ddc
ci: remove dependabot (#1696)
da5892faad introduced renovate to Authelia.
Now that it has been evaluated dependabot is no longer necessary and can be removed.
2021-02-04 13:06:23 +11:00
Amir Zarrinkafsh
182ada6fff
release: v4.26.0 (#1682) 2021-02-02 12:23:37 +11:00
Amir Zarrinkafsh
d71dbd4858
ci(buildkite): update buildkite deployment steps (#1678)
This PR modifies the Buildkite CI pipeline with the following changes:

* Add `SECURITY.md` to CI_BYPASS
* Skip Docker {amd64,arm32v7,arm64v8} builds for renovate PRs
* Ensure Deploy Manifest step only is assigned to deployment nodes
2021-01-31 11:49:36 +11:00
renovate[bot]
da5892faad
ci: configure renovate (#1643)
* Add renovate.json

* Update renovate configuration

* Fix labelling

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2021-01-30 14:28:23 +11:00
James Elliott
bab776b850
[RELEASE] v4.25.2 (#1608) 2021-01-17 11:09:29 +11:00
Amir Zarrinkafsh
8bab8d47ef
[MISC] Add CLI suite (#1597)
This change adds a new integration testing suite "CLI".

The intent of this suite is to test, validate and capture coverage for Authelia's commands via the CLI.
2021-01-16 21:25:02 +11:00
James Elliott
2c14d827ba
[RELEASE] v4.25.1 (#1590) 2021-01-11 06:19:53 +11:00
James Elliott
c9ff1119a0
[RELEASE] v4.25.0 (#1578) 2021-01-04 22:24:32 +11:00
Amir Zarrinkafsh
3487fd392e
[FEATURE] Add API docs and swagger-ui (#1544)
* [FEATURE] Add API docs and swagger-ui

This change will serve out swagger-ui at the `/api/` root path.

* Update descriptions and summaries in API spec

* Utilise frontend assets from unit testing for Docker build steps

* Fix tag for /api/user/* endpoints

* Fix response schema for /api/user/info/2fa_method

* Template and inject the session name during runtime into swagger-ui

This change also factorises and renames index.go into template.go, this can now be generically utilised to template any file.

* Fix integration tests

* Add U2F endpoints

* Change swagger directory to api

This change is to more closely conform to the golang-standards project layout.

* Add authentication for u2f endpoints

* Modify u2f endpoint descriptions

* Rename and fix u2f 2fa sign endpoints

* Fix request body for /api/secondfactor/u2f/sign endpoint

Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2021-01-03 15:28:46 +11:00
Amir Zarrinkafsh
689fd7cb95
[CI] Add linting option for frontend and enforce styling (#1565)
We now extend the default Eslint configuration and enforce styling with prettier for all of our frontend code.
2021-01-02 21:58:24 +11:00
James Elliott
18627d5869
[RELEASE] v4.24.1 (#1543) 2020-12-16 14:11:41 +11:00
James Elliott
fc034fbabc
[RELEASE] v4.24.0 (#1507) 2020-12-03 18:30:49 +11:00
Amir Zarrinkafsh
0bf192aae0
[CI] Adjust reviewdog filtermode for linting (#1506)
This will ensure that linter errors are picked up for the entire codebase instead of just against the default of [added/modified lines](https://github.com/reviewdog/reviewdog#added-default).
2020-12-03 18:06:42 +11:00
Amir Zarrinkafsh
b0fbf2c4cc
[CI] Exclude non-coverage files from codecov upload (#1495)
* [CI] Exclude non-coverage files from codecov upload

* Ignore React serviceWorker.ts for coverage

As we do not utilise service workers in React gives more accurate coverage percentages when ignored.
2020-11-30 21:12:46 +11:00
Amir Zarrinkafsh
d890e7d751
[CI] Add metadata switch for codecov verbose output (#1494) 2020-11-30 12:04:09 +11:00
Amir Zarrinkafsh
aa64d0c4e5
[FEATURE] Support MSAD password reset via unicodePwd attribute (#1460)
* Added `ActiveDirectory` suite for integration tests with Samba AD
* Updated documentation
* Minor styling refactor to suites
* Clean up LDAP user provisioning
* Fix Authelia home splash to reference correct link for webmail
* Add notification message for password complexity errors
* Add password complexity integration test
* Rename implementation default from rfc to custom
* add specific defaults for LDAP (activedirectory implementation)
* add docs to show the new defaults
* add docs explaining the importance of users filter
* add tests
* update instances of LDAP implementation names to use the new consts where applicable
* made the 'custom' case in the UpdatePassword method for the implementation switch the default case instead
* update config examples due to the new defaults
* apply changes from code review
* replace schema default name from MSAD to ActiveDirectory for consistency
* fix missing default for username_attribute
* replace test raising on empty username attribute with not raising on empty

Co-authored-by: James Elliott <james-d-elliott@users.noreply.github.com>
2020-11-27 20:59:22 +11:00
Amir Zarrinkafsh
9310cead97
[RELEASE] v4.23.3 (#1486) 2020-11-24 13:23:18 +11:00
Amir Zarrinkafsh
6db5455762
[CI] Collect coverage from frontend during integration tests (#1472)
This change will allow us to collect frontend code coverage from our Selenium based integration tests.

Given that the frontend is embedded into the Go binary and the integration tests run with a compiled binary in Docker this poses some issues with the instrumented code and the ability for it to run in this manner. To fix this we need to relax Authelia's CSP for the integration tests. This is achieved by setting the env variable `ENVIRONMENT` to `dev`.
2020-11-19 12:50:34 +11:00
Amir Zarrinkafsh
73a19140d1
[RELEASE] v4.23.2 (#1468) 2020-11-16 22:58:47 +11:00
Amir Zarrinkafsh
695cd5bf8f
[RELEASE] v4.23.1 (#1446) 2020-11-11 16:07:46 +11:00
Amir Zarrinkafsh
cca8480c0b
[CI] Run codecov in verbose mode (#1439)
This is to support the codecov team in identifying and resolving an issue.
2020-11-10 10:58:09 +11:00
Amir Zarrinkafsh
56e015583e
[RELEASE] v4.23.0 (#1436) 2020-11-09 15:48:34 +11:00
James Elliott
1684ffb989
[RELEASE] v4.22.0 (#1266) 2020-09-21 16:47:07 +10:00
Amir Zarrinkafsh
8dfe5c7d70
[CI] Fail linting step on errors (#1307) 2020-09-04 14:06:10 +10:00
Amir Zarrinkafsh
0df8f6bfe3
[CI] Collect and upload coverage on master branch (#1174) 2020-07-02 08:56:45 +02:00
Amir Zarrinkafsh
cd2e7eb4bf
[RELEASE] v4.21.0 (#1172) 2020-07-01 17:39:42 +10:00
vdot0x23
6ccc92e47e
do not hardcode /bin/bash (#1122)
Co-authored-by: Victor Büttner <victor@0x23.dk>
Co-authored-by: Clément Michaud <clement.michaud34@gmail.com>
2020-06-18 09:49:13 +02:00
Amir Zarrinkafsh
475a4e1a61
[RELEASE] v4.20.0 (#1120) 2020-06-17 18:00:10 +10:00
Amir Zarrinkafsh
ff7f9a50ab
[FEATURE] Docker simplification and configuration generation (#1113)
* [FEATURE] Docker simplification and configuration generation
The Authelia binary now will attempt to generate configuration based on the latest template assuming that the config location specified on startup does not exist. If a file based backend is selected and the backend cannot be found similarly it will generate a `user_database.yml` based a template.

This will allow more seamless bootstrapping of an environment no matter the deployment method.

We have also squashed the Docker volume requirement down to just `/config` thus removing the requirement for `/var/lib/authelia` this is primarily in attempts to simplify the Docker deployment.

Users with the old volume mappings have two options:
1. Change their mappings to conform to `/config`
2. Change the container entrypoint from `authelia --config /config/configuration.yml` to their old mapping

* Adjust paths relative to `/etc/authelia` and simplify to single volume for compose
* Add generation for file backend based user database
* Refactor Docker volumes and paths to /config
* Refactor Docker WORKDIR to /app
* Fix integration tests
* Update BREAKING.md for v4.20.0
* Run go mod tidy
* Fix log_file_path in miscellaneous.md docs
* Generate config and userdb with 0600 permissions
* Fix log_file_path in config.template.yml
2020-06-17 16:25:35 +10:00
Clément Michaud
d5b29bc503
[RELEASE] v4.19.2 (#1104) 2020-06-10 09:51:51 +10:00
Amir Zarrinkafsh
5cc6dfc463
[MISC] Update QEMU to v5.0.0-2 (#1090)
* [MISC] Update QEMU to v5.0.0-2

* [CI] Add retries and exit with non-zero status if codecov upload fails
2020-06-06 15:08:51 +02:00
Amir Zarrinkafsh
d123fe4785
[CI] Add Codecov support (#1065)
* [CI] Add Codecov support

* [CI] Capture backend coverage from integration tests

* [CI] Remove unnecessary artifacts for coverage build

* [CI] Only run coverage elements where necessary

* [CI] Simplify post-command hook

* Fix yarn dependencies and collect coverage

* [CI] Include cmd/authelia/ path in coverage

* [CI] Exclude internal/suites/ in coverage

Closes #1061.
2020-06-05 10:43:19 +10:00
Amir Zarrinkafsh
ca1f3c0c4a
[RELEASE] v4.19.1 (#1046) 2020-05-24 10:55:51 +10:00
Amir Zarrinkafsh
3249448d5c
[RELEASE] v4.19.0 (#1037) 2020-05-21 16:13:58 +10:00
James Elliott
675b1b8e26
[RELEASE] v4.18.1 (#1023) 2020-05-16 13:37:01 +10:00
Clément Michaud
aa242142c0
[RELEASE] 4.18.0 (#990)
Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2020-05-08 11:36:07 +10:00
Amir Zarrinkafsh
c3fc560242
[CI] Fix race condition on Docker tag clean up (#984)
Prior to this change if there was a branch/PR build which had not yet published manifests and a master build running simultaneously, assuming the master build finished publishing manifests before former it would clean up the architecture tagged containers (-{amd64,arm32v7,arm64v8}) which would result in the manifest step failing for the branch or PR build.
These should not be considered in either of the clean up steps because they're removed as part of a successful manifest being published.
2020-05-06 13:28:44 +10:00
James Elliott
4db5807bac
[RELEASE] v4.17.0 (#976) 2020-05-05 07:52:15 +10:00
Amir Zarrinkafsh
9e2a9f5ee6
[DEPRECATE] Remove OSX (darwin) based binaries (#967) 2020-05-03 22:03:53 +10:00
Amir Zarrinkafsh
d301ebe47c
[CI] Fix pipeline dependencies (#964)
* [CI] Fix pipeline dependencies
This change ensures that CI_BYPASS works as intended and ensures that the hardcoded pipeline does not conflict with the repo provided dynamic pipeline.
The hardcoded pipeline has been changed to reflect the following:
```yaml
steps:
  # Blocking pipeline for master branch deployments (concurrency_group).
  - label: ":pipeline: Setup Pipeline"
    command: ".buildkite/pipeline.sh | buildkite-agent pipeline upload"
    concurrency: 1
    concurrency_group: "deployments"
    if: build.branch == "master"

  # Non-blocking pipeline for all others (tagged commits/local branches/PRs).
  - label: ":pipeline: Setup Pipeline"
    command: ".buildkite/pipeline.sh | buildkite-agent pipeline upload"
    if: build.branch != "master"

  - wait:
    if: build.pull_request.repository.fork != true && build.branch !~ /^dependabot\/.*/

  # Manual intervention by team required to deploy for forked PRs (prevent secret leakage).
  - block: "Public fork needs approval"
    if: build.pull_request.repository.fork == true

  # Blocking deployment for master branch deployments (concurrency_group).
  - label: "🚀 Setup Deployment"
    command: ".buildkite/deployment.sh | buildkite-agent pipeline upload"
    concurrency: 1
    concurrency_group: "deployments"
    depends_on: ~
    if: build.branch == "master"

  # Non-blocking deployment for all others (tagged commits/local branches).
  - label: "🚀 Setup Deployment"
    command: ".buildkite/deployment.sh | buildkite-agent pipeline upload"
    depends_on: ~
    if: build.branch != "master" && build.branch !~ /^dependabot\/.*/ && build.pull_request.repository.fork != true

  # Removed dependency optimisation for forked PRs to enforce block step.
  - label: "🚀 Setup Deployment"
    command: ".buildkite/deployment.sh | buildkite-agent pipeline upload"
    if: build.pull_request.repository.fork == true
```

* [CI] Include upstream hardcoded pipeline in repo
2020-05-02 17:05:11 +02:00
Amir Zarrinkafsh
ce5f5e9214
[CI] Optimise pipeline deployments with explicit dependencies (#955)
Pushes to master and tagged releases will have now have explicit dependencies for steps. This is specifically to prevent darwin based builds holding up execution of other steps which should not have a dependence.
2020-05-02 13:22:17 +10:00
Amir Zarrinkafsh
1ed1318870
[CI] Fix artifact download for publishing step (#954) 2020-05-02 12:12:18 +10:00
James Elliott
9947371ef8
[CI] Run unit tests on master and tagged commits (#953) 2020-05-02 11:41:53 +10:00
James Elliott
c13525bf84
[RELEASE] v4.16.0 (#952) 2020-05-02 09:01:39 +10:00
Amir Zarrinkafsh
2b627c6c04
[CI] Set concurrency groups at a global level and simplify pipeline (#942) 2020-04-29 14:06:35 +10:00
Amir Zarrinkafsh
f781d63b2c
[CI] Prevent race conditions with appropriate deployment steps (#941)
If we have multiple builds to master that intend to deploy AUR packages or documentation, we must ensure that the jobs are locked and executed sequentially, not simultaneously. If they were to run simultaneously this has the ability to cause a race condition when attempting to commit the respective steps.
2020-04-29 13:05:41 +10:00
Amir Zarrinkafsh
12100d21e2
[CI] Linting optimisations (#940)
* [CI] Lint all builds except tagged commits to satisfy branch protection

* [CI] Add automatic retries for linting failures
This is to treat any issues with the reviewdog API server and occasional failures we are seeing.
2020-04-29 12:30:46 +10:00
Amir Zarrinkafsh
f8bd506326
[FEATURE] Embed static assets in Go binary (#916)
* [FEATURE] Embed static assets in Go binary

* Refactor/consolidate code and specify public_html via configuration

* Update docs and config template for assets

* Update AUR package pre-requisites and systemd unit

* Include static assets as Buildkite and GitHub artifacts

* Remove references to PUBLIC_DIR

* Only serve assets via embedded filesystem and remove configuration references

* Update authelia-scripts helper to build the embedded filesystem

* Mock the embedded filesystem for unit tests
Add to gitignore to ensure this isn't overwritten.

* Move go:generate to satisfy linter
2020-04-29 00:07:20 +10:00
Clément Michaud
bfff9237fa
[RELEASE] v4.15.1 (#919) 2020-04-26 00:29:08 +02:00
James Elliott
8917c98d65
[RELEASE] v4.15.0 (#904)
* [RELEASE] v4.15.0

Co-authored-by: Amir Zarrinkafsh <nightah@me.com>
2020-04-23 12:43:27 +10:00
Amir Zarrinkafsh
0ec3f18b44
[CI] Introduce GitHub checks based linting with reviewdog (#900)
* [CI] Introduce linting for branch commits with reviewdog
This utilises the GitHub checks API and could be a potential candidate instead of in-line PR reviews.

* [CI] Change reporter to `github-check`

* [CI] Adjust linting in-line PR commentary to execute with linting step
2020-04-22 23:10:22 +10:00
James Elliott
d233057b31
[RELEASE] 4.14.2 (#882) 2020-04-19 22:06:59 +10:00
Amir Zarrinkafsh
4b664cf15f
[RELEASE] v4.14.1 (#880) 2020-04-19 04:33:18 +10:00
Amir Zarrinkafsh
02c55580bc
[RELEASE] v4.14.0 (#873) 2020-04-16 10:41:23 +10:00
James Elliott
04d875b101
[RELEASE] v4.13.1 (#856) 2020-04-11 15:29:03 +10:00
Amir Zarrinkafsh
3de1827b21
[Buildkite] Control clean builds with agent metadata (#840)
This is to optimise build times at the sacrifice of disk space/clean up tasks.
2020-04-09 14:46:04 +10:00
Amir Zarrinkafsh
49ac65eb41
[RELEASE] v4.13.0 (#839) 2020-04-09 11:50:34 +10: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
Amir Zarrinkafsh
13712d0f36
[Buildkite] Fine-grained control of build steps for agent allocation (#835) 2020-04-08 11:31:33 +10:00
James Elliott
670eeb2879
[RELEASE] v4.12.0 (#828) 2020-04-05 22:53:26 +10:00
Amir Zarrinkafsh
580152b40b
[FEATURE] Include darwin based binaries for OSX (#814)
Build and publish binary artifacts for Authelia which can be run directly from OSX.
2020-04-03 16:13:24 +11:00
Amir Zarrinkafsh
a71ca1903d
[RELEASE] v4.11.0 (#810) 2020-04-01 10:53:48 +11:00
Amir Zarrinkafsh
6128081e1f
[Buildkite] Adjust CI bypasses (#804) 2020-04-01 09:44:57 +11:00
Amir Zarrinkafsh
95f6c1a893
[Buildkite] Add contents of BREAKING.md for tag to releases (#797)
This will ensure that notes pertaining to a version in the BREAKING.md will be published in each of the respective github releases.

All information from:
'## Breaking in $TAG' until the next '## Breaking in $TAG' is included.
2020-03-31 08:46:23 +11:00
Amir Zarrinkafsh
92023de85d
[Buildkite] Tweak pipeline to conditionally ignore a wait step (#781) 2020-03-25 14:09:35 +11:00
Amir Zarrinkafsh
d95bda8cdc
[Buildkite] Fix pipeline regression for master deployments (#770)
Fixes the regression #766 introduced as when the `build.branch` is `master` `build.tag` is `""`.
2020-03-22 16:36:18 +11:00
Amir Zarrinkafsh
8b64c9aad5
[Buildkite] Optimise pipeline for tagged deployments (#766)
* [Buildkite] Optimise pipeline for tagged deployments
Ensure Unit and Integration testing is bypassed for tagged builds.

* Apply suggestions from code review

Co-Authored-By: Clément Michaud <clement.michaud34@gmail.com>
2020-03-22 11:03:36 +11:00
Amir Zarrinkafsh
93abf699b8
[Buildkite] Fix docs bypass for origin/master divergences (#764)
If origin/master diverges beyond the initial fork-point on branches or external forks, the `git merge-base` command exits unsuccessfully. This will cause commits to incorrectly be recognised as a docs bypass. This change will catch the unsuccessful exit and treat it as a normal CI/CD run.

Examples:
- https://buildkite.com/authelia/authelia/builds/932
- https://buildkite.com/authelia/authelia/builds/933
- https://buildkite.com/authelia/authelia/builds/941
2020-03-21 14:42:29 +01:00
Amir Zarrinkafsh
daba4d789f
[Buildkite] Optimise pipeline for deployments to master (#756)
Prior to this change all PR's which are merged into master would result in another run of the Unit and Integration testing.
This is not necessary because all steps have to pass for a PR to be accepted in to master, this will save significant time for deployments to master and reduce overall load to the Buildkite workers.
2020-03-20 14:03:50 +11:00
Amir Zarrinkafsh
7eddf07155
[Buildkite] Clean Docker environment on exit (#734) 2020-03-19 16:15:54 +11:00
Amir Zarrinkafsh
06e36f89e3
[Buildkite] Fix unbound variable for docs bypass (#711) 2020-03-15 22:01:52 +11:00