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

Install UX & Handling multiple installs #65

Closed
5 of 7 tasks
ErisDS opened this issue Oct 18, 2016 · 3 comments
Closed
5 of 7 tasks

Install UX & Handling multiple installs #65

ErisDS opened this issue Oct 18, 2016 · 3 comments

Comments

@ErisDS
Copy link
Member

ErisDS commented Oct 18, 2016

As I'm testing Ghost-CLI, I have a whole bunch of folders where I've used it to install Ghost.

Whenever I install a fresh version, or start one of my existing versions I don't get any information as to how I can go about accessing the version of Ghost that I just installed or started.

E.g. doing a fresh ghost install local outputs:

✔ System is running supported version of node
✔ Current folder is writeable
✔ Setting up the Ghost installation structure
✔ Downloading and installing Ghost
✔ Starting Ghost instance
Finished!

However, I don't now know how I can access Ghost (and in fact we don't really know if Ghost is running). This is in part due to the fact that the concept of multiple installs isn't really covered just yet.

E.g. because I know Ghost, I know that the version I just created is now running at http://localhost:2368/, and I can visit that and see my brand new blog 🎉 .

If I now test the cli again, in a new directory, running ghost install local again outputs the exact same thing. If I navigate to http://localhost:2368/, I see a blog, but I don't know which one. This has been a problem for me, not knowing where to go to run ghost stop!

I believe that in the current version, the 2nd (or 3rd..) blog won't start because the port is in use. My expectation as a user would be that the cli would start Ghost for me on an available port, and tell me what port it used. I realise that's probably not the simplest thing to implement, so lets start by improving the messaging and the bigger features can be implemented later.

  • When starting Ghost, output the URL that the blog can be accessed from
  • Correctly detect if the blog started (Check if Ghost process died #61) if the blog failed to start due to an already running Ghost instance, output a sensible error message

Optimising for multiple-installs (to do later!!!!)

  • Ensure that when we run Ghost, we use a process name or some other way so that we can find where the managed instances come from (e.g. what folder they were installed in)
  • Add ghost kill-all as a command that will find all managed processes and kill them -> this is ghost stop
  • Implement port-finding when installing Ghost, cycling up from 2368
  • Optimise ghost install to only download ghost once and cache it
  • Optimise ghost install to only download dependencies once (use Yarn?!?)
@moebiusmania
Copy link

+1 for the ghost kill-allcommand!

I'm in a situation where I can't start Ghost instance beacuse port is in use and running the stop command tells me that there is nothing running...

@kirrg001 kirrg001 added this to the 1.0.0-rc.1 milestone Jun 22, 2017
@kirrg001 kirrg001 removed this from the 1.0.0-rc.1 milestone Jun 22, 2017
@acburdine
Copy link
Member

@ErisDS yarn does a pretty good job of caching dependencies on it's own, so the last couple of tasks on this are unnecessary imo.

@ErisDS
Copy link
Member Author

ErisDS commented Jul 4, 2017

👍 can revisit if it becomes more of a problem

@ErisDS ErisDS closed this as completed Jul 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants