SoK
SoK copied to clipboard
Ideas for Visualization Website
Some ideas that came up that could be interesting to add to the visualization website:
-
Add button to send
repository_dispatchevent for triggering Github Action workflows -
As an extension of suggestion one it would be nice to display the URL of the workflow status page after the button was pressed
- URL can be retrieved from GitHub API
-
The workflow is very simple and just sends the commands via AWS SSM to the EC2 instances. However, a successful workflow run does not guarantee that all benchmarks were executed successfully. Up to now, the easiest way is to check if the expected files were written to S3.
- Maybe our flask application can provide a simple POST endpoint that is called from the Docker Eval image after finishing the benchmark run. It takes the tool name and shows a green light if a tool successfully finished the benchmark. ...but probably that's too much work and does not provide lot of value.
While it would be quite easy to do these things using someone's personal access token, putting that kind of access into a random EC2 instance would be unwise.
We could create a dummy user, but that's messy and hard to give minimal permissions to. The "proper" solution appears to register a GitHub App, but that's a bit more effort. I'll re-visit this at some point
/remind me to consider GitHub App in 5 days
@AlexanderViand set a reminder for Aug 5th 2020
Instead of triggering the Workflow on the website, we could also integrate it into Slack, which is probably easier to accomplish (and safer?). The setup could look like this:
- We use Zapier with its Slack integration.
- The Zapier Free with 100 tasks/month should be sufficient I guess.
- It's only required to install the Zapier app in our
github-sokSlack channel - We can either make the
github-sokchannel private or define in the Zapier workflow that only specific persons can invoke the action. - As an alternative to that, we could also create our own Slack bot like described here.
- Given a special command, the Zapier Slackbot triggers our Github Action by sending a POST request (see this example)
- We could integrate Slack notifications into our Github Action workflows (for example, by using actions-slack) so that we also get notifications there to see whether the run was successful.
:wave: @AlexanderViand, consider GitHub App