1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/.travis.yml
k0kubun 4d60654690 .travis.yml: workaround to resolve ::1
Container-based Trusty environment (sudo: false) does not support IPv6.
https://github.com/travis-ci/travis-ci/issues/3302

And the image has "::1  localhost ip6-localhost ip6-loopback" entry in
addition to "127.0.0.1 localhost" in /etc/hosts.
Thus when it can resolve localhost to ::1 and CI fails.

To resolve this, at least we need to modify /etc/hosts for now but we
can't modify /etc/hosts without sudo.

So I enabled sudo. As Sudo-enabled VM didn't have "::1 localhost" entry,
this change fixed the cause without touching /etc/hosts.

Since boot of `sudo: required` is slower than `sudo: false`, please revert
this commit anytime when Container-based Trusty environment is updated and
::1 issue has gone.
https://docs.travis-ci.com/user/reference/overview/

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-10 11:50:00 +00:00

104 lines
3 KiB
YAML

# Copyright (C) 2011 Urabe, Shyouhei. All rights reserved.
#
# This file is a part of the programming language Ruby. Permission is hereby
# granted, to either redistribute or modify this file, provided that the
# conditions mentioned in the file COPYING are met. Consult the file for
# details.
# This is a Travis-CI build configuration file. The list of configurations
# available is located in
#
# http://about.travis-ci.org/docs/user/build-configuration/
#
# and as Ruby itself is a project written in C language,
#
# http://about.travis-ci.org/docs/user/languages/c/
#
# is also a good place to look at.
language: c
dist: trusty
sudo: required
compiler:
- gcc
os:
- linux
before_install:
- "CONFIG_FLAG="
- "JOBS=-j`nproc`"
before_script:
- "echo JOBS=$JOBS"
- "uname -a"
- "uname -r"
- "rm -fr .ext autom4te.cache"
- "echo $TERM"
- "> config.status"
- "sed -f tool/prereq.status Makefile.in common.mk > Makefile"
- "make update-config_files"
- "make touch-unicode-files"
- "make -s $JOBS srcs UNICODE_FILES=."
- "requests=; for req in ${RUBYSPEC_PULL_REQUEST//,/ }; do
requests=\"$requests +refs/pull/$req/merge:\";
done"
- "${requests:+git -C spec/ruby -c user.email=none -c user.name=none pull --no-edit origin $requests}"
- "${requests:+git -C spec/ruby log --oneline origin/master..@}"
- "rm config.status Makefile rbconfig.rb .rbconfig.time"
- "mkdir build config_1st config_2nd"
- "chmod -R a-w ."
- "chmod u+w build config_1st config_2nd"
- "cd build"
- "../configure -C --disable-install-doc --with-gcc=$CC $CONFIG_FLAG"
- "cp -pr config.cache config.status .ext/include ../config_1st"
- "make reconfig"
- "cp -pr config.cache config.status .ext/include ../config_2nd"
- "(cd .. && exec diff -ru config_1st config_2nd)"
- "make -s $JOBS"
script:
- "make -s test TESTOPTS=--color=never"
- "make -s $JOBS test-all -o exts TESTOPTS='-q --color=never --job-status=normal'"
- "make -s $JOBS test-spec MSPECOPT=-j"
# Branch matrix. Not all branches are Travis-ready so we limit branches here.
branches:
only:
- trunk
- ruby_2_2
- ruby_2_3
- ruby_2_4
- /^feature\//
- /^bug\//
# We want to be notified when something happens.
notifications:
irc:
channels:
- "chat.freenode.net#ruby-core"
- "chat.freenode.net#ruby-ja"
on_success: change # [always|never|change] # default: always
on_failure: always # [always|never|change] # default: always
template:
- "%{message} by @%{author}: See %{build_url}"
slack:
secure: TNRGiWGytGSLDAjJLR0NVXKlHhba6Kf584wU7mXqiOCDNBQ0LHUsrIMaL38uvpnzQ6NeV5j5k575LAZyuGXKczSrOTeIBJaHfw6Wj/8WUnifnNcIFozZ5DH9/S2EuiVcslDmoRflOFSTkocpE0MElt2KU2kNCzeq3/iVatNT8Nw=
on_pull_requests: false
on_success: change
on_failure: always
email:
- ko1c-failure@atdot.net
# Local Variables:
# mode: YAML
# coding: utf-8-unix
# indent-tabs-mode: nil
# tab-width: 4
# fill-column: 79
# default-justification: full
# End: