Skip to content
This repository has been archived by the owner on Nov 6, 2018. It is now read-only.

tbmelabs/tbmelabs-authorization-server

Repository files navigation

TBME Labs Authorization Server

OAuth2 authorization server allowing users to authenticate across multiple applications.

Build Status Quality Gate Codacy Badge Docker Pulls

Prerequisites

Make sure to install the following software before starting:

  • Maven - A software project management and comprehension tool.
  • Spring - The source for modern java.
  • PostgreSQL - The World's Most Advanced open source relational database.
  • NodeJS and npm - A JavaScript runtime built on Chrome's V8 JavaScript engine.

And your IDE should support Lombok.

Installing

PostgreSQL

Before executing the application you must prepare the database. There are several scripts located in src/main/resources/db/scripts. For instance test_database.sql is required to setup the integration test database. If you do not have a local redis cluster you might want to use a PostgreSQL token store. To prepare the database use the script jdbc_token_store.sql.

Yarn + Frontend

We use Yarn for all frontend belongings. You must install the frontend at least once before starting up the server. Otherwise it wont find the files required to server-side-render Angular. To do so either navigate into src/main/webapp and run yarn install && yarn build:dev or run mvn clean package -Pwebpack in the root directory.

Running the tests

Frontend

The frontend project is located in src/main/webapp. Please use Yarn for all installation/testing etc. You can install yarn with npm, npm install -g yarn or via maven, executing mvn package -Pwebpack. Navigate into the folder and take a look at the file package.json which contains a script section. It may give you an idea about the different use cases.

Backend

Execute unit-tests by running mvn test. They are managed by the maven-surefire-plugin. Integration-tests start with mvn verify using the maven-failsafe-plugin.

Deployment

This project is deployed using maven. Run mvn clean install to install the artifact into your local repository.

Built With

  • Maven - A software project management and comprehension tool.
  • Yarn - Fast, reliable, and secure dependency management.
  • Sprint - The source for modern java.
  • Angular - Clientside JavaScript web framework.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Timon Borter - Initial work - bbortt

See also the list of contributors who participated in this project.

Hat Tips

  • To swaechter for the basic idea on server-side-rendering Angular in AngularUniversalRenderEngine.java. Original code is in this repository.

License

This project is published under the terms of MIT License. For more information see the license file.

About

Repository containing an OAuth2 authorization server allowing users to authenticate across multiple applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages