webteam-hubot's People
Forkers
tbille jkfran jpmartinspt meltysnow amylily1011 anthonydillon bethcollins92 clementchaumel albertkol minkyngkm eslerm dgtlntvwebteam-hubot's Issues
Can this run on port 80 in production?
So we can remove customisations like canonical/deployment-configs#278 (comment)
Use message attachments for /meet
I think many issues could be solved by using the message attachments on Mattermost
https://developers.mattermost.com/integrate/admin-guide/admin-message-attachments/
It is even possible to set a fallback option for unsupported clients.
Explain command table could skip the cells that are empty
Filter renovate PRs
Praise people who merge PRs
Everyone loves praise!
Add secret parameter for github action notification
This API is fully open. We require a secret token when requesting this endpoint to make sure we don't get spammed.
We should have this check: https://github.com/canonical-web-and-design/webteam-hubot/blob/master/scripts/github-pull-requests-reviews-notifications.js#L93
Add documentation for slash commands
The meet and acronym commands are POST endpoints that Mattermost hits when someone type /acronym sadf
or /meet
.
The endpoints are following those QA steps
- In one terminal:
dotrun
- In another:
curl --request POST http://localhost:8080/hubot/meet -H "Content-Type: application/x-www-form-urlencoded" -d "token=test_token"
- Expected result:
{
"response_type":"in_channel",
"icon_url":"https://assets.ubuntu.com/v1/fa583301-meet-bot-logo.png",
"text":"Create a new Meet and post the link to the current channel, format: `/meet @{username} [@{username} ...]`",
"fallback":"Create a new Meet and post the link to the current channel, format: `/meet @{username} [@{username} ...]`"
}
We should add this in the documentation of the repository.
Command to find user timezone
/tz @user
could give me the timezone and the working hours of a user
Update IRC docs to mattermost
Meet command notification is confusing
Whenever someone uses /meet
command to create a new meet link, the mattermost notification would say something like @bartaz did something new
instead of saying that new meeting was requested.
As it doesn't seem to be anything in our code, it seems to be coming from mattermost itself. I found some related issues about it:
https://forum.mattermost.com/t/posts-with-attachments-and-desktop-notifications-did-something-new/2507
https://mattermost.atlassian.net/browse/MM-3766
I'm not sure, but I guess what it means that we should provide some fallback text along with the text
and it will be used in the notification?
https://developers.mattermost.com/integrate/admin-guide/admin-message-attachments/
Canonical org PRs counter is failing
Here is the error in the logs:
(node:1) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'repositories' of null
at requestPullRequests (/srv/scripts/github-pull-requests-reviews-notifications.js:67:37)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 89)
Explain command table needs to be fixed
Ping IRC for deployments
Ping IRC channels when deploying. This can be tied in with our local deploy script.
Change our deploy script to ping the hubot endpoint. This then posts in required channel.
Be sure to secure the hubot endpoint. Some information here:
http://www.bfcamara.com/post/89658506788/hubot-security-considerations
We can enable basic authentication by setting the enviroment variables EXPRESS_USER and EXPRESS_PASSWORD. Itβs strongly recommended to user strong passwords.
We may want to look at only securing specific endpoints.
Can't run using dotrun
Can't run it using dotrun
:
Yarn install throws an error.
ubuntu@ubuntu ~/webteam-hubot (greet) $ dotrun
- Yarn dependencies have changed, reinstalling
[ $ yarn install ]
yarn install v1.22.0
[1/4] Resolving packages...
error Couldn't find match for "e80eb07dfe2d1da55f3e0c4ac04dca4fbd2757fd" in "refs/heads/0.3.x,refs/heads/apeiron/dont-piss-off-ops,refs/heads/apeiron/fix-secure-connections,refs/heads/apeiron/fix-secure-opts,refs/heads/apeiron/fixtures,refs/heads/apeiron/use-irc-colors,refs/heads/expr-rewrite,refs/heads/hs/code-486,refs/heads/hs/fix-remove-channel,refs/heads/hs/flood-delay-improvements,refs/heads/hs/perf,refs/heads/hs/the-great-merge,refs/heads/hs/types,refs/heads/jirwin/add-debug-network-error,refs/heads/jirwin/add-missing-newlines,refs/heads/jirwin/factor-parse-messages-to-new-file,refs/heads/jirwin/fix-#314,refs/heads/jirwin/move-selfMessage,refs/heads/jirwin/palid-cap-user-auth,refs/heads/jirwin/parseMessage-middlewares,refs/heads/jirwin/upgrade-icu,refs/heads/jirwin/use-proper-eventemitter,refs/heads/kegan/bust-rfc3484-tls,refs/heads/kegan/casemap-all-the-things,refs/heads/kegan/lower-case-chans,refs/heads/kegan/memleak,refs/heads/kegan/parse-multiple-user-modes-in-name-reply,refs/heads/kegan/usermodes,refs/heads/luke/ipfamily,refs/heads/luke/ipfamily2,refs/heads/luke/names,refs/heads/luke/wouldsend,refs/heads/master,refs/heads/paul/bust-rfc3484,refs/pull/1/head,refs/pull/10/head,refs/pull/11/head,refs/pull/12/head,refs/pull/13/head,refs/pull/14/head,refs/pull/15/head,refs/pull/16/head,refs/pull/17/head,refs/pull/18/head,refs/pull/2/head,refs/pull/20/head,refs/pull/22/head,refs/pull/23/head,refs/pull/24/head,refs/pull/24/merge,refs/pull/25/head,refs/pull/25/merge,refs/pull/26/head,refs/pull/26/merge,refs/pull/3/head,refs/pull/30/head,refs/pull/30/merge,refs/pull/32/head,refs/pull/32/merge,refs/pull/33/head,refs/pull/34/head,refs/pull/36/head,refs/pull/37/head,refs/pull/39/head,refs/pull/39/merge,refs/pull/4/head,refs/pull/40/head,refs/pull/41/head,refs/pull/5/head,refs/pull/6/head,refs/pull/7/head,refs/pull/8/head,refs/pull/9/head,refs/tags/matrix-irc-bridge,refs/tags/v0.1.0,refs/tags/v0.1.1,refs/tags/v0.1.2,refs/tags/v0.2.0,refs/tags/v0.2.1,refs/tags/v0.3.0,refs/tags/v0.3.1,refs/tags/v0.3.10,refs/tags/v0.3.11,refs/tags/v0.3.12,refs/tags/v0.3.2,refs/tags/v0.3.3,refs/tags/v0.3.5,refs/tags/v0.3.7,refs/tags/v0.3.8,refs/tags/v0.3.9" for "https://github.com/matrix-org/node-irc.git".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
= `yarn install` errored =
Running yarn install locally directly (without dotrun) works, running bot via yarn start
as well.
IRC bot: Pick a random developer
Update the IRC bot to randomly choose a developer when it sends a message about a PR.
I think for the time being we should do this as light-weight as possible - which is probably simply to add a list of all developer IRC nicknames to the IRC bot codebase, and just randomly pick one when sending a PR message.
Down the line this could be improved by (but these should be out of scope for the time being - or stretch tasks):
- Getting the list of developers from a team in GitHub through the GitHub API
- Inspecting GitHub to pick developers who don't have many PRs assigned to them already
- Maybe pick developers based on those not so experienced with a project or something?
Explain command table seems to have an empty row at the top:
Action Required: Fix Renovate Configuration
There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.
Error type: undefined
Change branch name to main
List all definitions if there are more than one definitions of an acronym
Post preview links for GitHub Issues/PR
When a GitHub link is posted for an Issue or PR, ping the GitHub API and post a quick one line description.
Explain command table gets broken if the cell contains new lines
link not visible from matterhorn
Hello, this /meet
command looks neat :) it doesn't work great with the matterhorn client, though. The URL isn't visible, and the ctrl+O
shortcut doesn't open the URL in the browser like most URLs or images.
I suspect without evidence it'd be good enough to output the link on a line of its own somewhere.
Thanks
Expand RT numbers
Expand RT#1234
to links to the portal.
Pull request notification wording
Consider adding a @web-pr
or similar for people to subscribe to notifications.
I would recommend not using the word webteam
in it so that people can subscribe to @webteam
and not get PR messages.
Script currently used: https://github.com/github/hubot-scripts/blob/master/src/scripts/github-pull-request-notifier.coffee
Update github API keys on heroku to make the bot work again
Will has been removed from the organisations, we need to update github api keys on Heroku with a new account to make it work again
Google meet command that generates new link
For quick meets I would like to be able to generate a new google meet link to chat with someone
eg. /meet
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.