Seshat project GitHub workflow proposal & timeline
Closed this issue · 2 comments
edwardchalstrey1 commented
Proposal
Timeline
- July 2024: At minimum, let's try to ensure all development exclusive to the upstream repo is complete
- Majid to continue working on original repo (main
Qing
branch), implementing features unrelated to maps development up until leave, at which point development on this repo should cease, as should updates to the current live site on AWS - Ed to finalise optimal future-proof GitHub workflow for Seshat project that is robust to personnel changes and can be supported over multiple institutions in the long term (see draft below)
- Ed/Kalle to set up Seshat GitHub organisation and new fork of the Seshat repo hosted here, to which everyone who is a developer should be given access and work from going forwards.
- Forked from Ed's fork, but ensuring is up to date with Majid's repo too by the time he leaves
- Transfer project board & issues to the new repo
- Seshat-Global-History-Databank#3
- Ed/Kalle to book session(s) with Majid towards the end of the month to provide overview of how new GitHub org/workflow will work by the time he returns
- Majid to continue working on original repo (main
- August/September 2024 (or Majid's leave period); Ed/Kalle
- October onwards
- Ed to provide Majid hands-on GitHub training (perhaps during Vienna Seshat get-together)
- Majid is able to easily follow documentation to deploy new version of Seshat website via Pulumi
- Switch the domain to point at new website and spin down the old one
- Development to continue as per the documented workflow
This timeline proposal means that the maps won't go live on the main Seshat website until after Majid returns, which is something we should check with Pieter. If this isn't feasible, we could work on #79 in July (or just make an AWS version of what we currently have) and then just schedule a day to set it up with Majid on a call in July.
GitHub workflow
- Simple main branch and feature/bug branches
- Process must enable Majid to continue to be able to support rapid deployment of new features
- CI deployment to staging, manual git pull to production
edwardchalstrey1 commented
Questions for Majid
- How do you currently track issues, bugs, features, manage your work?
- Peter/Pieter sending lots of emails etc and also pointing Majid to discuss with RAs. Regular weekly meeting to decide priorities
- What is your current workflow?
- I think: make changes on
Qing
branch only
- I think: make changes on
- How do you push changes to the site?
- My guess: ssh into the VM and git pull - some manual sends of changes to avoid upsetting settings
- How do you back up the database?
- Periodic manual download of snapshot and upload to google drive
- What % of your time is on Seshat codebase development?
- I think: 100% - but not 100% on codebase - data cleaning etc
edwardchalstrey1 commented
TODO
- Make new GitHub org and repo: https://github.com/Seshat-Global-History-Databank/seshat
- See if the Seshat project board can be transferred to the new org from Turing - HERE IT IS: https://github.com/orgs/Seshat-Global-History-Databank/projects/1/views/1
- Add GH actions to new repo and stop using @edwardchalstrey1 repo
- Add a page to docs with the new GitHub workflow