{"thread":{"id":"57649","subject":"[ANNOUNCE] git-scm.com Heroku credits update","startedAt":"2022-04-01T16:39:56Z","lastAt":"2022-04-18T23:43:46Z","messageCount":12,"participants":["Taylor Blau","Dan Moore","Kaartic Sivaraam","Phillip Wood","Johannes Schindelin","Christian Couder","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"452905","messageId":"YkcmtqcFaO7v1jW5@nand.local","threadId":"57649","inReplyTo":null,"subject":"[ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"ttaylorr@github.com","sentAt":"2022-04-01T16:22:14Z","receivedAt":"2022-04-01T16:39:56Z","isPatch":false,"sender":{"key":"ttaylorr@github.com","avatar":"https://gravatar.com/avatar/d5f3476f26b6f99cbb6b467e7ed7482f5762c8157bc73f569196e428bdcbea25?d=mp&s=160"},"body":"As some of you know, we have a website at https://git-scm.com, which has\nserved as the Git project's de-facto homepage.\n\nThat site is hosted on Heroku, which has graciously provided the Git\nproject with hosting credits for many years. That, combined with support\nfrom Cloudflare has meant that the maintenance cost for the site is\neffectively $0.\n\nUnfortunately, Heroku no longer provides free hosting credits to\norganizations and open-source projects. I have been in an ongoing\nsupport thread with them, and their stance is pretty clear.\n\nTo that end, we have a few options about what to do with the website in\nthe future:\n\n  - Convert the Rails application into a static site that could be\n    hosted elsewhere for free. The non-static portions of the site would\n    have to become static in one way or another, and we'd have to come\n    up with an alternative search mechanism to replace the existing one.\n\n  - Explore ways to cheapen our Heroku bill (more on this later). Our\n    footprint at Heroku currently is a dyno for the Rails site itself,\n    along with a separate database (Postgres) and cache (Redis). We\n    could explore eliminating the Rails-layer cache, and tune our\n    Cloudflare settings to more aggressively cache parts of the website.\n\n  - Pay Heroku using the Git project's funds held at Conservancy.\n\n  - Find a cheaper Rails host.\n\nOur Heroku bill varies slightly based on usage, but here's last month's\nbill, which is more or less representative:\n\n              | Usage (months)       | Cost $/mo |  Total\n    ----------+----------------------+-----------+---------\n    scheduler | 0.004941199999999998 | $25.00/mo |   $0.12\n    web       | 1                    | $50.00/mo |  $50.00\n    redis     | 1                    | $30.00/mo |  $30.00\n    postgres  | 1                    | $50.00/mo |  $50.00\n    ----------+----------------------+-----------+---------\n                                                   $131.58\n\n(I'm omitting about $1.46 of charges that come from spinning up dynos to\npower \"PR previews\" when somebody makes a pull request to the\ngit/git-scm.com repository on GitHub).\n\nI think we could reasonably get rid of the Rails-layer caching using\nRedis and save some money there, but it may not be possible depending on\nhow much content Cloudflare is willing to keep warm in its cache.\n\nIn the meantime, Heroku is billing Git's account at Conservancy [1] in\norder to keep the site running while we all figure out what to do next.\nI have some opinions about what a sustainable solution looks like, but\nI'll avoid sharing them just yet in order to avoid tainting the\ndiscussion.\n\nThanks,\nTaylor\n\n[1]: I promised[2] an update on our financials, and am still working on\nit. The Git project currently has about ~$70k USD in its account.\n[2]: https://lore.kernel.org/git/Yg%2FsO63nhhtAXWvn@nand.local/\n"},{"id":"453068","messageId":"Ykt6lPF0JC1Mg2Tx@nand.local","threadId":"57649","inReplyTo":"YkcmtqcFaO7v1jW5@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2022-04-04T23:09:08Z","receivedAt":"2022-04-04T23:16:36Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"On Fri, Apr 01, 2022 at 12:22:14PM -0400, Taylor Blau wrote:\n> To that end, we have a few options about what to do with the website in\n> the future:\n\nDan Moore (cc'd) has graciously offered the support of his company\nFusionAuth [1] to help assist with our hosting costs. From Dan:\n\n    [M]y company has benefited tremendously from git and would be happy\n    to foot the monthly cost if you are looking for sponsors.\n\nExternal support would go a long way towards keeping our existing funds\navailable for things like sponsoring travel and lodging for Git Merge\nattendees who could not otherwise make it in person.\n\nDan: thank you very much for your gracious offer. Does anybody have\nobjections to having some external support? I think the only change to\nthe site would be adding an entry to the \"Sponsors\" section of the about\npage [2].\n\nThanks,\nTaylor\n\n[1]: https://fusionauth.io/\n[2]: https://git-scm.com/site\n"},{"id":"453070","messageId":"CAKUhyqHSwUb3UL=sKxqNrZsRNbf=wuzsk06LFfE=UwdN4JN37g@mail.gmail.com","threadId":"57649","inReplyTo":"CAKUhyqE2L9MiNvauA6kaPstvNp6ift5ehfmeFxKvb2DjPvOnsA@mail.gmail.com","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Dan Moore","fromEmail":"dan@fusionauth.io","sentAt":"2022-04-04T23:27:01Z","receivedAt":"2022-04-04T23:27:18Z","isPatch":false,"sender":{"key":"dan@fusionauth.io","avatar":null},"body":"Hi Taylor,\n\nYes, we would love to offer our monetary support if it makes sense for\nthe community.\n\nCheers,\nDan\n\n\nOn Mon, Apr 4, 2022 at 5:23 PM Dan Moore <dan@fusionauth.io> wrote:\n>\n> Hi Taylor,\n>\n> Yes, we would love to offer our monetary support if it makes sense for the community.\n>\n> Cheers,\n> Dan\n>\n> On Mon, Apr 4, 2022 at 5:09 PM Taylor Blau <me@ttaylorr.com> wrote:\n>>\n>> On Fri, Apr 01, 2022 at 12:22:14PM -0400, Taylor Blau wrote:\n>> > To that end, we have a few options about what to do with the website in\n>> > the future:\n>>\n>> Dan Moore (cc'd) has graciously offered the support of his company\n>> FusionAuth [1] to help assist with our hosting costs. From Dan:\n>>\n>>     [M]y company has benefited tremendously from git and would be happy\n>>     to foot the monthly cost if you are looking for sponsors.\n>>\n>> External support would go a long way towards keeping our existing funds\n>> available for things like sponsoring travel and lodging for Git Merge\n>> attendees who could not otherwise make it in person.\n>>\n>> Dan: thank you very much for your gracious offer. Does anybody have\n>> objections to having some external support? I think the only change to\n>> the site would be adding an entry to the \"Sponsors\" section of the about\n>> page [2].\n>>\n>> Thanks,\n>> Taylor\n>>\n>> [1]: https://fusionauth.io/\n>> [2]: https://git-scm.com/site\n>\n>\n>\n> --\n> Dan Moore  Head of Developer Relations\n> 1630 Welton St suite 600-a, Denver, CO\n> p: 720.560.8545\n> w: fusionauth.io\n> e: dan@fusionauth.io\n>\n\n\n-- \nDan Moore  Head of Developer Relations\n1630 Welton St suite 600-a, Denver, CO\np: 720.560.8545\nw: fusionauth.io\ne: dan@fusionauth.io\n"},{"id":"453080","messageId":"6BD35402-7646-4B00-8831-A186C0E7CC02@gmail.com","threadId":"57649","inReplyTo":"Ykt6lPF0JC1Mg2Tx@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Kaartic Sivaraam","fromEmail":"kaartic.sivaraam@gmail.com","sentAt":"2022-04-05T03:14:31Z","receivedAt":"2022-04-05T03:18:29Z","isPatch":false,"sender":{"key":"kaartic.sivaraam@gmail.com","avatar":"https://avatars.githubusercontent.com/u/12448084?v=4"},"body":"\n\nOn 5 April 2022 4:39:08 am IST, Taylor Blau <me@ttaylorr.com> wrote:\n>\n>Dan: thank you very much for your gracious offer. Does anybody have\n>objections to having some external support? I think the only change to\n>the site would be adding an entry to the \"Sponsors\" section of the about\n>page [2].\n>\n\nIf that's all the change that's required, I would be in favour.\n\nThank you for offering to sponsor the git-scm site, Dan!\n\n-- \nSivaraam\n\nSent from my Android device with K-9 Mail. Please excuse my brevity.\n"},{"id":"453169","messageId":"997c94c9-e7f4-02c0-b9ca-719b745be2df@gmail.com","threadId":"57649","inReplyTo":"Ykt6lPF0JC1Mg2Tx@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Phillip Wood","fromEmail":"phillip.wood123@gmail.com","sentAt":"2022-04-06T09:52:09Z","receivedAt":"2022-04-06T13:13:52Z","isPatch":false,"sender":{"key":"phillip.wood@dunelm.org.uk","avatar":null},"body":"Hi Taylor and Dan\n\nOn 05/04/2022 00:09, Taylor Blau wrote:\n> On Fri, Apr 01, 2022 at 12:22:14PM -0400, Taylor Blau wrote:\n>> To that end, we have a few options about what to do with the website in\n>> the future:\n> \n> Dan Moore (cc'd) has graciously offered the support of his company\n> FusionAuth [1] to help assist with our hosting costs. From Dan:\n> \n>      [M]y company has benefited tremendously from git and would be happy\n>      to foot the monthly cost if you are looking for sponsors.\n> \n> External support would go a long way towards keeping our existing funds\n> available for things like sponsoring travel and lodging for Git Merge\n> attendees who could not otherwise make it in person.\n> \n> Dan: thank you very much for your gracious offer. Does anybody have\n> objections to having some external support? I think the only change to\n> the site would be adding an entry to the \"Sponsors\" section of the about\n> page [2].\n\nThat sounds like a good solution. Thank you Dan for your generous offer \nof support and thank you Taylor for looking after the website.\n\nBest Wishes\n\nPhillip\n"},{"id":"453302","messageId":"nycvar.QRO.7.76.6.2204072346410.347@tvgsbejvaqbjf.bet","threadId":"57649","inReplyTo":"YkcmtqcFaO7v1jW5@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2022-04-07T21:54:18Z","receivedAt":"2022-04-07T22:09:27Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi Taylor,\n\nOn Fri, 1 Apr 2022, Taylor Blau wrote:\n\n> As some of you know, we have a website at https://git-scm.com, which has\n> served as the Git project's de-facto homepage.\n>\n> That site is hosted on Heroku, which has graciously provided the Git\n> project with hosting credits for many years. That, combined with support\n> from Cloudflare has meant that the maintenance cost for the site is\n> effectively $0.\n>\n> Unfortunately, Heroku no longer provides free hosting credits to\n> organizations and open-source projects. I have been in an ongoing\n> support thread with them, and their stance is pretty clear.\n\nThank you for all your efforts. I frequently point users to git-scm.com,\nbe it for the manual pages or for other resources, and appreciate that you\nkeep it running so smoothly. While it is understandable that the free tier\nis going away, it is nevertheless an unplanned work for us, and I thank\nyou for doing it.\n\n> To that end, we have a few options about what to do with the website in\n> the future:\n>\n>   - Convert the Rails application into a static site that could be\n>     hosted elsewhere for free. The non-static portions of the site would\n>     have to become static in one way or another, and we'd have to come\n>     up with an alternative search mechanism to replace the existing one.\n\nThis is my preference (and I would love to contribute the time, but am\nquite short on that resource to help much).\n\nIt looks to me as if the only blocker is the site-search, and there are\nways to pre-generate an index e.g. in a Jekyll site (which we could host\non GitHub Pages, incidentally, which would be a very nice setup indeed).\n\nThe other thing the Rails app does is to regularly poll for updated\nversions, e.g. Git for Windows and Git for Mac. This strikes me as\nsomething that would benefit from the transparency provided by having a\nGitHub workflow to perform said polling instead of the opaque Rails app on\nHeroku with no public log of when it ran and whether it was successful.\n\nPlease let me know what you think, and whether you already looked into how\nautomatable/parallelizable this conversion would be. Hopefully I _can_ be\nof use in bringing that about.\n\nThanks,\nDscho\n"},{"id":"453317","messageId":"CAP8UFD2fN=c2JvvzH94Nu8yqt2MOOtXrn29eFxuie9aZ5YVjQw@mail.gmail.com","threadId":"57649","inReplyTo":"nycvar.QRO.7.76.6.2204072346410.347@tvgsbejvaqbjf.bet","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Christian Couder","fromEmail":"christian.couder@gmail.com","sentAt":"2022-04-08T08:10:08Z","receivedAt":"2022-04-08T08:10:25Z","isPatch":false,"sender":{"key":"christian.couder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/208954?v=4"},"body":"On Fri, Apr 8, 2022 at 12:39 AM Johannes Schindelin\n<Johannes.Schindelin@gmx.de> wrote:\n>\n> On Fri, 1 Apr 2022, Taylor Blau wrote:\n\n> > To that end, we have a few options about what to do with the website in\n> > the future:\n> >\n> >   - Convert the Rails application into a static site that could be\n> >     hosted elsewhere for free. The non-static portions of the site would\n> >     have to become static in one way or another, and we'd have to come\n> >     up with an alternative search mechanism to replace the existing one.\n>\n> This is my preference (and I would love to contribute the time, but am\n> quite short on that resource to help much).\n\nI wonder if this could be an Outreachy (maybe next Winter) or a GSoC\n(2023) project.\n"},{"id":"453340","messageId":"xmqq35ino356.fsf@gitster.g","threadId":"57649","inReplyTo":"CAP8UFD2fN=c2JvvzH94Nu8yqt2MOOtXrn29eFxuie9aZ5YVjQw@mail.gmail.com","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2022-04-08T18:12:37Z","receivedAt":"2022-04-08T18:12:48Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Christian Couder <christian.couder@gmail.com> writes:\n\n> On Fri, Apr 8, 2022 at 12:39 AM Johannes Schindelin\n> <Johannes.Schindelin@gmx.de> wrote:\n>>\n>> On Fri, 1 Apr 2022, Taylor Blau wrote:\n>\n>> > To that end, we have a few options about what to do with the website in\n>> > the future:\n>> >\n>> >   - Convert the Rails application into a static site that could be\n>> >     hosted elsewhere for free. The non-static portions of the site would\n>> >     have to become static in one way or another, and we'd have to come\n>> >     up with an alternative search mechanism to replace the existing one.\n>>\n>> This is my preference (and I would love to contribute the time, but am\n>> quite short on that resource to help much).\n>\n> I wonder if this could be an Outreachy (maybe next Winter) or a GSoC\n> (2023) project.\n\nGood suggestion.\n\nIt would take talent quite different from what our past GSoC\nprograms saw, from both mentors and \"contributors\" (we used to call\nthem \"students\").  If we have mentors who can give good experience\nto mentees, I would welcome to see such a task for a change.\n\nThanks.\n\n\n"},{"id":"453412","messageId":"YlRGY4j/YQ4zJiM9@nand.local","threadId":"57649","inReplyTo":"nycvar.QRO.7.76.6.2204072346410.347@tvgsbejvaqbjf.bet","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2022-04-11T15:16:51Z","receivedAt":"2022-04-11T15:17:20Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"On Thu, Apr 07, 2022 at 11:54:18PM +0200, Johannes Schindelin wrote:\n> > To that end, we have a few options about what to do with the website in\n> > the future:\n> >\n> >   - Convert the Rails application into a static site that could be\n> >     hosted elsewhere for free. The non-static portions of the site would\n> >     have to become static in one way or another, and we'd have to come\n> >     up with an alternative search mechanism to replace the existing one.\n>\n> This is my preference (and I would love to contribute the time, but am\n> quite short on that resource to help much).\n>\n> It looks to me as if the only blocker is the site-search, and there are\n> ways to pre-generate an index e.g. in a Jekyll site (which we could host\n> on GitHub Pages, incidentally, which would be a very nice setup indeed).\n\nThere are a few other smaller-ish things that we are using Rails for.\nBut most of them are limited to \"fetch this list of things from Postgres\nand format it in HTML\" which could easily be automated and checked into\nthe static version of git-scm.com's repo.\n\n> The other thing the Rails app does is to regularly poll for updated\n> versions, e.g. Git for Windows and Git for Mac. This strikes me as\n> something that would benefit from the transparency provided by having a\n> GitHub workflow to perform said polling instead of the opaque Rails app on\n> Heroku with no public log of when it ran and whether it was successful.\n\nYeah, agreed. Another \"behind the scenes\" task is running:\n\n    heroku run -a git-scm rake preindex\n    heroku run -a git-scm rake downloads\n    heroku run -a git-scm rake search_index\n\n, which I do after Junio pushes new tags. (FWIW, these jobs should run\non a timer, too, but I like to update the site with new links around the\ntime a release is tagged as opposed to having to wait for the automated\njob to kick off).\n\nI imagine that this would be replaced with some kind of GitHub workflow,\nand the result (any new pages, updated search indexes, etc.) would be\ncommitted into the repository transparently. That workflow could be\nautomated as well and get kicked off when new tags are pushed to git/git\n(I think).\n\nThanks,\nTaylor\n"},{"id":"453413","messageId":"YlRGvmPCoWn8DFTs@nand.local","threadId":"57649","inReplyTo":"xmqq35ino356.fsf@gitster.g","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2022-04-11T15:18:22Z","receivedAt":"2022-04-11T15:18:30Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"On Fri, Apr 08, 2022 at 11:12:37AM -0700, Junio C Hamano wrote:\n> > I wonder if this could be an Outreachy (maybe next Winter) or a GSoC\n> > (2023) project.\n>\n> Good suggestion.\n\nI agree!\n\n> It would take talent quite different from what our past GSoC\n> programs saw, from both mentors and \"contributors\" (we used to call\n> them \"students\").  If we have mentors who can give good experience\n> to mentees, I would welcome to see such a task for a change.\n\nI would be happy to help mentor a new contributor as somebody vaguely\nfamiliar with the architecture of the existing site, though I have next\nto no experience / good judgement on current web best practices ;).\n\nThanks,\nTaylor\n"},{"id":"453414","messageId":"YlRHcHBrdyUPAu4z@nand.local","threadId":"57649","inReplyTo":"Ykt6lPF0JC1Mg2Tx@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2022-04-11T15:21:20Z","receivedAt":"2022-04-11T15:21:28Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"On Mon, Apr 04, 2022 at 07:09:08PM -0400, Taylor Blau wrote:\n> Dan: thank you very much for your gracious offer. Does anybody have\n> objections to having some external support? I think the only change to\n> the site would be adding an entry to the \"Sponsors\" section of the about\n> page [2].\n\nIt's been a ~week since I sent this. In the meantime, a couple of folks\nhave responded that they would be happy to take Dan up on his offer to\nsupport our monthly Heroku costs.\n\nAny last objections? If I don't hear anything soon-ish, I'll work with\nDan and Conservancy to set up the logistics and transition our Heroku\nbilling off of our project funds.\n\n> [2]: https://git-scm.com/site\n\nThanks,\nTaylor\n"},{"id":"453908","messageId":"Yl33rojJkG1arkSQ@nand.local","threadId":"57649","inReplyTo":"YlRHcHBrdyUPAu4z@nand.local","subject":"Re: [ANNOUNCE] git-scm.com Heroku credits update","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2022-04-18T23:43:42Z","receivedAt":"2022-04-18T23:43:46Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"On Mon, Apr 11, 2022 at 11:21:20AM -0400, Taylor Blau wrote:\n> Any last objections? If I don't hear anything soon-ish, I'll work with\n> Dan and Conservancy to set up the logistics and transition our Heroku\n> billing off of our project funds.\n\nI didn't hear any objections in the meantime, so I'll work with Dan and\nthe fine folks at Conservancy offline to set up the remaining logistics.\n\nDan: thank you (again!) very much for your generous offer.\n\nThanks,\nTaylor\n"}]}