api
{
"os": "linux",
"dist": "xenial",
"language": "c",
"arch": "amd64",
"jobs": [
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "ppc64le",
"dist": "xenial",
"name": "xenial-ppc64le",
"language": "c"
},
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "ppc64le",
"dist": "bionic",
"name": "bionic-ppc64le",
"language": "c"
},
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "s390x",
"dist": "xenial",
"name": "xenial-s390x",
"language": "c"
},
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "s390x",
"dist": "bionic",
"name": "bionic-s390x",
"language": "c"
},
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "arm64",
"dist": "xenial",
"name": "xenial-arm64",
"language": "c"
},
{
"env": {
"VERSION": "5.30.1",
"ALIAS": "5.30"
},
"os": "linux",
"arch": "arm64",
"dist": "bionic",
"name": "bionic-arm64",
"language": "c"
}
]
}
travis-ci/perl-builder:.travis.yml@b3f8a0c
language: perl
perl: '5.22.0'
jobs:
include:
- sudo: required
language: minimal
dist: bionic
os: linux
group: dev
name: bionic
- sudo: required
language: minimal
dist: xenial
os: linux
group: edge
name: xenial
- sudo: required
dist: trusty
os: linux
services:
- docker
name: trusty
- dist: precise
os: linux
name: precise
# - os: osx
# osx_image: xcode6.4
# env:
# - RELEASE=yosemite
- os: osx
osx_image: xcode7.3
name: el_capitan
# - os: osx
# osx_image: xcode8.3
# env:
# - RELEASE=sierra
- arch: ppc64le
dist: xenial
os: linux
name: xenial-ppc64le
language: c
- arch: ppc64le
dist: bionic
os: linux
name: bionic-ppc64le
language: c
- arch: s390x
dist: xenial
os: linux
name: xenial-s390x
language: c
- arch: s390x
dist: bionic
os: linux
name: bionic-s390x
language: c
- arch: arm64
dist: xenial
os: linux
name: xenial-arm64
language: c
- arch: arm64
dist: bionic
os: linux
name: bionic-arm64
language: c
env:
global:
- VERSION='5.24.3'
- ALIAS='5.24'
- ARGS=''
#install:
#- if [[ $TRAVIS_OS_NAME = 'osx' ]]; then sudo chown -R $USER $HOME/perl5/; fi
#- \curl -sSL -o perlbrew.sh http://install.perlbrew.pl
#- chmod +x perlbrew.sh
#- ./perlbrew.sh
#- export PATH=$HOME/perl5/perlbrew/bin:$PATH
before_script:
- export LSB_RELEASE=$(lsb_release -rs 2>/dev/null || sw_vers -productVersion | sed 's/^\([0-9][0-9]*.[0-9][0-9]*\).*/\1/')
- export OS_NAME=${OS_NAME:-$((lsb_release -is 2>/dev/null || echo "osx") | tr "A-Z" "a-z")}
- export ARCH=$(uname -m)
script:
- if [[ $TRAVIS_OS_NAME = 'osx' ]]; then source $HOME/perl5/perlbrew/etc/bashrc; fi
- perlbrew install-cpanm --force
- (perlbrew list | grep $VERSION) && (yes | perlbrew uninstall $VERSION) || true
- perlbrew install perl-$VERSION --as $VERSION $ARGS --notest & tail -f ~/perl5/perlbrew/build.perl-$VERSION.log & PID=$!
- echo $PID; sleep 600
- |
if [[ x$ALIAS != x ]]; then
for alias in $ALIAS; do
(yes | perlbrew uninstall $ALIAS) || true; perlbrew alias -f create $VERSION $ALIAS || true
perlbrew list
TAR_PATHS='$HOME/perl5/perlbrew/perls/$alias'
TAR_PATHS="$TAR_PATHS $HOME/perl5/perlbrew/perls/$alias"
if [[ -z "${MODULES}" ]]; then export MODULES='ExtUtils::MakeMaker Dist::Zilla Moose Test::Pod Test::Pod::Coverage Test::Exception Dist::Zilla::Plugin::Bootstrap::lib LWP Module::Install Test::Most'; fi
for module in $MODULES; do perlbrew use $VERSION && cpanm $module --force --notest; done
done
else
perlbrew list
fi
- if [[ -z "${MODULES}" ]]; then export MODULES='ExtUtils::MakeMaker Dist::Zilla Moose Test::Pod Test::Pod::Coverage Test::Exception Dist::Zilla::Plugin::Bootstrap::lib LWP Module::Install Test::Most'; fi
- for module in $MODULES; do perlbrew use $VERSION && cpanm $module --force --notest; done
after_success:
- mkdir -p $TRAVIS_BUILD_DIR/$LSB_RELEASE/
- tar cjf $TRAVIS_BUILD_DIR/$LSB_RELEASE/perl-${NAME:-${VERSION}}.tar.bz2 $HOME/perl5/perlbrew/perls/$VERSION $HOME/perl5/perlbrew/bin
- if [[ x$ALIAS != x ]]; then tar cjf $TRAVIS_BUILD_DIR/$LSB_RELEASE/perl-${ALIAS}.tar.bz2 $HOME/perl5/perlbrew/perls/$VERSION $HOME/perl5/perlbrew/perls/$ALIAS $HOME/perl5/perlbrew/bin; fi
- ls -l $TRAVIS_BUILD_DIR/$LSB_RELEASE
addons:
artifacts:
paths:
- $LSB_RELEASE/
target_paths:
- /binaries/$OS_NAME/$LSB_RELEASE/$ARCH
Build Config
{
"os": [
"linux"
],
"env": {
"global": [
{
"VERSION": "'5.24.3'"
},
{
"ALIAS": "'5.24'"
},
{
"ARGS": "''"
}
]
},
"arch": [
"amd64"
],
"dist": "xenial",
"jobs": {
"include": [
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "ppc64le",
"dist": "xenial",
"name": "xenial-ppc64le",
"language": "c"
},
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "ppc64le",
"dist": "bionic",
"name": "bionic-ppc64le",
"language": "c"
},
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "s390x",
"dist": "xenial",
"name": "xenial-s390x",
"language": "c"
},
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "s390x",
"dist": "bionic",
"name": "bionic-s390x",
"language": "c"
},
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "arm64",
"dist": "xenial",
"name": "xenial-arm64",
"language": "c"
},
{
"os": "linux",
"env": [
{
"ALIAS": "5.30",
"VERSION": "5.30.1"
}
],
"arch": "arm64",
"dist": "bionic",
"name": "bionic-arm64",
"language": "c"
}
]
},
"perl": [
"5.22.0"
],
"addons": {
"artifacts": {
"paths": [
"$LSB_RELEASE/"
],
"target_paths": [
"/binaries/$OS_NAME/$LSB_RELEASE/$ARCH"
]
}
},
"script": [
"if [[ $TRAVIS_OS_NAME = 'osx' ]]; then source $HOME/perl5/perlbrew/etc/bashrc; fi",
"perlbrew install-cpanm --force",
"(perlbrew list | grep $VERSION) && (yes | perlbrew uninstall $VERSION) || true",
"perlbrew install perl-$VERSION --as $VERSION $ARGS --notest & tail -f ~/perl5/perlbrew/build.perl-$VERSION.log & PID=$!",
"echo $PID; sleep 600",
"if [[ x$ALIAS != x ]]; then\n for alias in $ALIAS; do\n (yes | perlbrew uninstall $ALIAS) || true; perlbrew alias -f create $VERSION $ALIAS || true\n perlbrew list\n TAR_PATHS='$HOME/perl5/perlbrew/perls/$alias'\n TAR_PATHS=\"$TAR_PATHS $HOME/perl5/perlbrew/perls/$alias\"\n if [[ -z \"${MODULES}\" ]]; then export MODULES='ExtUtils::MakeMaker Dist::Zilla Moose Test::Pod Test::Pod::Coverage Test::Exception Dist::Zilla::Plugin::Bootstrap::lib LWP Module::Install Test::Most'; fi\n for module in $MODULES; do perlbrew use $VERSION && cpanm $module --force --notest; done\n done\nelse\n perlbrew list\nfi\n",
"if [[ -z \"${MODULES}\" ]]; then export MODULES='ExtUtils::MakeMaker Dist::Zilla Moose Test::Pod Test::Pod::Coverage Test::Exception Dist::Zilla::Plugin::Bootstrap::lib LWP Module::Install Test::Most'; fi",
"for module in $MODULES; do perlbrew use $VERSION && cpanm $module --force --notest; done"
],
"language": "c",
"after_success": [
"mkdir -p $TRAVIS_BUILD_DIR/$LSB_RELEASE/",
"tar cjf $TRAVIS_BUILD_DIR/$LSB_RELEASE/perl-${NAME:-${VERSION}}.tar.bz2 $HOME/perl5/perlbrew/perls/$VERSION $HOME/perl5/perlbrew/bin",
"if [[ x$ALIAS != x ]]; then tar cjf $TRAVIS_BUILD_DIR/$LSB_RELEASE/perl-${ALIAS}.tar.bz2 $HOME/perl5/perlbrew/perls/$VERSION $HOME/perl5/perlbrew/perls/$ALIAS $HOME/perl5/perlbrew/bin; fi",
"ls -l $TRAVIS_BUILD_DIR/$LSB_RELEASE"
],
"before_script": [
"export LSB_RELEASE=$(lsb_release -rs 2>/dev/null || sw_vers -productVersion | sed 's/^\\([0-9][0-9]*.[0-9][0-9]*\\).*/\\1/')",
"export OS_NAME=${OS_NAME:-$((lsb_release -is 2>/dev/null || echo \"osx\") | tr \"A-Z\" \"a-z\")}",
"export ARCH=$(uname -m)"
]
}