docs(15.9): document every fess-setup command and fix the ZIP first-run steps - #537
Merged
Merged
Conversation
…un steps Found while verifying 15.9.0. A reader who follows the 15.9 install guide for the ZIP does not reach a running Fess, and most of bin/fess-setup is not documented anywhere. Requires codelibs/fess#3447 and codelibs/fess#3448; merge those first. - install/install-linux.rst named "bin/fess-setup install plugins --opensearch-home", which exits 1 with "unknown component: plugins"; the command is "install opensearch-plugins" (codelibs/fess#3413). - The fess-setup tip claimed to perform the manual steps, but the OpenSearch it installed kept the security plugin enabled and FESS_DICTIONARY_PATH stayed unset. codelibs/fess#3447 adds plugins.security.disabled: true and lets bin/fess.in.sh and bin\fess.in.bat find the dictionary directory, so the tip and "Configure Fess" now say what is automatic and when the variable still has to be set by hand. - The "Before (default state)" excerpts were the 15.8 launchers. - Seven of the ten fess-setup commands were undocumented. - macOS ZIP users were not told that install opensearch refuses to run there. - Nothing said OpenSearch must run as a regular user, or how to recover the root-owned keystore a refused root start leaves behind. - The upgrade note on the removed embedded OpenSearch did not mention FESS_DICTIONARY_PATH. Changes, in the 15.9 tree of all seven languages: - install/fess-setup.rst (new, in the install toctree): every command, its options and exit codes, from FessSetup.java and Diagnostics.java. - install/install-linux.rst and install-windows.rst: non-root note, corrected tip, macOS note, 15.9 "Configure Fess" with the cases that still need FESS_DICTIONARY_PATH, the 15.9 launcher excerpts, why Windows paths need "/", and "bin/fess-setup check". - install/run.rst: where install opensearch puts OpenSearch, the root refusal and the chown that recovers from it. - install/troubleshooting.rst: the startup message when no engine answers, which names bin/fess-setup install opensearch (codelibs/fess#3448). - install/upgrade.rst: in the embedded OpenSearch section only, a paragraph on FESS_DICTIONARY_PATH. - install/install.rst and admin/plugin-guide.rst: pointers to the new page. - ko only: install commands for fess-storage-s3 and fess-storage-gcs in admin/fileconfig-guide.rst, and fess-storage-gcs in admin/storage-guide.rst. quick-start.rst is unchanged: it is outside the version trees and still describes 15.8.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Found while verifying 15.9.0. A reader who follows the 15.9 install guide for the ZIP does not reach a running Fess, and most of
bin/fess-setupis not documented anywhere.Requires codelibs/fess#3447 and codelibs/fess#3448; merge those first. The parts that describe their behaviour are marked [#3447] and [#3448] below; everything else is already true on
main. Can be merged independently of #536: ininstall/upgrade.rstthis only adds a paragraph inside the "embedded OpenSearch removed" section, and the two branches merge without conflicts.What is wrong in the 15.9 tree
install/install-linux.rsttells readers to add the plugins to an existing OpenSearch withbin/fess-setup install plugins --opensearch-home .... That exits 1 witherror: unknown component: plugins; since feat(setup): install and remove Fess plugins from the command line fess#3413 the command isinstall opensearch-plugins. The same line is in all seven languages.install opensearchwrote onlyconfigsync.config_path. The OpenSearch it installed kept the security plugin enabled and did not start (No SSL configuration found), and Fess could not create its indices becauseFESS_DICTIONARY_PATHstayed unset. fix(setup): make the OpenSearch installed by fess-setup usable without manual edits fess#3447 addsplugins.security.disabled: trueand letsbin/fess.in.sh/bin\fess.in.batfind the dictionary directory, so the tip and "Configure Fess" have to say what is now automatic and when the variable still has to be set by hand.bin/fess.in.shis the 15.8 file, with a commented-outSEARCH_ENGINE_HTTP_URLto uncomment. In 15.9 that line is active:SEARCH_ENGINE_HTTP_URL=${SEARCH_ENGINE_HTTP_URL:-http://localhost:9200}. The Windows excerpt still names%SEARCH_ENGINE_HOME%, which 15.9 removed.check,install opensearch-plugins,list,list installed,list plugins,remove pluginandupgrade plugins.install/install.rstsends macOS ZIP users to the Linux page, which does not say thatinstall opensearchexits with an error on macOS because OpenSearch publishes no macOS build.can not run opensearch as root) but leavesconfig/opensearch.keystoreowned by root, so the next start as a regular user fails withAccessDeniedException.SEARCH_ENGINE_HTTP_URLbut notFESS_DICTIONARY_PATH.admin/fileconfig-guide.rstdoes not say how to installfess-storage-s3andfess-storage-gcs, andadmin/storage-guide.rstdoes not mentionfess-storage-gcs.Changes
All in the 15.9 tree, in all seven languages unless noted.
install/fess-setup.rst(new, added to the install toctree): a reference for every command, taken from the usage text and option parsing inFessSetup.java,Diagnostics.javaandfess-setup.properties. It covers the exit codes (0, 1, 2);install opensearch, including what it appends toopensearch.yml, when it leaves a setting out, re-running it,--dest,--version, the refusal on macOS and a warning aboutplugins.security.disabled: true[#3447];install opensearch-plugins;install nodejs;install plugin,list plugins,list installed,upgrade plugins,remove pluginand--repository;list; andcheck, including what it checks, where the engine URL comes from,--playwrightand its exit code.install/install-linux.rst, ZIP section:bin/fess-setupwith it, has to run as a regular user.install opensearch-plugins, says whatinstall opensearchadds toopensearch.yml, that the Fess ZIP must be extracted first, and thatbin/fess.in.shthen setsFESS_DICTIONARY_PATH[#3447].install opensearch-plugins, or Docker.FESS_DICTIONARY_PATH: OpenSearch installed another way or with--destelsewhere, more than one OpenSearch underopensearch/, or OpenSearch on another host or port. The excerpt is the 15.9bin/fess.in.sh, and the notes cover the exported variables.bin/fess-setup check.install/install-windows.rst: the same tip changes forbin\fess-setupandbin\fess.in.bat[#3447], when "Configure Fess" can be skipped, the 15.9 default of the commentedfess.dictionary.pathline (C:/opensearch/config/dictionary, as in #3447), and why the path needs/: Fess substitutes it into the index settings, where a backslash is lost.install/run.rst: whereinstall opensearchputs OpenSearch, and the root refusal with thechownto recover from it.install/troubleshooting.rst: the startup message when no search engine answers, which now namesbin/fess-setup install opensearch[#3448].install/upgrade.rst: in "Removal of the embedded OpenSearch" only, a paragraph saying thatFESS_DICTIONARY_PATHhas to matchconfigsync.config_path, when the 15.9 launcher sets it [#3447], and where to set it otherwise.install/install.rst:install opensearchis for Linux and Windows, with pointers to the macOS note and the new page.admin/plugin-guide.rst: one paragraph onlist plugins,list installed,upgrade pluginsandremove plugin, with a link to the new page.fess-storage-s3andfess-storage-gcsinadmin/fileconfig-guide.rst, andfess-storage-gcsinadmin/storage-guide.rst.quick-start.rstis not changed. It sits outside the version trees and still describes 15.8, whose ZIP bundles OpenSearch, so its ZIP steps belong to the release switch.Verification
python3 tools/check_headings.pyon the 15.8 and 15.9 trees: passes.python3 -m unittest discover -s tools -p 'test_*.py': 79 tests OK.tools/update_eol.py --checkandtools/gen_properties_doc.py --check: pass.dummybuild of each language's 15.9 tree, compared withmain: no new warnings in any language, and the new page is built. The same comparison reports an unterminated inline literal and an unknown:doc:target when they are planted in the new page.:doc:references) is the same in all seven languages.git merge-treeof this branch with docs(15.9): upgrade guide covers stored Groovy jobs, carried-over config and plugin upgrades #536: no conflicts.FessSetup.java,Diagnostics.java,fess-setup.properties,bin/fess.in.shandbin\fess.in.baton codelibs/fessmainand on the branches of #3447 and #3448. On a 15.9.0-SNAPSHOT ZIP,bin/fess-setupwas run with no arguments (usage, exit 2), withlist(exit 0),list installed(exit 0),install plugins --opensearch-home ...(unknown component: plugins, exit 1),install opensearch-pluginswithout--opensearch-home(exit 2),remove pluginwithout a name (exit 2), andinstall opensearchon macOS (Homebrew and Docker hint, exit 1).The non-English wording has not been reviewed by native speakers.