Commit Graph

60 Commits

Author SHA1 Message Date
zpencer 19a64cc336
buildscripts: build windows artifacts in kokoro (#4253)
We always build the artifacts, but only store them in placer via
kokoro if MVN_ARTIFACTS is set to a non empty value.

The 32 bit script runs tests as well as builds artifacts.
The 64 bit script only builds artifacts.
2018-03-22 17:56:59 -07:00
Eric Anderson 9c5e96e376
buildscripts: Cleaner Linux release Docker
This is a greatly simplified Docker container compared to that in
compiler/. We really want the docker image to just be a build
environment, and build the specific versions of dependencies as part of
our normal build (not docker build).

It also includes a helper script that lets you easily do build actions
with the docker environment, but into a checkout on the host. This can
dramatically reduce the pain in building from the docker container as
the source doesn't need to be checked out and only caches are lost
between invocations.
2018-03-13 09:38:21 -07:00
Eric Anderson ab92ff0819 buildscripts: Use ErrorActionPreference=stop with powershell
Otherwise when an exception is thrown powershell will still exit with 0.
This is similar to set -e, except exceptions wouldn't have a status code
of their own.

Another option would have been -ErrorAction Stop, but this need to be
passed to each command inside the powershell script, so would be
functionally similar to our "|| exit" style in the .bat.
2018-03-13 09:16:59 -07:00
Eric Anderson 4bd4cf4ec1 buildscripts: check errorlevel of error-prone commands in .bat files
There's no 'set -e' in BAT, so we get to do it manually. Wee!

Note that we need to use 'exit /b' instead of 'exit' in the scripts, as
otherwise it exits more than just the current script.
2018-03-13 09:16:59 -07:00
Eric Gribkoff 7fd22080e9
buildscripts: avoid unbound variable error (#4197) 2018-03-09 09:18:58 -08:00
Eric Gribkoff 4369e8cd9a
buildscripts: add Kokoro-based CI for Android APK stats (#3984) 2018-03-08 18:41:39 -08:00
Eric Anderson 9f677a991a buildscripts: Hard-code use of TLSv1.2 for github download
GitHub is now requiring TLS v1.2:
https://githubengineering.com/crypto-removal-notice/

Without this configuration, we see:
iwr : The request was aborted: Could not create SSL/TLS secure channel.
At line:1 char:5
+ & { iwr https://github.com/google/protobuf/archive/v3.5.1.zip -OutFile
protobuf. ...
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:Htt
  pWebRequest) [Invoke-WebRequest], WebException
   + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShe
  ll.Commands.InvokeWebRequestCommand

Fixes #4120
2018-02-23 13:34:12 -08:00
zpencer a45d07bcb5
build: run unit tests on osx, ensure proto output included (#4081)
This adds back functionality that was accidentally dropped when
porting from travis:
- make sure generating protos will not lead to any uncomitted changes
- actually run the unit tests
2018-02-14 16:44:02 -08:00
zpencer fbc079d631
buildscripts: build macos artifacts in kokoro (#4066) 2018-02-14 12:53:11 -08:00
Eric Anderson f48a5097ef kokoro: Avoid getting cmake if it's installed
Kokoro already has cmake installed, so it's not necessary in that
environment. We still keep the old code around because it's helpful for
setting up new Windows environments in general.
2018-02-12 07:22:36 -08:00
Eric Anderson 850143f4a3 kokoro: Include kokoro image version in build logs
Otherwise there's no way to determine which version of the image was
used for the build.
2018-02-05 11:11:03 -08:00
Eric Anderson 5a31dff283 kokoro: Use --include-build in cronet
This avoids needing to build all of grpc as well as avoids having to
manually track which dependencies are necessary.

This cuts 1.5 minutes off the Cronet build time (to 3.5 minutes). But it
also reduces the amount being downloaded which should help with #3284.
2018-02-01 17:17:28 -08:00
zpencer 4e067eb651
gae: set -e was clobbering $? (#3999) 2018-01-25 17:19:57 -08:00
Eric Gribkoff 8ecef08d33 buildscripts: add Kokoro-based CI for gRPC Cronet 2018-01-16 09:16:04 -08:00
Eric Anderson 0853f3563f buildscripts: Add Kokoro-based Bazel CI 2018-01-11 10:28:21 -08:00
Eric Anderson 80e61d2589 clear JAVA_HOME 2018-01-11 09:27:33 -08:00
Eric Anderson 396cf4d901 buildscripts: Avoid Java 9 for Windows CI
Our build isn't happy on Java 9 yet.
2018-01-11 09:27:33 -08:00
Kun Zhang 86d64122e5
Upgrade to Protobuf 3.5.1 and Protoc 3.5.1-1. (#3921)
protoc-3.5.0-linux-x86_64 introduced GLIBC_2.14 dependency and broke
gRPC release process (https://github.com/google/protobuf/issues/4138).
3.5.1-1 is the proper re-build.
2018-01-05 16:40:20 -08:00
Spencer Fang 610066896f buildscripts: filter in only the kokoro java project 2018-01-04 10:57:35 -08:00
Spencer Fang d86647aebd buildscripts: automatically delete versions older than 1hour, always succeed if reach end 2018-01-04 10:57:35 -08:00
Spencer Fang 692cffe763 buildscripts: automatically delete versions older than 1day 2018-01-04 10:57:35 -08:00
Spencer Fang cdc480d353 buildscripts: fix error using cmd output rather than $? 2018-01-02 14:21:40 -08:00
Eric Anderson 4f4cedf92a
build: Support uploading releases separately from building 2017-12-14 16:51:14 -08:00
Eric Anderson b9278e7011 buildscripts: Remove dependency on 7za
We already depend on Powershell, so this should make it easier to use the
script with less set-up.
2017-12-06 16:31:00 -08:00
Carl Mastrangelo aee5fc4176
all: update to proto 3.5.0 2017-11-30 11:50:19 -08:00
zpencer d080bae2a1
gae-interop-testing: kokoro script to run interop tests in GAE (#3731) 2017-11-29 11:20:15 -08:00
zpencer 53c135a48f
buildscripts: set -u, set -o pipefail (#3629)
Be even more defensive with our shell scripts, to avoid future mistakes.
2017-10-27 15:31:30 -07:00
zpencer d840227165
buildscripts: make the script fail for the right reason when using set -e (#3628) 2017-10-27 08:54:08 -07:00
zpencer 8970c3a7c1 kokoro: port .travis.yaml to kokoro for mac osx (#3608) 2017-10-26 14:26:35 -07:00
zpencer 2eb47eaab7 kokoro: Initial config files for macos (#3599) 2017-10-23 16:10:11 -07:00
zpencer 11272f4780 kokoro: add a placeholder script for GAE testing (#3590) 2017-10-19 16:26:52 -07:00
Carl Mastrangelo 24ff2748b7 all: update to proto 3.4.0 2017-08-25 11:25:36 -07:00
Matt Kwong 5cf469ae0b all: make Kokoro show actual Gradle results (#3208) 2017-07-10 17:26:33 -07:00
Eric Anderson e6d0062d20 Move checkstyle config to buildscripts/
Checkstyle configuration is just noise in the root directory. Neither
users nor developers need to look at it often.
2017-07-07 17:11:40 -07:00
Matt Kwong 16285dc634 Make Kokoro logs less noisy (#3110) 2017-06-30 13:53:52 -07:00
Matt Kwong dda8f547e7 Add Windows build and config files for Kokoro (#3096) 2017-06-19 10:47:23 -07:00
Carl Mastrangelo 0fe2c5cca6 all: bump to proto 3.3.1 2017-05-23 17:04:51 -07:00
Carl Mastrangelo b0323ac22c all: update to protobuf 3.2.0 2017-02-07 09:47:15 -08:00
Eric Anderson c38611a230 Bump protobuf to 3.1.0
Also removed warnings about protoc version matching runtime, since this
is no longer supposed to be a problem (starting with 3.0.0-beta-4) and
all our tests ran fine when using protoc 3.0.2 with protobuf runtime
3.1.0.

Fixes #2316
2016-11-01 14:52:56 -07:00
Eric Anderson b1d72e5c3e all: Bump protobuf to 3.0.2, to fix protoc in CI
protoc no longer builds in 3.0.0 because auto-download of the gmock zip
now fails. 3.0.2 has a fix to autogen:
bba446bbf2

All that was strictly necessary was to update .travis.yml and
buildscripts/, but it helps our sanity to keep the rest of the protobuf
versions in sync. Lite is left on its existing version, because it did
not see a bump of neither the java library nor the protoc plugin.
2016-09-29 10:25:31 -07:00
Eric Anderson ff7fb5ff52 jenkins: Fix Windows build to specify Studio version
If there are multiple versions available, cmake won't choose the Visual
Studio version selected by vsvars. So we have to explicitly specify the
generator to use.

This allows grpc-java to run on the shared Windows workers instead of
its own specialized instance.
2016-08-08 09:12:15 -07:00
Eric Anderson 5e1e88357c Update protobuf to 3.0.0
Fixes #2086
2016-07-29 09:31:15 -07:00
Eric Anderson 3c03eb79ec travis,jenkins: Fail build if javac emits warnings 2016-07-10 12:01:07 -07:00
Eric Anderson dbef1af29a Bump protobuf dependency to 3.0.0-beta-3
This allows us to play with zero-copy and proto3 support for lite.
Unfortunately, it introduced some warnings, so deprecated warnings are
now ignored for benchmarks and interop-testing.
2016-06-28 08:58:13 -07:00
Eric Anderson 80f73a4a16 Allow cache to be shared between Linux and OS X
It doesn't appear that OS X is saving its cache yet, so this may not be
needed in the future, but for now we need OS X to avoid attempting to
use the Linux binaries.
2016-04-27 19:35:06 -07:00
nmittler 1dce8df077 Switching to netty-tcnative-boringssl-static 2016-02-16 13:11:45 -08:00
Kun Zhang e2ed2e8f03 Upgrade to protobuf-3.0.0-beta-2 and protobuf-nano-3.0.0-alpha-5
Update option name that disables protobuf tests.
2016-01-27 23:32:01 -08:00
Eric Anderson 7450bf6a17 Swap to "old" link for OpenSSL download with Travis
The previous download link only worked for the most recent version. The
new form only works for old versions. That will encourage us not to use
the latest version, but for tests that's probably not a big deal.

We haven't noticed the breakage sooner because the build results are
cached.
2015-12-10 16:33:06 -08:00
Eric Anderson 579e65cb97 Simplify Jenkins configuration on Windows
Without the attributes, fc loses its mind a bit when comparing the
codegen output against the golden; the golden would have DOS newlines
(assuming default git configuration) and the generated code would have
Unix newlines.

The jenkins-pre script just reduces the amount of code is backed into
the jenkins project.
2015-10-23 13:46:37 -07:00
Eric Anderson 2467d618b7 Correct path for dep building short-circuiting 2015-10-23 13:46:37 -07:00