Admin Bot

Description

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

100% Done
Loading...

Activity

Show:

Maurizio Pillitu October 12, 2017 at 5:43 PM

The repository have been transferred to https://github.com/symphonyoss/symphony-admin-bot and has Admin access.

Onboarding completed, thank you.

Maurizio Pillitu October 12, 2017 at 8:27 AM

We're ready to perform the code transfer and complete the contribution process. , could you please transfer the github repository to the ssf-admin github user? You can find more docs on https://symphonyoss.atlassian.net/wiki/spaces/FM/pages/62783509/Contribution#Contribution-CodeTransfer ; feel free to ping me on Symphony chat and follow up there.

Peter Monks August 29, 2017 at 4:23 PM

In the interest of keeping latency low, I took the liberty of marking this issue as "CLA on file", given that

  1. it's coming from the LLC (who I know have a CCLA in place)

  2. is on vacation this week

If anyone objects to this change ( in particular!), please don't hesitate to let me know!

Done

Details

Assignee

Reporter

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