Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Development page out of date + possible additions #1903

Closed
leewillis77 opened this issue Aug 12, 2021 · 6 comments
Closed

Development page out of date + possible additions #1903

leewillis77 opened this issue Aug 12, 2021 · 6 comments
Labels
kind:documentation Adds or improves documentation

Comments

@leewillis77
Copy link
Contributor

The "Development & Contributing" page at https://docs.teslamate.org/docs/development/ still refers to Postgres 10, whereas the main installation page suggests v12 is required.

Additionally it doesn't note a requirement for Grafana, or node.js which are both listed on the install page.

As someone currently working on a PR - it would be helpful if the contributing page covered:

  • How to test migrations (mix ecto.migrate ?)
  • How to refresh grafana dashboards from updated definitions (just re-run/grafana/dashboards.sh restore?)

Thanks!

@Ed-M72
Copy link
Contributor

Ed-M72 commented Aug 17, 2021

I must admit I agree with Lee. When I first started building a Dev environment and writing code I ended up googling most of the software/dependencies and commands. A lot of trial and error ensued.

I develop on Windows and it took me the best part of a month to build a Windows VM which was scripted and could be consistently rebuilt from nothing to a consistent DEV environment. All the commands on the help page are for Linux and some don't work on Windows, such as /grafana/dashboards so I ended up having to write my own scripts to replace it.

Overall the gate is set very high with regarding learning and building a Dev environment and it probably puts a lot of people off.

A good example of missing instructions is having to build test scripts. The developer page states you have to run "mix test" before submitting, however it doesn't say that you may need to add extra tests to your test script to cover your code changes.

Ideally it would be good to have a tutorial of how to build for Linux and Windows and then tutorial taking you through the steps of development with all the relevant commands you will need.

@leewillis77
Copy link
Contributor Author

Just to follow up on this. I managed to get everything setup I think, but I still had some issues, particularly around tests.

It seems like whenever I run mix test it insists on doing it against the main database, not the test DB. Setting MIX_ENV didn't seem to affect that, so clearly I'm doing something wrong, and I'm not sure what.

I've just noticed that the website looks like it's in the repo, so when I get chance I'll put together a PR to reorganise some of the content, and hopefully we can evolve it from there!

@adriankumpf adriankumpf added the kind:documentation Adds or improves documentation label Sep 22, 2021
@micves
Copy link
Contributor

micves commented Apr 20, 2023

I'm in the initial phase of setting up a development environment.
I'm actually already stuck at deciding whether to use Windows or Linux :)
It seems on the previous comments that Linux would be the way to go. Would WSL2 work?

Does anyone have their own guide they want to share?

@JakobLichterfeld
Copy link
Collaborator

I've just noticed that the website looks like it's in the repo, so when I get chance I'll put together a PR to reorganise some of the content, and hopefully we can evolve it from there!

Still waiting for your PR :-)

@leewillis77
Copy link
Contributor Author

It's unlikely to appear - sorry - I don't think I have the knowledge to add the missing information.

@JakobLichterfeld
Copy link
Collaborator

It's unlikely to appear - sorry - I don't think I have the knowledge to add the missing information.

OK, I updated the requirements in #4017

Testing with our CI is already included since #3856

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind:documentation Adds or improves documentation
Projects
None yet
Development

No branches or pull requests

6 participants