From: Derrick Stolee <firstname.lastname@example.org> To: email@example.com, Derrick Stolee via GitGitGadget <firstname.lastname@example.org>, email@example.com Cc: firstname.lastname@example.org, email@example.com, Derrick Stolee <firstname.lastname@example.org> Subject: Re: [PATCH 09/15] job-runner: load repos from config by default Date: Mon, 6 Apr 2020 08:57:36 -0400 [thread overview] Message-ID: <email@example.com> (raw) In-Reply-To: <firstname.lastname@example.org> On 4/5/2020 11:41 AM, Phillip Wood wrote: > Hi Stolee > > On 03/04/2020 21:48, Derrick Stolee via GitGitGadget wrote: >> From: Derrick Stolee <email@example.com> >> >> The 'git job-runner' command was introduced with a '--repo=<path>' >> option so a user could start a process with an explicit list of >> repos. However, it is more likely that we will want 'git >> job-runner' to start without any arguments and discover the set of >> repos from another source. > > One thought that occurred to me was that it might be convenient to put > 'git job-runner $HOME &' in my .bashrc to have it start on login and > find all the repositories under $HOME without me having to list each > one (and remember to update the list each time a clone a new repository). > There are a couple of issues with this > 1 - We only want to run the jobs once per repo, not for each worktree. > That should be easy enough to implement by checking if we're in the > main worktree. This idea of "please check all (immediate) directories under <dir> for repositories to run maintenance" is an interesting one. It certainly could be added later. Your concern about worktrees is actually not a big deal. Since we check the config for the "last run" of a job on a repo, we will not run the same job immediately on a worktree after running it on the original (unless the interval times are incredibly short). > 2 - If I start several shells I only want one instance of 'git > job-runner' to start. One way to handle that would be for the runner > to hold a lock file in the directory it's given and quit if the lock > is already taken. It should probably walk up the directory hierarchy > to check for lock files as well in case I try to start another > job-runner instance in a subdirectory. This is an interesting idea. My gut reaction is that we don't want to prevent users from running multiple processes if they want to. But if they run the process twice in the same directory then they are likely to be running on the same set of repos (barring "-c jobs.repo" or equivalent). Again, my hope is that we would solve this problem by having a cross- platform "job service" that makes the user setup of editing .bashrc irrelevant. Not only is that idea getting push back, we should allow expert users the ability to customize these steps to their delight. Thanks, -Stolee
next prev parent reply other threads:[~2020-04-06 12:57 UTC|newest] Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-03 20:47 [PATCH 00/15] [RFC] Maintenance jobs and job runner Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 01/15] run-job: create barebones builtin Derrick Stolee via GitGitGadget 2020-04-05 15:10 ` Phillip Wood 2020-04-05 19:21 ` Junio C Hamano 2020-04-06 14:42 ` Derrick Stolee 2020-04-07 0:58 ` Danh Doan 2020-04-07 10:54 ` Derrick Stolee 2020-04-07 14:16 ` Danh Doan 2020-04-07 14:30 ` Johannes Schindelin 2020-04-03 20:48 ` [PATCH 02/15] run-job: implement commit-graph job Derrick Stolee via GitGitGadget 2020-05-20 19:08 ` Josh Steadmon 2020-04-03 20:48 ` [PATCH 03/15] run-job: implement fetch job Derrick Stolee via GitGitGadget 2020-04-05 15:14 ` Phillip Wood 2020-04-06 12:48 ` Derrick Stolee 2020-04-05 20:28 ` Junio C Hamano 2020-04-06 12:46 ` Derrick Stolee 2020-05-20 19:08 ` Josh Steadmon 2020-04-03 20:48 ` [PATCH 04/15] run-job: implement loose-objects job Derrick Stolee via GitGitGadget 2020-04-05 20:33 ` Junio C Hamano 2020-04-03 20:48 ` [PATCH 05/15] run-job: implement pack-files job Derrick Stolee via GitGitGadget 2020-05-27 22:17 ` Josh Steadmon 2020-04-03 20:48 ` [PATCH 06/15] run-job: auto-size or use custom pack-files batch Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 07/15] config: add job.pack-files.batchSize option Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 08/15] job-runner: create builtin for job loop Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 09/15] job-runner: load repos from config by default Derrick Stolee via GitGitGadget 2020-04-05 15:18 ` Phillip Wood 2020-04-06 12:49 ` Derrick Stolee 2020-04-05 15:41 ` Phillip Wood 2020-04-06 12:57 ` Derrick Stolee [this message] 2020-04-03 20:48 ` [PATCH 10/15] job-runner: use config to limit job frequency Derrick Stolee via GitGitGadget 2020-04-05 15:24 ` Phillip Wood 2020-04-03 20:48 ` [PATCH 11/15] job-runner: use config for loop interval Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 12/15] job-runner: add --interval=<span> option Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 13/15] job-runner: skip a job if job.<job-name>.enabled is false Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 14/15] job-runner: add --daemonize option Derrick Stolee via GitGitGadget 2020-04-03 20:48 ` [PATCH 15/15] runjob: customize the loose-objects batch size Derrick Stolee via GitGitGadget 2020-04-03 21:40 ` [PATCH 00/15] [RFC] Maintenance jobs and job runner Junio C Hamano 2020-04-04 0:16 ` Derrick Stolee 2020-04-07 0:50 ` Danh Doan 2020-04-07 10:59 ` Derrick Stolee 2020-04-07 14:26 ` Danh Doan 2020-04-07 14:43 ` Johannes Schindelin 2020-04-07 1:48 ` brian m. carlson 2020-04-07 20:08 ` Junio C Hamano 2020-04-07 22:23 ` Johannes Schindelin 2020-04-08 0:01 ` brian m. carlson 2020-05-27 22:39 ` Josh Steadmon 2020-05-28 0:47 ` Junio C Hamano 2020-05-27 21:52 ` Johannes Schindelin 2020-05-28 14:48 ` Junio C Hamano 2020-05-28 14:50 ` Jonathan Nieder 2020-05-28 14:57 ` Junio C Hamano 2020-05-28 15:03 ` Jonathan Nieder 2020-05-28 15:30 ` Derrick Stolee 2020-05-28 4:39 ` Johannes Schindelin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --subject='Re: [PATCH 09/15] job-runner: load repos from config by default' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).