-
-
Notifications
You must be signed in to change notification settings - Fork 229
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
Tasks before going live (error messages, documentation, improvements) #216
Comments
They may not all have issues but they're all on my radar. |
I've cleaned this issue up, reordered and structured the list. |
refs #216 - adds custom version command that prints out the Ghost-CLI version and the Ghost instance version if one exists in the cwd
refs #216 - server.ip should be server.host
Just for reference, I'm waiting on the following tasks:
(priority is in that order) |
refs TryGhost#232, TryGhost#216 - this is the most straight forward pass through adding mail config options - there is loads of small tweaks possible here, but they are not required E.g. - auto-set transport to smtp if any other argument is supplied - use grouping to make the output better - stronger use of implies?
refs TryGhost#232, TryGhost#216 - this is the most straight forward pass through adding mail config options - there is loads of small tweaks possible here, but they are not required E.g. - auto-set transport to smtp if any other argument is supplied - use grouping to make the output better - stronger use of implies?
refs #232, #216 - this is the most straight forward pass through adding mail config options - there is loads of small tweaks possible here, but they are not required E.g. - auto-set transport to smtp if any other argument is supplied - use grouping to make the output better - stronger use of implies?
refs TryGhost#216 - add an extra step to enable systemd on setup - this is what tells systemd to start the service on server restart
refs TryGhost#216 - add an extra step to enable systemd on setup - this is what tells systemd to start the service on server restart - Update the template to contain docs link
refs TryGhost#216 - add an extra step to enable systemd on setup - this is what tells systemd to start the service on server restart - Update the template to contain docs link
refs TryGhost#216, TryGhost#248 - add an extra step to enable systemd on setup - this is what tells systemd to start the service on server restart - Update the template to contain docs link
refs TryGhost#216 - add crontab script that calls `ghost ssl-renew` every month - add support for setup stage "descriptions" - longer blocks of text - deps: [email protected]
refs TryGhost#216 - add crontab script that calls `ghost ssl-renew` every month - add support for setup stage "descriptions" - longer blocks of text - deps: [email protected]
refs #216 - add crontab script that calls `ghost ssl-renew` every month - add support for setup stage "descriptions" - longer blocks of text - deps: [email protected]
refs TryGhost#236 refs TryGhost#216 Logs a more useful error warning, if user attempts to use Ghost-CLI within a LTS installation. Indicator for LTS installation is the presence of a `config.js` file.
refs TryGhost#216 This PR changes the `Config.exists()` method in a way that rather than simply returning false, we're catching the error and return a `ConfigError` object that includes the received error object from `fs.readJsonSync()` as a message. There are two places, where `Config.exists()` is being called and was expecting a boolean `false` to determine if the config is valid. But this can mean, that the config either doesn't exist or has a syntax error. It remained a secret to the user. I changed this to check for an `options` property (I'm not very happy with the wording of this, but the CLI uses its own errors and not Ignition and I didn't want to change this within this PR), which than has the `message` property that includes a better error message which we then can log for the user. e. g. ``` A ConfigError occured. Error detected in the production configuration. Message: The config.production.json file is missing or not valid JSON Context: Error: /Users/aileennowak/Code/cli-installs/cli_3/config.production.json: ENOENT: no such file or directory, open '/Users/aileennowak/Code/cli-installs/cli_3/config.production.json' Debug Information: Node Version: v6.11.0 Ghost-CLI Version: 1.0.0-beta.3 Environment: production Command: 'ghost start' ```
refs TryGhost#216 - adds message "Please refer to https://docs.ghost.org for troubleshooting." to CliError as `help` property. - adds the same message to the ui handling for native JS errors. - changes the link for supported node versions to the docs
refs TryGhost#236 refs TryGhost#216 Logs a more useful error warning, if user attempts to use Ghost-CLI within a LTS installation. Indicator for LTS installation is the presence of a `config.js` file.
refs TryGhost#216 - adds message "Please refer to https://docs.ghost.org for troubleshooting." to CliError as `help` property. - adds the same message to the ui handling for native JS errors. - changes the link for supported node versions to the docs
refs #216 - adds message "Please refer to https://docs.ghost.org for troubleshooting." to CliError as `help` property. - adds the same message to the ui handling for native JS errors. - changes the link for supported node versions to the docs
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs TryGhost#216 - adds a little ui message to guide people towards docs for mail config
refs #216 - adds a little ui message to guide people towards docs for mail config
Note for
I have added this in the Ghost install section for now and it is probably going to need editing after the prompts in CLI are reviewed |
I wasn't sure which part of the linked conversation was relevant- that was to do with docker which I know nothing about! Everything I could think of that is relevant to running Ghost programatically via configuration management or a script, is documented here: https://docs.ghost.org/v1.0.0/docs/using-ghost-cli-programatically - it has some TODOs for adding links to other bits of docs when it is ready. |
I think there are a few features that aren't well known enough to be documented yet:
Uses letsencrypt's staging server - wish I knew that one existed before! Haha
Passing enable with enable the process manager (systemd) so that the process restarts on boot. I believe this is the default option when cc @acburdine can you confirm that?
Similarly, passing disable to
|
@ErisDS I've updated the docs 👍 |
All of the tasks here are marked as finished. I am going to close this issue now. |
Documentation at docs.ghost.org (start with this on the 7th of July - not before please)
We are going to have a little call about the CLI documentation on the 7th of July. That's why the sub tasks here are unassigned.
@cobbspur
@AileenCGN
ghost doctor
--nosetup
, --no-setup-ssl, --no-start - document special flags (see also ghost help)ghost config
@ErisDS
@kirrg001
ghost start
is somehow not working, you can runghost run
which might help you to clarify to issue you are running in (document ghost run as best as we can)ghost setup linux-user systemd
and try again." - that means you have to set it up. ONLY if systemd can't be used, we auto fallback (user can use --process local to force local process manager)ghost setup nginx ssl
againapt-get install nginx
and then remove it withapt-get remove nginx
, the CLI can't detect that nginx is not installed anymore -> you will get a connection refused error in the browserCases to test on a droplet (start with this on the 6th of July - not before please)
The goal of this section is to test the CLI as much as possible. If you can think of cases, please test. Please test on the 6th of July.
If you find a bug while testing, please raise an issue.
If you find any documentation ideas, which are missing above, please add a sub task
@kirrg001
ghost setup nginx
on the folderWhat if a self hoster creates a DO droplet and out of habits, he installs nginx and sets it up + configures it. Then he installs the CLI, runssee Detect manual nginx setup #310ghost install
and if the nginx prompt occurs, he decides for "yes i want that the CLI takes this over"? Which is a double configuration/installation of nginx. Or, he only installs nginx manually without configuring it and the he runs the CLI and prompts with "yes orkay!" --> based on the result, please add messages to the CLI likeIf you have already configured nginx for your ghost instance you can skip this step
. If the user creates a nginx config file by it's own and let the CLI create another one, the CLI can't detect this. Only if the file name is the same (test this as well)ghost help install
orghost help setup
- all special flags are listed[ ] use an expired letsencrypt cert and start Ghost - double check in the browser - then regenerate and see if you are running into any problemscan't simulate. can't expire a cert explicitly.[ ] test the letsencrypt cron job (manually decrease the renew time to 5minutes or something)!!!can't simulate. can't renew script within 5minutes or hours.General Improvements
@AileenCGN
Config file is not valid JSON
- could we show what is not valid? And also show a hint where to find the config file.@cobbspur
@ErisDS
ghost config
- make it very simple, just copy existing config logic and rename the properties to store mail configurationsystemd enable
gets called, so that ghost restarts after server shutdown@acburdine
ghost update
if there is no newer version available, you will get "No valid versions found.", which is 100% confusing.ERR_SPDY_PROTOCOL_ERROR
, but they had no clue what this means - ask @acburdine if this is interfering with SSL handling #190ghost --version
prints the version of the ghost blog - try to improve by printing Ghost-CLI version is: ....Real bugs
@acburdine
ghost service nginx-ssl <email>
errors (but ghost setup works)ghost start
-> e.g. show where debug file of the CLI lives, show where to find the ghost log file and show more details of the error itself e.g. nginx/ssl (test before again)Error messages in the CLI
@AileenCGN
ghost update
in a LTS folder we can detect this by checking if config.js exists or something else, which is specific to LTSThe text was updated successfully, but these errors were encountered: