Skip to content
This repository has been archived by the owner on Feb 4, 2020. It is now read-only.

add --no-build option to test and test_pkg #32

Merged
merged 1 commit into from
Apr 15, 2015
Merged

Conversation

wjwwood
Copy link
Contributor

@wjwwood wjwwood commented Apr 15, 2015

This option will skip trying to build the package before testing. This should really speed up our build farm jobs which are basically building twice for no reason. Most packages just do a quick build check and install check, but it still takes time. Others actually rebuild, for why I don't know, but it may be because the files get installed again and therefore the are touched.

@dirk-thomas @esteve @tfoote for review.

@wjwwood wjwwood added the in progress Actively being worked on (Kanban column) label Apr 15, 2015
@@ -46,6 +46,10 @@ def prepare_arguments(parser, args):
default=False,
help='Stop after tests with errors or failures',
)
parser.add_argument(
'-n', '--no-build', dest='build_before_test', default=True, action='store_false',
help="assumes package is built, only running the tests"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To match other arguments I would suggest:

help='Skip building package, assuming it has been built before'

@tfoote
Copy link
Member

tfoote commented Apr 15, 2015

+1

1 similar comment
@esteve
Copy link
Contributor

esteve commented Apr 15, 2015

+1

@wjwwood
Copy link
Contributor Author

wjwwood commented Apr 15, 2015

Ok, I've pushed an entirely different commit which just adds a --skip-build option to build_pkg. So now our build farm can just do:

$ ./src/ament/ament_tools/scripts/ament.py test src --skip-build --skip-install

After building of course.

@wjwwood
Copy link
Contributor Author

wjwwood commented Apr 15, 2015

@dirk-thomas @esteve @tfoote can I get a new review?

@tfoote
Copy link
Member

tfoote commented Apr 15, 2015

+1

1 similar comment
@esteve
Copy link
Contributor

esteve commented Apr 15, 2015

+1

@dirk-thomas
Copy link
Contributor

+1

Do you have as specific build log where it rebuild stuff on the second run? That would indicate that some part in our build process is buggy and we might want to investigate that further...

@wjwwood
Copy link
Contributor Author

wjwwood commented Apr 15, 2015

All of the current build farm builds do some rebuilding:

http://54.183.26.131:8080/job/ros2_batch_ci_linux/13/consoleFull

For example, if you search for TwoInts_ServiceTypeSupport_Introspection.cpp.o, it occurs twice.

wjwwood added a commit that referenced this pull request Apr 15, 2015
add --no-build option to test and test_pkg
@wjwwood wjwwood merged commit c872bfc into master Apr 15, 2015
@wjwwood wjwwood removed the in progress Actively being worked on (Kanban column) label Apr 15, 2015
@wjwwood wjwwood deleted the test_option_no_build branch April 15, 2015 22:04
@wjwwood
Copy link
Contributor Author

wjwwood commented Apr 15, 2015

I opened a ticket to track this: ros2/ros2#40

I think it will take some time to figure out what is being done redundantly build to build, and to then dig into the potential causes of those items and find solutions. I don't think I have time to do it right now, but it might be something someone can pick up in their spare time.

Even if there was no rebuilding build to build, these options are probably a good idea on the farm since it will skip the make check and the redundant install/install check.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants