Commit Graph

435 Commits

Author SHA1 Message Date
Travis Ralston
61ca805b19 Initial admin APIs for managing IRC bridges
Missing functionality:
* Toggle networks
* Add self-hosted
2018-03-30 23:12:31 -06:00
Travis Ralston
76931819af Add the shell for configuring IRC bridges 2018-03-30 19:22:15 -06:00
Travis Ralston
bd03db7674 Parse upstream travis-ci configurations correctly 2018-03-30 16:51:10 -06:00
Travis Ralston
ff088e3e49 Add a whole lot more logging to the backend 2018-03-30 16:34:39 -06:00
Travis Ralston
39a71429f3 Add documentation for the backend APIs 2018-03-30 15:17:39 -06:00
Travis Ralston
4365cb0753 Support Travis CI completely
Webhooks are generated eagerly but have lazily set targets so that we can give the user a webhook URL to set in their config. go-neb (upstream & standalone) doesn't give a webhook URL until after the repositories are configured.

Fixes #16
2018-03-30 14:59:25 -06:00
Travis Ralston
6f238fc13f Appease the linter
by actually making the code better
2018-03-29 20:56:08 -06:00
Travis Ralston
3a8167a57a Support saving of travis-ci configuration
For both upstream and self-hosted. What's left is:
* Webhooks (magic proxy through Dimension)
* More instructions on the frontend.
2018-03-29 20:51:49 -06:00
Travis Ralston
606b6d9f56 Front end for travis-ci self-service management
TODO:
* Backend (needs research)
* Webhook URL (probably proxy this)
2018-03-28 22:18:33 -06:00
Travis Ralston
71de7987c6 Appease the linter 2018-03-26 21:50:19 -06:00
Travis Ralston
18597db540 Add self-service configuration for the RSS bot
Fixes #14
2018-03-26 21:48:44 -06:00
Travis Ralston
1233be85e9 Add a health endpoint
For monitoring
2018-03-26 18:46:08 -06:00
Travis Ralston
2c1366d9d7 Very early support for configuring complex bots
Using the RSS Bot as an example. Notably missing features:
* Configuration (feeds) not retrieved
* No actual configuration page
2018-03-25 21:02:32 -06:00
Travis Ralston
b5aec06c04 Add a dialog for configuring simple bots 2018-03-25 19:17:09 -06:00
Travis Ralston
87121150cc Support removing simple bots from rooms 2018-03-25 16:20:15 -06:00
Travis Ralston
de766ab945 Update the todo list to match the current state of affairs 2018-03-25 15:44:08 -06:00
Travis Ralston
017f5e00cd Appease the linter 2018-03-25 13:21:53 -06:00
Travis Ralston
7bfbf626b2 Appease the linter 2018-03-25 13:17:51 -06:00
Travis Ralston
009b510779 Special case each integration, forcing simple bots to go through an NebProxy
This is so the different needs of each can be accounted for. For example, widgets are fairly unrestricted, so nothing really needs to prevent them. Bots on the other hand require an upstream token otherwise we can't get the bot IDs from Modular.
2018-03-25 13:13:50 -06:00
Travis Ralston
04bfccc95f Consider the lack of membership event as not being in the room 2018-03-25 13:12:00 -06:00
Travis Ralston
d4166477f0 Add a log statement to identify Dimension in Riot's logs 2018-03-25 13:11:41 -06:00
Travis Ralston
947ecd43cd Early support for managing bots in the room
Known drawbacks:
* Cannot remove bots
* Cannot use upstream neb instances
2018-03-25 00:45:57 -06:00
Travis Ralston
dcda2fa46e Translate the Dimension integration types to go-neb types
This only applies to Travis CI and the RSS Bot.
2018-03-24 22:02:40 -06:00
Travis Ralston
a5173fff85 Remove wikipedia from the list of bots with a configuration screen
Wikipedia doesn't have any additional configuration in go-neb
2018-03-24 21:57:14 -06:00
Travis Ralston
6b4f33de24 Add the configuration screen for Imgur 2018-03-24 21:55:35 -06:00
Travis Ralston
0ccd0cbb81 Add the configuration screen for Google 2018-03-24 21:50:30 -06:00
Travis Ralston
d00058cbff Add the configuration screen for Guggy 2018-03-24 21:44:05 -06:00
Travis Ralston
21aba80f54 Add the configuration screen for Giphy 2018-03-24 21:17:44 -06:00
Travis Ralston
18a2d63b6f Update the infrastructure diagram 2018-03-24 20:03:20 -06:00
Travis Ralston
4f8e94e3d2 Update banner image in README 2018-03-24 20:00:46 -06:00
Travis Ralston
03f71a6b0f Update the homepage and branding 2018-03-24 19:58:01 -06:00
Travis Ralston
e5aa16f98c Update todo.txt 2018-03-24 17:17:25 -06:00
Travis Ralston
0d520a763f Update webapp to match naming angular naming conventions 2018-03-24 17:16:52 -06:00
Travis Ralston
5d00c72972 Disable Circle CI support for now
When the PR gets merged to go-neb, this can be uncommented and implemented.
2018-03-24 17:10:06 -06:00
Travis Ralston
8cdae3359d Support explicit setting of the federation/client URLs
The client/server URL is needed for go-neb to work correctly, and to remove our complete dependence on federation.

The federation URL is also configurable so servers that don't wish to federate can specify a local address.
2018-03-24 17:09:34 -06:00
Travis Ralston
cc921779ae Appease the linter 2018-03-24 15:05:26 -06:00
Travis Ralston
bc4319da7d Remove unused APIs 2018-03-24 14:54:20 -06:00
Travis Ralston
58f8ca8335 Support provisioning bots in go-neb
This is so far only possible for the bots that don't require additional configuration in go-neb.
2018-03-24 14:54:12 -06:00
Travis Ralston
bebcfa1bba Fix appservice transactions throwing errors
We weren't awaiting the appservice, so the truthy check passes and we get "cannot read property id of undefined" in the REST handler.
2018-03-24 12:20:20 -06:00
Travis Ralston
51810cce8f Fix not being able to edit go-neb instances
The linter required us to use === later on, but this breaks the navigation. We now cast the parameter.
2018-03-24 12:19:29 -06:00
Travis Ralston
62d81ed842 Show the appservice configuration after saving; Make the show config button work
Includes the ability to 'test' the appservice. This doesn't bother checking if the URL is set up correctly because we don't actually care about the transactions.
2018-03-24 12:18:38 -06:00
Travis Ralston
656d208059 Minor styling improvements for widget configuration pages 2018-03-23 22:13:15 -06:00
Travis Ralston
fa7fb651c0 Bring the ibox chevron in a little bit, and always display it as a down arrow 2018-03-23 22:12:59 -06:00
Travis Ralston
2e5530179b Add some animation to the iboxes 2018-03-23 22:12:34 -06:00
Travis Ralston
7a2627ad76 Move admin routes to their own API namespace 2018-03-23 21:36:43 -06:00
Travis Ralston
73acbb586f Update linting to include the web project as well 2018-03-23 21:29:48 -06:00
Travis Ralston
7c757a79e6 Use async/await throughout the backend 2018-03-23 21:26:14 -06:00
Travis Ralston
8d6c2dfa00 Convert the frontend to the async/await pattern
We have to drop bluebird to be able to do this.
2018-03-23 21:01:56 -06:00
Travis Ralston
51740308a2 Fix a bug where all bots are considered handled 2018-03-23 20:15:59 -06:00
Travis Ralston
42315de8df List the enabled bots on the go-neb page 2018-03-23 20:15:51 -06:00