new multi-project architecture controlled through Justfile #10
new multi-project architecture controlled through Justfile #10chuckadams wants to merge 12 commits intomainfrom
Conversation
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
|
This is looking great, @chuckadams. Could you include an updated repo README to reflect your approach along with usage instructions, e.g. |
|
@chuckadams I attempted to update the README while also testing the When running I'm assuming that's because I don't have a db running? I'm wondering if there might be other "gotchas" in the setup that assume things I don't already have locally. |
|
@cdils I don't have healthchecks on the postgres service in AC, so |
meta/bin/checkout-fair-project
Outdated
| else | ||
| git clone "$repo" "$@" | ||
| echo "Successfully cloned $repo to $dest" | ||
| [[ -n ${NO_INSTALL_HOOK:-} ]] || cp -v ../meta/bin/git-signoff-hook "$dest"/.git/hooks/prepare-commit-msg |
There was a problem hiding this comment.
There’s one wee bug to note: if just start here fails the first time like it did for me, the git sign-off hook doesn’t trigger on re-run.
From @chuckadams in slack:
i should just have it check after whether the hook exists instead.
since i might have captainhook take care of hook management at some point
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
Signed-off-by: Chuck Adams <chaz@chaz.works>
The current architecture of start-here is to have a single docker-compose.yml file to control everything, which is a nice idea in the abstract, but runs into some basic limits in the design of docker compose, and ultimately clashes with independent development of projects which use their own compose stacks.
This uses a
Justfilealong with some support scripts to clone the repos of most of the active FAIR projects and do their initial setup, with a single command:just start here(you actually don't need the "here" but it looks neat). It doesn't attempt to provide a 100% turnkey "FAIR In A Box" dev infrastructure, but it'll get you 80% of the way there.For things to really click together, most of the sub-projects are going to need their own Justfiles and/or compose stacks, but this makes things as smooth as possible with what we have.
As a bonus, the Traefik stack from the AspirePress infrastructure repo has been added and updated to the latest and greatest version and configuration (including HTTP/3 support!)