-
Notifications
You must be signed in to change notification settings - Fork 14
Jans Admin UI Developers setup Guide
- JDK 11
- Maven 3+
- Git
- Jetty server 11(https://www.eclipse.org/jetty/)
- Download jetty server 11.
- Set
JETTY_HOME
environment varaible with value/path/to/jetty-home
- Create directory
/path/to/jetty-home/jans-config-api
. This will be called as$JETTY_BASE
. - cd
$JETTY_BASE
- Execute following command
java -jar $JETTY_HOME/start.jar --add-module=server,deploy,annotations,resources,http,http-forwarded,threadpool,console-capture,jsp,websocket
The last command creates a $JETTY_BASE/start.d/ directory and other directories that contain the configuration of the server, including the $JETTY_BASE/webapps/ directory, in which standard *.war files can be deployed.
-
Take access to
https://jenkins.jans.io/
(contact @ganesh-at-wiw on Rocket Chat to get access). Log in tohttps://jenkins.jans.io/
and go to projectjans-config-api
. -
Open
Build with Parameters
menu. Enteradmin-ui-development-branch
VERSION_NAME
and selectMAVEN_SKIP_TESTS
checkbox. Click onBuild
button. -
Download https://jenkins.jans.io/maven/io/jans/jans-config-api-server/<latest_version>/jans-config-api-server-.war to webapps directory of jetty_base (
$JETTY_BASE/webapps
). Remane war tojans-config-api.war
. -
Create
$JETTY_BASE/custom/libs
and$JETTY_BASE/custom/config
directories. -
Copy admin-ui plugin jar from
https://jenkins.jans.io/maven/io/jans/jans-config-api/plugins/admin-ui-plugin/<latest_version>/admin-ui-plugin-<version>-distribution.jar
to$JETTY_BASE/custom/libs
. Rename jar toadmin-ui-plugin.jar
-
Create
$JETTY_BASE/webapps/jans-config-api.xml
. Set absolute path ofadmin-ui-plugin-distribution.jar
anduser-mgt-plugin.jar
inextraClasspath
tag.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/jans-config-api</Set>
<Set name="war">
<Property name="jetty.webapps" default="." />/jans-config-api.war
</Set>
<Set name="extractWAR">true</Set>
<Set name="extraClasspath"><path_to_jetty_base_folder>/custom/libs/admin-ui-plugin-distribution.jar,<path_to_jetty_base_folder>/custom/libs/user-mgt-plugin.jar</Set>
</Configure>
-
Get ssh access to
admin-ui-test.gluu.org
server (contact @ganesh-at-wiw on Rocket Chat to get access). -
Download
/etc/jans/conf/jans.properties
,/etc/jans/conf/jans-ldap.properties
,/etc/jans/conf/salt
and/etc/certs/opendj.p12
fromadmin-ui-test.gluu.org
server to$JETTY_BASE/custom/config/conf
folder locally. Setssl.trustStoreFile=<path_to_jetty_base_folder>/custom/config/conf/opendj.pkcs12
value in$JETTY_BASE/custom/config/conf/jans-ldap.properties
. -
Tunnel
admin-ui-test.gluu.org
database.
ssh -L 1636:localhost:1636 -C -N -l root admin-ui-test.gluu.org -p 22222
- Change directory to
$JETTY_BASE
folder and start the jetty server using the below command. Checkhttp://localhost:8080/jans-config-api/admin-ui/oauth2/config
.
java -jar $JETTY_HOME/start.jar -Djans.base=<path_to_jetty_base_folder>/custom/config
- See if the server starts successfully without error on the logs file ($JETTY_BASE/logs/<latest_date>.jetty.log).
- Node (14.x)
curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -
sudo apt -y install nodejs
- Clone the
Gluu flex
project using the below command.
https://github.com/GluuFederation/flex
- Change the directory to the
admin-ui
directory of clonedflex
project and execute the below commands.
cd admin-ui
rm -rf jans_config_api
npm install @openapitools/openapi-generator-cli -g
npm install openapi-merge-cli
npm run api
npm install
npm run start
-
Once the project is compiled and started, UI can be accessed at URL:
http://localhost:4100
-
Use the below credentials to login to UI.
username: admin
password: Gluu1234.
- Home
-
admin-ui documentation
- Introduction
- Dashboard
- Admin Menu
- Auth Server Menu
- Admin UI Installation on bank server
- CLI commands to Add, Remove Frontend Plugins
- Developer localization guide
- Gluu Admin UI: Frontend Plugin development document
- Gluu Admin UI: Backend Plugin development document
- Gluu Cloud Admin UI: Application Architecture
- Internationalization in Gluu Admin UI
- Jans Admin UI Developers setup Guide
- Jans Config Api Role Mapping
- licenseSpring Integration in Admin UI
- License Policy
- Admin UI: Scopes
- Security and API protection token
- User Management
- Gluu Flex
- Support Portal