diff --git a/.travis.yml b/.travis.yml
index c26d76f1..c60b10a5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -19,8 +19,7 @@ addons:
before_install: npm install -g npm@'>=2.13.5'
script:
-- grunt test
-- grunt dist
+- grunt build-dist
- grunt docker-build
- docker-compose build
- docker-compose up -d
diff --git a/Gruntfile.js b/Gruntfile.js
index a4d08ccc..654f5f7c 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -31,6 +31,10 @@ module.exports = function (grunt) {
"apidoc": {
cmd: "./node_modules/.bin/apidoc",
args: ["-i", "src/server", "-o", "doc"]
+ },
+ "make-dev-views": {
+ cmd: "sed",
+ args: ["-i", "s/authelia\.min/authelia/", `${buildDir}/src/server/views/layout/layout.pug`]
}
},
copy: {
@@ -113,7 +117,7 @@ module.exports = function (grunt) {
},
server: {
files: ['src/server/**/*.ts', 'test/server/**/*.ts'],
- tasks: ['build', 'run:docker-restart'],
+ tasks: ['build', 'run:docker-restart', 'run:make-dev-views' ],
options: {
interrupt: true,
}
@@ -141,11 +145,12 @@ module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-run');
- grunt.registerTask('default', ['build']);
+ grunt.registerTask('default', ['build-dist']);
- grunt.registerTask('build-resources', ['copy:resources', 'copy:views', 'copy:images', 'copy:thirdparties', 'concat:css', 'cssmin']);
- grunt.registerTask('build', ['run:tslint', 'run:build', 'browserify:dist']);
- grunt.registerTask('dist', ['build', 'build-resources', 'run:minify', 'cssmin']);
+ grunt.registerTask('build-resources', ['copy:resources', 'copy:views', 'copy:images', 'copy:thirdparties', 'concat:css']);
+
+ grunt.registerTask('build-dev', ['run:tslint', 'run:build', 'browserify:dist', 'build-resources', 'run:make-dev-views']);
+ grunt.registerTask('build-dist', ['build-dev', 'run:minify', 'cssmin']);
grunt.registerTask('docker-build', ['run:docker-build']);
grunt.registerTask('docker-restart', ['run:docker-restart']);
diff --git a/README.md b/README.md
index ab5aaeea..13f9969c 100644
--- a/README.md
+++ b/README.md
@@ -48,7 +48,7 @@ Add the following lines to your /etc/hosts to simulate multiple subdomains
Then, type the following command to build and deploy the services:
npm install --only=dev
- grunt build
+ grunt build-dist
docker-compose build
docker-compose up -d
@@ -58,7 +58,7 @@ After few seconds the services should be running and you should be able to visit
Normally, a self-signed certificate exception should appear, it has to be
accepted before getting to the login page:
-![first-factor-page](https://raw.githubusercontent.com/clems4ever/authelia/master/images/first_factor.png)
+
### 1st factor: LDAP and ACL
An LDAP server has been deployed for you with the following credentials and
@@ -79,7 +79,8 @@ any subdomain.
Type them in the login page and validate. Then, the second factor page should
have appeared as shown below.
-![second-factor-page](https://raw.githubusercontent.com/clems4ever/authelia/master/images/second_factor.png)
+
+
### 2nd factor: TOTP (Time-Base One Time Password)
@@ -92,7 +93,7 @@ your secret in QRCode and Base32 formats. You can use
[Google Authenticator](https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en)
to store them and get the generated tokens required during authentication.
-![totp-secret](https://raw.githubusercontent.com/clems4ever/authelia/master/images/totp.png)
+
### 2nd factor: U2F (Universal 2-Factor) with security keys
**Authelia** also offers authentication using U2F devices like [Yubikey](Yubikey)
@@ -107,7 +108,7 @@ the link in your browser and you'll be asking to touch the token of your device
to register it. You can now authenticate using your U2F device by simply
touching the token.
-![u2f-validation](https://raw.githubusercontent.com/clems4ever/authelia/master/images/u2f.png)
+
### Password reset
With **Authelia**, you can also reset your password in no time. Click on the
@@ -117,7 +118,7 @@ email address. For the sake of the example, the email is delivered in the file
./notifications/notification.txt.
Paste the link in your browser and you should be able to reset the password.
-![reset-password](https://raw.githubusercontent.com/clems4ever/authelia/master/images/reset_password.png)
+
### Access Control
With **Authelia**, you can define your own access control rules for restricting