Closed
Bug 838259
Opened 13 years ago
Closed 12 years ago
Update DXR master to a newer version
Categories
(Release Engineering :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: jcranmer, Unassigned)
References
Details
Attachments
(3 files, 11 obsolete files)
|
434.38 KB,
application/gzip
|
Details | |
|
5.81 KB,
patch
|
rail
:
review+
rail
:
checked-in+
|
Details | Diff | Splinter Review |
|
930 bytes,
patch
|
rail
:
review+
rail
:
checked-in+
|
Details | Diff | Splinter Review |
This requires changing several scripts and uploading tarballs, so I want to have a test version run first.
| Reporter | ||
Comment 1•13 years ago
|
||
| Reporter | ||
Comment 2•13 years ago
|
||
Modulo the fact that the manifest entry for dxr-build-env.tar.gz has to be changed, and the fact that I'm using a separate repository clone for the test, this should be the patch to the buildbot scripts that would go into production.
Comment 3•13 years ago
|
||
I had to change the script to make it work:
* removed setup.sh from the manifest (it's not used)
* updated dxr-build-env.tar.gz information in the manifest (implying that te attached tarball is suposed to be used)
* chmoded dxr.sh 755 (reverted 644 done by the patch)
* commands passed to mock --shell should be quoted
BTW, can we add "set -x" to the top of the script to make it more verbose?
ATM, the script fails with the following errors:
https://gist.github.com/rail/4719860
| Reporter | ||
Comment 4•13 years ago
|
||
Okay, I had paths wrong. This new patch adds a set -x and should have correct paths.
Attachment #710297 -
Attachment is obsolete: true
Attachment #710481 -
Attachment is obsolete: true
Comment 5•13 years ago
|
||
With this change:
-MOCK_PATH=/usr/local/bin:$PWD/clang/bin:$PATH
+MOCK_PATH=/usr/local/bin:$PWD/dxr-build-env/clang/bin:$PATH
the script fails:
https://gist.github.com/rail/4720392
| Reporter | ||
Comment 6•13 years ago
|
||
So the base versions of gcc/g++ on the builder are too old.
What if you tried adding CC/CXX for the mock_mozilla to build dxr:
mock_mozilla -r mozilla-centos6-x86_64 --cwd=$PWD --shell --unpriv /bin/env PATH=$MOCK_PATH CC=clang CXX=clang++ "make -C dxr"
Comment 7•13 years ago
|
||
Closer :)
https://gist.github.com/rail/4722751
| Reporter | ||
Comment 8•13 years ago
|
||
Alas, this one requires changes to dxr-build-env.tar.gz.
Attachment #710294 -
Attachment is obsolete: true
Updated•13 years ago
|
Attachment #710673 -
Attachment is patch: false
Attachment #710673 -
Attachment mime type: text/plain → application/octet-stream
| Reporter | ||
Comment 9•13 years ago
|
||
Looks like the dxr.config file was busted. Let's try this one.
Attachment #710673 -
Attachment is obsolete: true
Comment 10•13 years ago
|
||
Still failing: https://gist.github.com/rail/4724757
Comment 11•13 years ago
|
||
I ended up by setting LD_LIBRARY_PATH instead of copying files to system-wide directories. The script fails with the following error now:
https://gist.github.com/rail/4726910
Comment 12•13 years ago
|
||
Attachment #711016 -
Attachment is obsolete: true
| Reporter | ||
Comment 13•13 years ago
|
||
I've moved the dxr.config out of the manifest tarball, which should make deployment easier in theory.
Attachment #710498 -
Attachment is obsolete: true
Attachment #711157 -
Attachment is obsolete: true
Comment 14•13 years ago
|
||
... and the output: https://gist.github.com/rail/4736020
Almost there! :)
Comment 15•13 years ago
|
||
This one worked fine. All green.
Attachment #711643 -
Attachment is obsolete: true
| Reporter | ||
Comment 16•13 years ago
|
||
This should be all the changes that need to go live.
Attachment #711339 -
Attachment is obsolete: true
Attachment #711996 -
Attachment is obsolete: true
Attachment #712553 -
Flags: review?(rail)
Comment 17•13 years ago
|
||
Comment on attachment 712553 [details] [diff] [review]
Update dxr building
Review of attachment 712553 [details] [diff] [review]:
-----------------------------------------------------------------
Thanks for the patch.
Nothing critical to fix, just some style issues. It'd be better to keep the code more readable so we can easier to change it in the future.
I'll be glad to test the final patch in staging again.
::: scripts/dxr/dxr.sh
@@ +48,5 @@
> +mock_mozilla -v -r mozilla-centos6-x86_64 --install autoconf213 python zip mozilla-python27-mercurial git ccache glibc-static libstdc++-static perl-Test-Simple perl-Config-General gtk2-devel libnotify-devel alsa-lib-devel libcurl-devel wireless-tools-devel libX11-devel libXt-devel mesa-libGL-devel gnome-vfs2-devel GConf2-devel wget mpfr xorg-x11-font* imake gcc45_0moz3 yasm pulseaudio-libs-devel || exit 2
> +# Old version
> +mock_mozilla -r mozilla-centos6-x86_64 --install pyxdg python-devel || exit 2
> +# New things to add:
> +mock_mozilla -r mozilla-centos6-x86_64 --install python-jinja2 python-pygments sqlite-devel || exit 2
Can you merge the --install commands above into one and wrap the line with backslash so it's more readable? Keeping -v would be great so it'll be easier to debug errors.
@@ +49,5 @@
> +# Old version
> +mock_mozilla -r mozilla-centos6-x86_64 --install pyxdg python-devel || exit 2
> +# New things to add:
> +mock_mozilla -r mozilla-centos6-x86_64 --install python-jinja2 python-pygments sqlite-devel || exit 2
> +# XXX: still need pysqlite?
Not sure what this means. Is the comment still valid?
@@ +61,5 @@
> rm -rf dxr-build-env
> mkdir -p dxr-build-env
> python /tools/tooltool.py -m $(dirname $0)/dxr.manifest -o --url http://runtime-binaries.pvt.build.mozilla.org/tooltool fetch
> +tar xf clang.tar.bz2 -C dxr-build-env || exit 2
> +tar xf dxr-build-env.tar.gz -C dxr-build-env || exit 2
Do you really need all these "|| exit 2". They look ... ugly. You already have "set -e", so it should just exit non zero if it fails.
@@ +79,5 @@
> +# Unpack trilite
> +mv trilite dxr/trilite
> +
> +# Build DXR binary plugins
> +mock_mozilla -r mozilla-centos6-x86_64 --cwd=$PWD --shell --unpriv /bin/env PATH=$MOCK_PATH CC=clang CXX=clang++ "make -C dxr"
Could you wrap this line as well?
@@ +103,5 @@
> echo "Starting build"
> set +e
> +# XXX: compile-build hack
> +echo "ac_add_options --enable-stdcxx-compat" > src/.mozconfig
> +mock_mozilla -r mozilla-centos6-x86_64 --cwd=$PWD --shell --unpriv /bin/env PATH=$MOCK_PATH LD_LIBRARY_PATH=$PWD/dxr/trilite "dxr/dxr-build.py -j6 -f dxr.config -s -t $branch" 2>&1 | grep -v 'Unprocessed kind'
And this one.
Attachment #712553 -
Flags: review?(rail) → review-
| Reporter | ||
Comment 18•13 years ago
|
||
(In reply to Rail Aliiev [:rail] from comment #17)
> Do you really need all these "|| exit 2". They look ... ugly. You already
> have "set -e", so it should just exit non zero if it fails.
I don't pretend to understand releng scripts, but I was thinking that they may have been used to distinguish between different types of failures (Blue versus red, in tbpl color terminology). But I'm not an expert.
Comment 19•13 years ago
|
||
Not a big deal, can live. :)
| Reporter | ||
Comment 20•13 years ago
|
||
Attachment #712553 -
Attachment is obsolete: true
Attachment #712707 -
Flags: review?(rail)
Comment 21•13 years ago
|
||
Comment on attachment 712707 [details] [diff] [review]
Update dxr building
lgtm. if you want I can run a staging test tomorrow.
Attachment #712707 -
Flags: review?(rail) → review+
| Reporter | ||
Comment 22•13 years ago
|
||
that'd be fine.
Comment 23•13 years ago
|
||
It failed:
+ mock_mozilla -r mozilla-centos6-x86_64 --cwd=/builds/slave/dxr-mozilla-central/dxr-build-env --shell --unpriv /bin/env PATH=/usr/local/bin:/builds/slave/dxr-mozilla-central/dxr-build-env/clang/bin:/usr/local/bin:/usr/lib64/ccache:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/cltbld/bin CC=clang CXX=clang++ 'make -C dxr'
INFO: mock_mozilla.py version 1.0.3 starting...
State Changed: init plugins
INFO: selinux disabled
State Changed: start
State Changed: lock buildroot
State Changed: shell
make: *** No targets specified and no makefile found. Stop.
make: Entering directory `/builds/slave/dxr-mozilla-central/dxr-build-env/dxr'
make: Leaving directory `/builds/slave/dxr-mozilla-central/dxr-build-env/dxr'
State Changed: unlock buildroot
program finished with exit code 2
Sounds like http://hg.mozilla.org/users/Pidgeot18_gmail.com/dxr-test is somehow different from http://hg.mozilla.org/projects/dxr
| Reporter | ||
Comment 24•13 years ago
|
||
(In reply to Rail Aliiev [:rail] from comment #23)
> Sounds like http://hg.mozilla.org/users/Pidgeot18_gmail.com/dxr-test is
> somehow different from http://hg.mozilla.org/projects/dxr
Oh, I haven't pushed the changes on dxr master yet.
Comment 25•13 years ago
|
||
Comment on attachment 712707 [details] [diff] [review]
Update dxr building
http://hg.mozilla.org/build/tools/rev/2afb2bd56420
Attachment #712707 -
Flags: checked-in+
| Reporter | ||
Comment 26•13 years ago
|
||
Comment 27•13 years ago
|
||
Comment on attachment 713244 [details] [diff] [review]
Fix -s -t issue
http://hg.mozilla.org/build/tools/rev/06bdb4f450df
Attachment #713244 -
Flags: review+
Attachment #713244 -
Flags: checked-in+
Comment 28•13 years ago
|
||
The scripts is being killed by buildbot after 7200 secs without any output. Can you somehow change the script so it prints something useful so we can debug? Something like:
blah blah | tee log.txt
# check $?
grep -v 'Unprocessed kind' log.txt && (echo "found"; exit 2)
| Reporter | ||
Comment 29•12 years ago
|
||
This has long since been checked in.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
| Assignee | ||
Updated•12 years ago
|
Product: mozilla.org → Release Engineering
| Assignee | ||
Updated•7 years ago
|
Component: General Automation → General
You need to log in
before you can comment on or make changes to this bug.
Description
•