Skip to content

DX improvements and updates#25

Open
piotrantosik wants to merge 2 commits intoBrianHumlicek:masterfrom
piotrantosik:dx
Open

DX improvements and updates#25
piotrantosik wants to merge 2 commits intoBrianHumlicek:masterfrom
piotrantosik:dx

Conversation

@piotrantosik
Copy link
Contributor

@BrianHumlicek — my suggestion is to avoid tagging images as latest.

Using :latest makes maintenance harder. For example, in the Home Assistant App it's not possible to bump the app version when the Docker image uses the latest tag. Versioned tags (with semver) allow stable releases and proper version bumps in the app and its integrations.

I suggest releasing it as e.g. 0.1.0 — it's early app stage but it works.
I also added GHA cache for Docker layers (on my fork this reduced build time by about 2–3 minutes) and docker-compose.local.yml for local development

@BrianHumlicek
Copy link
Owner

Now that were to a fairly stable plateau, I agree that versioning should happen. Give me a few days to get back to this.

@BrianHumlicek
Copy link
Owner

I notice this removes the dockerhub publishing. I assume home assistant pulls from ghcr without issue? I deploy to synology and it has trouble with ghcr, so I prefer dockerhub for that. Since I dont build containers localy for development, I may see about building on push, but only pushing to a container registry on release. This would give me an artifact I can get from github to test with, but only publoshing to ghcr and dockerhub on release.

@piotrantosik
Copy link
Contributor Author

I understand, it was just a suggestion from my side. I personally haven't had any issues with GitHub Registry in Home Assistant or local development. I’ll leave it as is if you already have a plan for how to fix it.

@piotrantosik
Copy link
Contributor Author

For easier local dev and testing, here’s my flow:

  • Set up a secondary integration in the DSC panel pointing to my laptop’s IP.
  • Make changes in the app.
  • Run docker-compose -f docker-compose.local.yml up --build to build the ARM image locally (no need to push).

It’s a great setup because "the production" integration stays connected to Home Assistant, while I test my updates in parallel.

@piotrantosik
Copy link
Contributor Author

Also @BrianHumlicek , I have a question about tests. Since I haven't written a single line of .NET before NeoHub, please go easy on me! 😄
WDYT about adding some unit tests for the critical parts, like the TLink/ITv2 protocol? Is xUnit okay with you?
It would be a great way to catch potential bugs in the integration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants