smokeTestRelease.py's regex for TestBackwardsCompatibility is brittle, breaks if user uses ant's ANT_ARGS [LUCENE-6235]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
smokeTestRelease.py has always exec'ed "ant" on source releases to smoke check the build - but the changes intorduced in #6925 also do a regex over the output of the ant call to run TestBackwardsCompatibility.
This regex doesn't play nicely however if the user has ANT_ARGS configured to use an alternative logger - in particular i (and i'm guessing i'm not alone among the general ant using populace) have this in my shell...
```
$ env | grep ANT
ANT_HOME=/opt/ant/default/
ANT_ARGS=-logger org.apache.tools.ant.listener.AnsiColorLogger
```
The AnsiColorLogger, and the control characters it outputs to color the output lines, seems to break the regex matching for TestBackwardsCompatibility's output.
Workarround (seems to be - still testing) for smoke testers to force their environment to specify the DefaultLogger...
```
$ ANT_ARGS='-logger org.apache.tools.ant.DefaultLogger' python3.2 dev-tools/scripts/smokeTestRelease.py http://people.apache.org/\~anshum/staging_area/lucene-solr-5.0.0-RC2-rev1658469
```
---
Migrated from [LUCENE-6235](https://issues.apache.org/jira/browse/LUCENE-6235) by Chris M. Hostetter (@hossman)
Linked issues:
- #7296
Contributor guide
Research direction
Start in dev-tools/scripts/smokeTestRelease.py and inspect the regex that parses the ant output for TestBackwardsCompatibility. Reproduce the smoke test with ANT_ARGS set to the AnsiColorLogger value shown, then compare it with the DefaultLogger workaround. Done means the script can identify and run TestBackwardsCompatibility despite the alternative logger output.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, python
- Domain
- build-system, release, testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100