You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Joseph Lynch (JIRA)" <ji...@apache.org> on 2019/01/07 05:03:00 UTC

[jira] [Comment Edited] (CASSANDRA-14955) Website can be built without nodetool documentation by accident

    [ https://issues.apache.org/jira/browse/CASSANDRA-14955?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16735461#comment-16735461 ] 

Joseph Lynch edited comment on CASSANDRA-14955 at 1/7/19 5:02 AM:
------------------------------------------------------------------

I attached a patch to trunk ([^14955-trunk.txt] ) which will fail the {{gen-nodetool-docs}} script if the nodetool command fails, tested by running {{ant realclean}} and then:
{noformat}
cassandra-site/src » make add-doc                                                                                                                  2 ↵
make[1]: Entering directory '/home/josephl/pg/cassandra_trunk/doc'
rm -rf build/*
rm -f source/configuration/cassandra_config_file.rst
python convert_yaml_to_rst.py ../conf/cassandra.yaml source/configuration/cassandra_config_file.rst
python gen-nodetool-docs.py
Error: Could not find or load main class org.apache.cassandra.tools.NodeTool
ERROR: Nodetool failed to run, you likely need to build cassandra using ant jar from the top level directory
Traceback (most recent call last):
  File "gen-nodetool-docs.py", line 64, in <module>
    create_help_file()
  File "gen-nodetool-docs.py", line 48, in create_help_file
    raise cpe
subprocess.CalledProcessError: Command '['../bin/nodetool', 'help']' returned non-zero exit status 1
Makefile:72: recipe for target 'website' failed
make[1]: *** [website] Error 1
make[1]: Leaving directory '/home/josephl/pg/cassandra_trunk/doc'
Makefile:22: recipe for target '.build-doc' failed
make: *** [.build-doc] Error 2
{noformat}
The other changes are fixing the warning that {{make add-doc}} was emitting about the nodetool docs, now there are only the TOC errors left.

I've also attached a patch to the svn cassandra-site repo ( [^14955-cassandra-site-svn.patch]) which will run {{ant jar}} for you automatically before building the docs so that the user doesn't have to know they need the main repo built first.


was (Author: jolynch):
I attached a patch to trunk ([^14955-trunk.txt] ) which will fail the {{gen-nodetool-docs}} script if the nodetool command fails, tested by running {{ant realclean}} and then:
{noformat}
cassandra-site/src » make add-doc                                                                                                                  2 ↵
make[1]: Entering directory '/home/josephl/pg/cassandra_trunk/doc'
rm -rf build/*
rm -f source/configuration/cassandra_config_file.rst
python convert_yaml_to_rst.py ../conf/cassandra.yaml source/configuration/cassandra_config_file.rst
python gen-nodetool-docs.py
Error: Could not find or load main class org.apache.cassandra.tools.NodeTool
ERROR: Nodetool failed to run, you likely need to build cassandra using ant jar from the top level directory
Traceback (most recent call last):
  File "gen-nodetool-docs.py", line 64, in <module>
    create_help_file()
  File "gen-nodetool-docs.py", line 48, in create_help_file
    raise cpe
subprocess.CalledProcessError: Command '['../bin/nodetool', 'help']' returned non-zero exit status 1
Makefile:72: recipe for target 'website' failed
make[1]: *** [website] Error 1
make[1]: Leaving directory '/home/josephl/pg/cassandra_trunk/doc'
Makefile:22: recipe for target '.build-doc' failed
make: *** [.build-doc] Error 2
{noformat}
The other changes are fixing the warning that {{make add-doc}} was emitting about the nodetool docs, now there are only the TOC errors left.

I've also attached a patch to the svn cassandra-site repo ( [^14955-cassandra-site-svn.patch] which will run {{ant jar}} for you automatically before building the docs so that the user doesn't have to know they need the main repo built first.

> Website can be built without nodetool documentation by accident
> ---------------------------------------------------------------
>
>                 Key: CASSANDRA-14955
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14955
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Documentation/Website
>            Reporter: Joseph Lynch
>            Assignee: Joseph Lynch
>            Priority: Minor
>         Attachments: 14955-cassandra-site-svn.patch, 14955-trunk.txt
>
>
> While [~mick@thelastpickle.com] was generating docs today we accidentally pushed empty nodetool docs because the {{make website}} target doesn't fail if nodetool fails to run. We believe that this is due to the line in [gen-nodetool-docs.py|https://github.com/apache/cassandra/blob/trunk/doc/gen-nodetool-docs.py#L39] which uses subprocess.call instead of check_call.
> Let's make it so that if you try to build docs without nodetool being available the build should fail so that we cant make the same mistake again.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org