Commit | Line | Data |
b58ecb01 |
1 | #!/bin/bash |
2 | |
afeb40d2 |
3 | # this file is executed in a subshell - set up the common stuff |
4 | source maint/travis-ci_scripts/common.bash |
5 | |
01fd95b6 |
6 | if [[ -n "$SHORT_CIRCUIT_SMOKE" ]] || [[ "$TRAVIS_PULL_REQUEST" != "false" ]] ; then exit 0 ; fi |
b58ecb01 |
7 | |
bf44bdb9 |
8 | # this part needs to run in parallel unconditionally |
9 | export VCPU_USE="$VCPU_AVAILABLE" |
baa02fa9 |
10 | export HARNESS_OPTIONS="j$VCPU_USE" |
bf44bdb9 |
11 | |
12 | |
13 | if [[ "$DEVREL_DEPS" == "true" ]] && perl -M5.008003 -e1 &>/dev/null ; then |
a32fbb3c |
14 | # FIXME - Devel::Cover (brought by Test::Strict, but soon needed anyway) |
15 | # does not test cleanly on 5.8.7 - just get it directly |
16 | if perl -M5.008007 -e1 &>/dev/null && ! perl -M5.008008 -e1 &>/dev/null; then |
17 | parallel_installdeps_notest Devel::Cover |
18 | fi |
19 | |
20 | # FIXME - workaround for YAML/RT#81120 and L::SRH/RT#107681 |
21 | # We don't actually need these modules, only there because of SQLT (which will be fixed) |
22 | # does not test cleanly on 5.8.7 - just get them directly |
23 | if ! perl -M5.008008 -e1 &>/dev/null; then |
24 | parallel_installdeps_notest YAML Lexical::SealRequireHints |
25 | fi |
26 | |
27 | # FIXME Change when Moose goes away |
28 | installdeps Moose $(perl -Ilib -MDBIx::Class::Optional::Dependencies=-list_missing,dist_dir) |
bf44bdb9 |
29 | |
30 | run_or_err "Attempt to build a dist" "rm -rf inc/ && perl Makefile.PL --skip-author-deps && make dist" |
31 | tarball_assembled=1 |
32 | |
33 | elif [[ "$CLEANTEST" != "true" ]] ; then |
afb8fc52 |
34 | parallel_installdeps_notest $(perl -Ilib -MDBIx::Class::Optional::Dependencies=-list_missing,dist_dir) |
bf44bdb9 |
35 | |
36 | run_or_err "Attempt to build a dist from original checkout" "make dist" |
37 | tarball_assembled=1 |
38 | fi |
39 | |
40 | |
41 | if [[ -n "$tarball_assembled" ]] ; then |
42 | |
7343c211 |
43 | echo "Contents of the resulting dist tarball:" |
44 | echo "===========================================" |
6a0cbc58 |
45 | tar -vzxf DBIx-Class-*.tar.gz |
7343c211 |
46 | echo "===========================================" |
bf44bdb9 |
47 | |
48 | # kill as much as possible with fire |
49 | purge_sitelib |
50 | |
baa02fa9 |
51 | |
52 | # undo some of the pollution (if any) affecting the plain install deps |
53 | # FIXME - this will go away once we move off Moose, and a new SQLT |
54 | # with much less recommends ships |
55 | export DBICTEST_SQLT_DEPLOY="" |
56 | export DBICTEST_VIA_REPLICATED="" |
57 | |
58 | |
bf44bdb9 |
59 | # make sure we are retrying with newest CPAN possible |
60 | # |
61 | # not running tests on CPAN.pm - they are not terribly slow, |
62 | # but https://rt.cpan.org/Ticket/Display.html?id=96437 sucks |
63 | parallel_installdeps_notest CPAN |
64 | run_or_err "Make sure CPAN was upgraded to at least 2.10" "perl -M'CPAN 2.010' -e1" |
65 | |
66 | run_or_err "Re-Configuring CPAN.pm" "perl -MCPAN -e '\ |
67 | CPAN::Config->load; |
68 | |
69 | # For the time being smoking with this setting is not realistic |
70 | # https://rt.cpan.org/Ticket/Display.html?id=103280 |
71 | # https://rt.cpan.org/Ticket/Display.html?id=37641 |
72 | # https://rt.cpan.org/Ticket/Display.html?id=77708 |
73 | # https://rt.cpan.org/Ticket/Display.html?id=87474 |
74 | #\$CPAN::Config->{build_requires_install_policy} = q{no}; |
75 | |
76 | \$CPAN::Config->{recommends_policy} = q{yes}; |
77 | CPAN::Config->commit; |
78 | '" |
79 | |
80 | cd "$(find DBIx-Class-* -maxdepth 0 -type d | head -n 1)" |
81 | |
baa02fa9 |
82 | # only run a full test cycle on devrel_deps, as they are all marked |
83 | # as "allow fails" in the travis matrix |
bf44bdb9 |
84 | if [[ "$DEVREL_DEPS" == "true" ]] ; then |
85 | |
86 | for e in $( env | grep 'DBICTEST.*DSN' | cut -f 1 -d '=' ) ; do |
87 | echo "Unsetting $e" |
88 | export $e="" |
89 | done |
90 | |
91 | run_or_err \ |
92 | "Attempt to configure/test/build/install dist using latest CPAN@$(perl -MCPAN -e 'print CPAN->VERSION')" \ |
93 | "cpan ." |
94 | |
95 | else |
96 | run_or_err \ |
97 | "Attempt to configure/build/install dist using latest CPAN@$(perl -MCPAN -e 'print CPAN->VERSION')" \ |
98 | "perl -MCPAN -e 'notest( install => q{.} )'" |
99 | fi |
344f1f52 |
100 | fi |