Alvearie / alvearie-helm

repository for the helm chart source and package for Alvearie projects
https://artifacthub.io/packages/helm/linuxforhealth
Apache License 2.0
3 stars 5 forks source link

[FHIR] Repository CI and minor chart-specific suggestions #15

Open chgl opened 3 years ago

chgl commented 3 years ago

Thank you for this useful chart! I have a few suggestions which I would be happy to contribute if deemed appropriate. Some are possibly too opinionated/nitpicky and stem from experiences with my own chart repo over at https://github.com/chgl/charts - so feel free to disapprove of them!

Infrastructure/CI

Chart-specific suggestions

Nit-Picky

lmsurpre commented 3 years ago

Thanks @chgl for the good suggestions. I'm thinking of turning each of these (or at least many of them) into their own issues so they can be independently discussed. Hooking up chart-releaser was definitely my plan...I had a play with it from my own repo the last time you mentioned it (over at IBM/FHIR) and I agree it will be a nice no-cost/low-hassle way of handling chart releases. Linting sounds like a good idea too, although I don't have much experience with that. I think it would be a place where we'd invite contribution. Hooking up a CI also sounds smart. My plan to date has been to leave the FHIR server testing to IBM/FHIR and to leave testing of the charts to Alverie/health-patterns...however I hadn't yet thought through how we might prevent chart errors BEFORE we pick them up in that health-patterns repo.

Consider moving the chart folders inside a charts-dir because it's the default location for some helm tools

I think I've seen that convention elsewhere but I never understood the extra level. Does it buy us anything?

I think naming the repository charts would be a tad more conventional, helm repo add https://alvearie.github.io/charts also looks a bit cooler/less duplicate than https://alvearie.github.io/alvearie-helm

I did float that alternative name past the Alvearie core team but we ended up on alvearie-helm. We didn't debate it for long, but I think the main points from that discussion were:

chgl commented 3 years ago

Thank you for the feedback!

Linting sounds like a good idea too, although I don't have much experience with that. I think it would be a place where we'd invite contribution.

Great! I'm a big fan of linting so I would be happy to contribute something. I think a good step would be to implement

Include postgres as an optional sub-chart to make it easier to install the server

first, which simplifies setting up the chart-testing tool (which includes a basic linting step). I can take a stab at it if it's OK.

My plan to date has been to leave the FHIR server testing to IBM/FHIR and to leave testing of the charts to Alverie/health-patterns...however I hadn't yet thought through how we might prevent chart errors BEFORE we pick them up in that health-patterns repo.

I agree that any functional testing should be kept closer to the application code. chart-testing/helm test at least in my experience ist mostly suited to just make sure the application installed via the chart starts up correctly - so a basic curl /Patient?_summary=count to make sure everything is reachable may be a "good enough".

I think I've seen that convention elsewhere but I never understood the extra level. Does it buy us anything?

The biggest advantage is definitely not having to configure any tools which assume "/charts" is the default. Especially useful if you add additional folders that aren't actually charts (like /docs, /scripts, whatever) to the root dir (although some tools additionally check for a Charts.yaml to make sure). I think of it as similar to a /src folder vs placing source files in the root directory.

I did float that alternative name past the Alvearie core team but we ended up on alvearie-helm.

those are actually great arguments - especially the first one, since I am already at charts-2 in one of my forks (https://github.com/chgl/charts-2)...

lmsurpre commented 3 years ago

I think a good step would be to implement [Include postgres as an optional sub-chart to make it easier to install the server] I can take a stab at it if it's OK.

Sounds good. I converted that one into https://github.com/Alvearie/alvearie-helm/issues/27

lmsurpre commented 3 years ago

The repository could eventually be added to ArtifactHub

It's alive! https://artifacthub.io/packages/helm/alvearie/ibm-fhir-server