Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
protobuf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
protobuf
Commits
e28286fa
Commit
e28286fa
authored
Oct 12, 2016
by
Paul Yang
Committed by
GitHub
Oct 12, 2016
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add 32-bit machine test on jenkins. (#2245)
parent
afaa8278
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
130 additions
and
13 deletions
+130
-13
README.md
README.md
+1
-1
build_and_run_docker.sh
jenkins/build_and_run_docker.sh
+1
-0
pull_request.sh
jenkins/buildcmds/pull_request.sh
+1
-0
pull_request_32.sh
jenkins/buildcmds/pull_request_32.sh
+16
-0
Dockerfile
jenkins/docker32/Dockerfile
+108
-0
pull_request_in_docker.sh
jenkins/pull_request_in_docker.sh
+3
-12
No files found.
README.md
View file @
e28286fa
Protocol Buffers - Google's data interchange format
===================================================
[
![Build Status
](
https://travis-ci.org/google/protobuf.svg?branch=master
)
](https://travis-ci.org/google/protobuf)
[
![Build status
](
https://ci.appveyor.com/api/projects/status/73ctee6ua4w2ruin?svg=true
)
](https://ci.appveyor.com/project/protobuf/protobuf)
[
![Build Status
](
https://grpc-testing.appspot.com/buildStatus/icon?job=protobuf_branch
)
](https://grpc-testing.appspot.com/job/protobuf_branch)
[
![Build Status
](
https://travis-ci.org/google/protobuf.svg?branch=master
)
](https://travis-ci.org/google/protobuf)
[
![Build status
](
https://ci.appveyor.com/api/projects/status/73ctee6ua4w2ruin?svg=true
)
](https://ci.appveyor.com/project/protobuf/protobuf)
[
![Build Status
](
https://grpc-testing.appspot.com/buildStatus/icon?job=protobuf_branch
)
](https://grpc-testing.appspot.com/job/protobuf_branch)
[
![Build Status
](
https://grpc-testing.appspot.com/job/protobuf_branch_32/badge/icon
)
](https://grpc-testing.appspot.com/job/protobuf_branch_32)
Copyright 2008 Google Inc.
...
...
jenkins/build_and_run_docker.sh
View file @
e28286fa
...
...
@@ -33,6 +33,7 @@ docker run \
"
$@
"
\
-e
CCACHE_DIR
=
$CCACHE_DIR
\
-e
EXTERNAL_GIT_ROOT
=
"/var/local/jenkins/protobuf"
\
-e
TEST_SET
=
"
$TEST_SET
"
\
-e
THIS_IS_REALLY_NEEDED
=
'see https://github.com/docker/docker/issues/14203 for why docker is awful'
\
-v
"
$git_root
:/var/local/jenkins/protobuf:ro"
\
-v
$CCACHE_DIR
:
$CCACHE_DIR
\
...
...
jenkins/buildcmds/pull_request.sh
View file @
e28286fa
...
...
@@ -12,4 +12,5 @@
export
DOCKERFILE_DIR
=
jenkins/docker
export
DOCKER_RUN_SCRIPT
=
jenkins/pull_request_in_docker.sh
export
OUTPUT_DIR
=
testoutput
export
TEST_SET
=
"csharp java_jdk7 javanano_jdk7 java_oracle7 javanano_oracle7 python python_cpp ruby_all javascript golang php_all"
./jenkins/build_and_run_docker.sh
jenkins/buildcmds/pull_request_32.sh
0 → 100755
View file @
e28286fa
#!/bin/bash
#
# This is the top-level script we give to Jenkins as the entry point for
# running the "pull request 32" project:
#
# https://grpc-testing.appspot.com/view/Protocol%20Buffers/job/Protocol%20Buffers%20Pull%20Request%2032/
#
# This script selects a specific Dockerfile (for building a Docker image) and
# a script to run inside that image. Then we delegate to the general
# build_and_run_docker.sh script.
export
DOCKERFILE_DIR
=
jenkins/docker32
export
DOCKER_RUN_SCRIPT
=
jenkins/pull_request_in_docker.sh
export
OUTPUT_DIR
=
testoutput
export
TEST_SET
=
"php_all"
./jenkins/build_and_run_docker.sh
jenkins/docker32/Dockerfile
0 → 100644
View file @
e28286fa
# This Dockerfile specifies the recipe for creating an image for the tests
# to run in.
#
# We install as many test dependencies here as we can, because these setup
# steps can be cached. They do *not* run every time we run the build.
# The Docker image is only rebuilt when the Dockerfile (ie. this file)
# changes.
# Base Dockerfile for gRPC dev images
FROM
32bit/debian:latest
# Apt source for php
RUN
echo
"deb http://ppa.launchpad.net/ondrej/php/ubuntu trusty main"
|
tee
/etc/apt/sources.list.d/various-php.list
&&
\
apt-key adv
--keyserver
keyserver.ubuntu.com
--recv-keys
F4FCBB07
# Install dependencies. We start with the basic ones require to build protoc
# and the C++ build
RUN
apt-get clean
&&
apt-get update
&&
apt-get
install
-y
--force-yes
\
autoconf
\
autotools-dev
\
build-essential
\
bzip2
\
ccache
\
curl
\
gcc
\
git
\
libc6
\
libc6-dbg
\
libc6-dev
\
libgtest-dev
\
libtool
\
make
\
parallel
\
time
\
wget
\
unzip
\
# -- For python --
python-setuptools \
python-pip \
python-dev \
# -- For C++ benchmarks --
cmake \
# -- For PHP --
php5.5 \
php5.5-dev \
php5.5-xml \
php5.6 \
php5.6-dev \
php5.6-xml \
php7.0 \
php7.0-dev \
php7.0-xml \
phpunit \
valgrind \
libxml2-dev \
&& apt-get clean
##################
# PHP dependencies.
RUN
php
-r
"copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN
php composer-setup.php
RUN
mv
composer.phar /usr/bin/composer
RUN
php
-r
"unlink('composer-setup.php');"
RUN
cd
/tmp
&&
\
git clone https://github.com/google/protobuf.git
&&
\
cd
protobuf
&&
\
ln
-sfn
/usr/bin/php5.5 /usr/bin/php
&&
\
ln
-sfn
/usr/bin/php-config5.5 /usr/bin/php-config
&&
\
ln
-sfn
/usr/bin/phpize5.5 /usr/bin/phpize
&&
\
composer
install
&&
\
mv
vendor /usr/local/vendor-5.5
&&
\
ln
-sfn
/usr/bin/php5.6 /usr/bin/php
&&
\
ln
-sfn
/usr/bin/php-config5.6 /usr/bin/php-config
&&
\
ln
-sfn
/usr/bin/phpize5.6 /usr/bin/phpize
&&
\
composer
install
&&
\
mv
vendor /usr/local/vendor-5.6
&&
\
ln
-sfn
/usr/bin/php7.0 /usr/bin/php
&&
\
ln
-sfn
/usr/bin/php-config7.0 /usr/bin/php-config
&&
\
ln
-sfn
/usr/bin/phpize7.0 /usr/bin/phpize
&&
\
composer
install
&&
\
mv
vendor /usr/local/vendor-7.0
RUN
wget http://am1.php.net/get/php-5.5.38.tar.bz2/from/this/mirror
RUN
mv
mirror php-5.5.38.tar.bz2
RUN
tar
-xvf
php-5.5.38.tar.bz2
RUN
cd
php-5.5.38
&&
./configure
--enable-maintainer-zts
--prefix
=
/usr/local/php-5.5-zts
&&
\
make
&&
make
install
##################
# Python dependencies
# These packages exist in apt-get, but their versions are too old, so we have
# to get updates from pip.
RUN
pip
install
pip
--upgrade
RUN
pip
install
virtualenv tox yattag
##################
# Prepare ccache
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/gcc
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/g++
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/cc
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/c++
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/clang
RUN
ln
-s
/usr/bin/ccache /usr/local/bin/clang++
# Define the default command.
CMD
["bash"]
jenkins/pull_request_in_docker.sh
View file @
e28286fa
...
...
@@ -45,20 +45,11 @@ TIME_CMD="/usr/bin/time -f %e -o $LOG_OUTPUT_DIR/1/cpp/build_time"
$TIME_CMD
$TEST_SCRIPT
cpp
>
>(
tee
$CPP_STDOUT
)
2>
>(
tee
$CPP_STDERR
>
&2
)
# Other tests are run in parallel.
# Other tests are run in parallel. TEST_SET is defined in
# buildcmds/pull_request{_32}.sh
parallel
--results
$LOG_OUTPUT_DIR
--joblog
$OUTPUT_DIR
/joblog
$TEST_SCRIPT
:::
\
csharp
\
java_jdk7
\
javanano_jdk7
\
java_oracle7
\
javanano_oracle7
\
python
\
python_cpp
\
ruby_all
\
javascript
\
golang
\
php_all
\
$TEST_SET
\
||
true
# Process test results even if tests fail.
cat
$OUTPUT_DIR
/joblog
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment