Done
Details
Assignee
Maurizio PillituMaurizio PillituReporter
Nick TarsilloNick Tarsillo(Deactivated)Priority
MediumLabels
Details
Details
Assignee
Maurizio Pillitu
Maurizio PillituReporter
Nick Tarsillo
Nick Tarsillo(Deactivated)Priority
Labels
Created August 29, 2017 at 3:33 PM
Updated October 12, 2017 at 5:43 PM
Resolved October 12, 2017 at 8:25 AM
Background
The admin bot is used to automate admin level processes. More specifically, it's current functionality is being used to automatically on-board and bootstrap developers onto a specified pod.
Proposal
The admin bot runs in a tomcat, and has it's own set of endpoints. Admins can authenticate using a certificate administered specifically for using the bot. Upon authenticating, the admin can call different endpoints that automate admin processes. Ex. Registering a user on the pod, and sending them an email with login in and password. Generating certs, registering bots/apps on pod, sending certificates and app/bot info to specified developer on pod.
Rationale
Previously, the the process to onboard new partners onto the developer pod was completely manual and thus not sustainable to scale. The creation of an admin bot to automatically bootstrap new partners to the developer pod is the first step to creating a developer pod that makes it easy for developers to self-serve and not require routine intervention for the platform or partner team to build an app/integration/bot. A bot is the best way to automate this process because it is highly flexible and functionality can be added as we work to continuously improve the developer experience.
Current State
The admin bot is currently deployed to the developer pod. It successfully welcomes new developers and creates end-users account(s), 1 app, 1 bot, 1 app cert and 1 bot cert to bootstrap the partner to the pod. "App create" endpoints were required to automate the bootstrap process. These endpoints will be publicity available in 1.48, and therefore cannot be used on 1.47 pods.
Near Term Goals
The project is already minimally viable. In the near future we would like to - Update the content that is sent to new partners in the welcome email / bootstrap message - Update the name of the bot (currently "App Guru")
Future Goals
Our goal is to create a developer pod that makes it easy for developers to self-serve and not require routine intervention from the platform or partner team. - The next item on the roadmap is creating a bot to allow users to test their bots/apps/integrations XPOD - Later, we would like to add functionality to Admin bot to allow for user and bot self-service upgrades (update icon URL and description, register apps and submit requests for app publication)
Issues / Risks
New partners must change their password manually upon logging into the developer pod for the first time to eliminate all security risks (randomly generated temporary password is currently sent via email)
Code and Core Developers
Current SCM:
https://github.com/tarsillon1/symphony-admin-bot
Code Transfer Approach:
Clone repository from github location.
Desired GIT Repository Name(s)
symphony-admin-bot
Owners:
Nicholas Tarsillo, tarsillon1, Developer/Symphony Software Engineer Intern
Committers:
Nicholas Tarsillo, tarsillon1, Developer/Symphony Software Engineer Intern
Do you require access to the Open Developer Platform (for unit testing and continuous integration & delivery)?
No