opensafely / opensafely/documentation
Update screenshots regularly
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 48
- Forks
- 10
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 17
Description
Summary
As mentioned by @ghickman on Slack, we could use something like shot-scraper to generate screenshots.
This ideally would be automated or, failing that, semi-automated and run by a developer locally.
Benefits
Inspired by https://twitter.com/aaronbassett/status/1536708194160070658:
- For users, this keeps screenshots up-to-date with the current appearance of web services.
- For developers, these act as simple additional checks, warning us when web services have changed substantially, either when:
- the layout has changed somewhat, and a new screenshot does not represent what was intended
- the layout has changed enough that this automation fails
Questions/ideas
- What's the best way of automating login to external services where necessary?
- Relevant issue for shot-scraper: https://github.com/simonw/shot-scraper/issues/30
- Can we configure 2FA for such services to secure test accounts? This seems a little tricky.
- Would some services block GitHub Actions runners? I've seen this when automating link checks.
- For services that we develop, we should probably run them with a GitHub Actions runner to screenshot, instead of trying to login into the production site.
- What about screenshots of, for example, Docker or GitHub Desktop installation processes?
- Do we want to image diff and use that in automation, to determine when to update?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by evaluating the proposed shot-scraper approach and the GitHub Actions automation questions described in the issue, including authentication, runner blocking, and image diffs. Done is a decided, repeatable approach for generating and updating service screenshots, with the automation scope and handling of external services documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions
- Domain
- ci-cd, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100