248 Commits

Author SHA1 Message Date
Andrew Janke
acc9a7ca85 brew test, install, update-test: add --keep-tmp option
Also enables sandbox for --interactive and --debug use of install
and test, using automatic retention.

Closes #66.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-18 12:23:08 -04:00
Xu Cheng
a8be17df57 test-bot: update for new deps/uses options
Closes #92.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-04-16 21:47:47 +08:00
Andrew Janke
1f8b6cb576 test-bot: add safety margin to output truncation size 2016-04-06 16:48:07 -04:00
Dominyk Tiller
bbb1fcd17c test-bot: stop using --recursive for brew uses
We're not sure this is working as it was intended to, and the primary
end product so far has been making every Ruby 1.8.7 build, which is the Ruby
we use on Mavericks for compatibility, take 5-15 minutes longer per build
than 2.x Rubies.

Cumulatively this is responsible for the vast majority of CI slowness over the
last couple months as Mavericks plays catch-up and everything else waits for it
to do so.

We may revisit this in future, but for now the harm is greater than the "risk".

This technically reverts 7b26c585c2.
2016-04-06 17:57:05 +01:00
Martin Afanasjew
37b817ed39 test-bot: fix access to relocated method
Fix bug introduced in a2c23dfec569c6e73d90cb20c7d4c26cced258d5. Moving
this method apparently made it inaccessible from `Homebrew::Step`.
2016-04-06 06:35:28 +02:00
Martin Afanasjew
a2c23dfec5 test-bot: fix undefined method error
The method `fix_encoding!` is private to `Homebrew::Step` but is also
required by the `Homebrew.sanitize_output_for_xml` method for truncating
overly long logs. Move `fix_encoding!` into the `Homebrew` module to
make it accessible from both this method and the `Homebrew::Step` class.

This amends commit 343091c828d1e572829b86253d79b326c1986bcd.
2016-04-06 06:22:22 +02:00
Andrew Janke
343091c828 Merge pull request #27 from apjanke/test-bot-xml-filter
test-bot: revise Step output transcoding and XML character filtering
2016-04-05 17:23:24 -04:00
Dominyk Tiller
20c2cbd98a Revert "test-bot: revise Step output transcoding and XML character filtering"
This reverts commit ceed6636d6986bb2b993ba4680ae484deb76ae29.

```
==> git clean -ffdx
HEAD is now at ceed663 test-bot: revise Step output transcoding and XML character filtering
Removing Library/Homebrew/test/.bundle/
Removing Library/Homebrew/test/fs_leak_log
Removing Library/Homebrew/test/vendor/
Error: invalid regular expression: /[^

 -uD7FFuE000-uFFFDu{10000}-u{10FFFF}]/
```
Using Ruby 1.8.
2016-04-05 05:03:20 +01:00
Andrew Janke
ceed6636d6 test-bot: revise Step output transcoding and XML character filtering
Closes #24.

Signed-off-by: Andrew Janke <andrew@apjanke.net>
2016-04-04 22:18:17 -04:00
Misty De Meo
f8cdab7d8a Make new keep? superenv logic opt-in
Closes #50425.

Signed-off-by: Misty De Meo <mistydemeo@github.com>
2016-04-04 15:30:22 -07:00
Xu Cheng
46c25d9833 test-bot: remove update-test 2016-04-03 21:39:59 +08:00
Andrew Janke
e70a3552d3 test-bot: exclude Taps dir from root cleanup 2016-04-03 14:31:12 +08:00
Andrew Janke
6283a274c8 test-bot: have --cleanup clean core repo as well as tested tap
Fixes Homebrew/homebrew#50651
2016-04-03 14:31:12 +08:00
Xu Cheng
232eccc428 test-bot: fix path in cleanup_before
We should remove PR lock files in the test tap rather than HOMEBREW_REPOSITORY.
2016-04-03 14:31:12 +08:00
Martin Afanasjew
ade39af247 Revert "test-bot: clean up on Jenkins before building PR"
This reverts commit 51e4e6490bda0d981afd1787a6392ab588b0601c. This did
not work as intended, as the `git` command is executed in the context of
the tap the current job operates on, never for Homebrew/homebrew itself.
2016-04-03 12:15:47 +08:00
Martin Afanasjew
75961721ee test-bot: clean up on Jenkins before building PR
Wipe everything from the Homebrew prefix except for the `Library/Taps`
directory to avoid having to refetch `homebrew/core` every time.
2016-04-03 12:15:47 +08:00
Xu Cheng
bdd26d0446 test-bot: ensure tap is full clone 2016-04-03 00:34:09 +08:00
Xu Cheng
4366ea1889 test-bot: fix CI upload for core tap 2016-04-03 00:10:41 +08:00
Xu Cheng
deed8e566c test-bot: handle legacy formulae PR from Homebrew/homebrew
Closes Homebrew/homebrew#50635.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-04-03 00:01:38 +08:00
Xu Cheng
5bb8e8985d audit/test-bot/pull: fix for core/formula separation
All formulae are in taps now.
2016-04-02 21:51:36 +08:00
Xu Cheng
161a1e286e Revert "test-bot: better xml character filtering"
This reverts commit 7032591bd44a8f50aaa55574ac97cd5cb7261460 and
commit 946c6deb4b5168ad2ec15e62aa6e81181e9e246c.
2016-03-14 20:41:33 +08:00
Xu Cheng
60055ba890 test-bot: fix encoding caused by UTF-8 regex 2016-03-14 20:33:35 +08:00
Xu Cheng
a6b918d6c5 test-bot: better xml character filtering
Ref:
 - http://www.w3.org/TR/xml/#charsets
 - http://stackoverflow.com/a/14323524

Closes Homebrew/homebrew#50092.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-03-14 19:58:15 +08:00
Xu Cheng
6f9f3faef3 test-bot: fix wrong tap argument check 2016-03-07 20:00:35 +08:00
Xu Cheng
5b63890198 test-bot: check if current repo is a tap
If it's not a tap, we test formula on CoreTap. This can happen
if we run test on a fork, e.g. Linuxbrew or future Homebrew/brew.

Closes Homebrew/homebrew#49844.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-03-07 19:43:46 +08:00
Xu Cheng
28f3dae8cd rename CoreFormulaRepository to CoreTap
Core tap will be separated from core code in the near future.
It makes sense to rename it to CoreTap.
2016-03-07 19:43:46 +08:00
Tim D. Smith
b4edf23a36 test-bot: make bottle stats visible by default
Closes Homebrew/homebrew#49620.
2016-02-28 09:51:14 -08:00
Xu Cheng
f92fc98ec0 test-bot: change directory for git rev-parse --verify 2016-01-17 15:06:07 +08:00
Xu Cheng
176f345386 test-bot: prevent formula building from source multiple times
After formula updates its bottle block, remove itself from changed
formulae list. Therefore, if it's requested next time as dependency, it
will be installed from bottle just created.

Closes Homebrew/homebrew#48121.

Signed-off-by: Xu Cheng <xucheng@me.com>
2016-01-17 14:52:09 +08:00
Xu Cheng
cb3379fcfa test-bot: all formula name are canonical now 2016-01-17 14:52:09 +08:00
Xu Cheng
edca96de04 test-bot: always use canonical formula name
Otherwise, we may get incorrect result when preforming set operations on
list of formula names.
2016-01-17 14:52:09 +08:00
Xu Cheng
b32d21fea0 test-bot: simplify Test#git 2016-01-17 14:52:09 +08:00
Xu Cheng
b73a6f195a test-bot: remove dead code 2016-01-17 14:52:09 +08:00
Xu Cheng
39eb93e0f5 test-bot: simplify Test#initialize 2016-01-17 14:52:09 +08:00
Xu Cheng
01b92edb7b test-bot: fix missing ? 2016-01-14 19:43:33 +08:00
Xu Cheng
e6159eb579 test-bot: always return tap object
Also simplify the code and add Travis auto detect.

Closes Homebrew/homebrew#48060
2016-01-14 19:32:53 +08:00
Dominyk Tiller
cbcfbacf22 test-bot: restore no-bottle support
This feature is still quite useful, particularly because of the somewhat
buggy behaviour of `default_formula` which means when attempting to build
a bottle it'll attempt to force the installation of that formula.

That is particularly problematic for taps like homebrew/homebrew-fuse because
the `default_formula` in osxfuse conflicts with the osxfuse binary we install
via the Caskroom, which is actively breaking every CI build.

Closes Homebrew/homebrew#48000.

Signed-off-by: Dominyk Tiller <dominyktiller@gmail.com>
2016-01-12 22:16:59 +00:00
Mike McQuaid
d73a97be6b test-bot: print ARGV temporarily.
Will help debug possible Travis issues.
2015-12-29 11:55:49 +00:00
Mike McQuaid
618123e4bf test-bot: skip more building.
There should be no compilation happening with `--fast`.
2015-12-29 11:54:43 +00:00
Xu Cheng
51efa46fcc test-bot: enable coverage on travis 2015-12-21 12:14:48 +08:00
Xu Cheng
0f84b976ba move CoreFormulaRepository into separate file
For users whose local brew is at around 2015-06-11 to 2015-08-06,
running `brew update` will emit following error:

  Error: uninitialized constant Formulary::CoreFormulaRepository

This is caused by the same bug described in Homebrew/homebrew#42553.

This commit workarounds this issue and restores `brew update` compatibility
for users mentioned above.

Also cleanup legacy `require "cmd/tap"`.
2015-12-19 22:05:30 +08:00
Mike McQuaid
c347d40f1b test-bot: allow tapuser/taprepo/tapformula format. 2015-12-11 20:16:05 +00:00
Xu Cheng
71e023a2c6 test-bot: fix resolve_test_tap 2015-12-11 21:46:02 +08:00
Xu Cheng
43713afa5f test-bot: remove dead code 2015-12-11 17:14:51 +08:00
Mike McQuaid
d48bdcdabb test-bot: remove ci-reset-and-update. 2015-12-11 08:48:59 +00:00
Xu Cheng
5773ca64c5 test-bot: fix Bintray url for bottle uploading 2015-12-11 16:19:51 +08:00
Mike McQuaid
65b197d2e0 test-bot: fix tap URL detection from Jenkins. 2015-12-11 08:10:59 +00:00
Mike McQuaid
e3dcf7776a Revert "test-bot: remove dead code."
This reverts commit 373da8666e633b06d8a5bb98621461b700f4b2d7.
2015-12-11 08:08:51 +00:00
Mike McQuaid
4b3056e2fc test-bot: fetch/audit formulae despite requirement
It's still useful to do a basic test even if requirements cannot be
satisfied.
2015-12-10 10:43:45 +00:00
Mike McQuaid
d2a44869f0 test-bot: remove dead code. 2015-12-10 10:43:45 +00:00