Skip to content

Commit 23da219

Browse files
author
Jason Mobarak
committed
Upload build results to S3
1 parent 7b6d96e commit 23da219

File tree

2 files changed

+77
-0
lines changed

2 files changed

+77
-0
lines changed

.travis.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
sudo: required
22

3+
dist: xenial
4+
language: c
5+
6+
branches:
7+
only:
8+
- master
9+
310
services:
411
- docker
512

@@ -8,3 +15,21 @@ before_install:
815

916
script:
1017
- ./build.bash
18+
19+
after_success:
20+
- tar -C output -czf llvm-obfuscated-arm.tgz .
21+
- PRODUCT_VERSION=v1 ./publish.sh llvm-obfuscated.arm.tgz
22+
23+
env:
24+
global:
25+
# Secure keys below are encrypted with travis encrypt gem
26+
# Example encryption: travis encrypt AWS_SECRET_ACCESS_KEY=foo
27+
# See https://docs.travis-ci.com/user/encryption-keys/
28+
# AWS_ACCESS_KEY_ID
29+
- secure: Ls9hEi04qvyDOEBbmDeNCjP7yfrQdke0EMFB8289xZPDrYNnysJmKzyh4Pt9PUyT7Y9pzrI1HKSziisshfQZWhhvG6K1fnM5glChoesK2pg4zeoz44gCsU/zGJqBNBH8z6VQgmAzeHvBPvOO9UJMy7ywD2Wz9+nQsYbWLgVE/63YuzEFsHI3jqLz5EyM4umpq2i6joQcD3Pdlvgs8KZj56lQ2IxrkTf1QMlwFN2/xmKa0eQctonCP7MwVyVCZEILUgpk7e0glfn86A+53fej/S8UhmCH6XHwUw9FQrmtEl4pwPmU1bna1pncWIorGChhcPorWD0ePfOCT4AKIrQAveaiSN/tnCzcmccVnGpe8WWXoRwFQ6B8110PbSwZlB9H5UUmZcpwmvIXnPyedbGVSXT2p2ubsjGBWbtnFj/uAms4izGAmOLUrvOx+rCb4ol2rP4WEnW22U927y6sotSAuj1BOkt4/x4nP6CZQNDXIOS4+kLRDjtNUrMFENhxbsdXbQ5ANZO5ssDPwI3hqNYamQWYKyasXgueLMBQdfaQ32nxBMQmN8dbvThsT/klQmsp5YoihndK6SGuF2IEIuWZG0cWACGnjHzrcv4dfBO2V5/7aoVhmSMKTUAvxkZsITYZuorUe+2HwQl6n59+0A2FhQdRLDMAXrOK7AN2faoJFhw=
30+
# AWS_SECRET_ACCESS_KEY
31+
- secure: vNHhGAZoaGmTiZ/Bjf0pqx4w9T37sDJNUOp6C5EXCapXAsYx+4G8v3xNlWBHWrPAs5q4XHJgbcNH7k1tRAI3nwd0RCv14SBNsVv5eouzpPd+o2ploDGCW++p/CL1kjQJBOqmz9sYCwxqra9LG7MCA/MzTG3eNa4/3lCf2tut7yhtxHbhIrVBaFgiHPYoZ1Pe6DPTQjjp32Xf2UHElHfa3oDQ/pw45hKWdwBx+fQjfLl1fVbHE3AhuXd7Q51tmL3qPNVox4/oLkmwpggzF0LoDQDZbZmOFSzcIiv/cpnqkaP9iy3TVQelrZivN9EXiyZsyhcrXll2pll/hvbg+cPVxBnC+p+yrPyZ4CaNwgID3c8ZRiPjJoyo+z4wxse3AaMv2AGsHVNGavYm61nFcJsRc0FQUfvkksdDu3LdfQbxkAKK7vgM7k4jWlcHe8wmQOXf/EPl5Hd2RNwHDfSEfR8YGPBDqsrdDFRO1fi/+kwpkLTfgN7WqbBBHCax54gQ1GZAEJC3nPqqnajKU/oduA4lXB2VJXlFl/NMeoX/z508Kc9wxaATCUFhGB68H2kKx8WT1ZMuBo9Eu7nXYSXg9jA+kCcb7GW3QgWk9h1Klcf6v5vw59UCFCEGfnPYinnWp6LMPHIY8q7ChpfEYq6rDma7o4bYExUHGo9Qip/qeEypetI=
32+
# GITHUB_TOKEN
33+
- secure: "x8K9GXfhLM+uVxsD4BB9MowOXxowzx/PUAccQpXWLjoQi4GnIFPGNASkFJNL7EVo4IwX7fiG6FE14SfG+jybYB5t5R9BUis5wKSO1ghUUO4SOLHBNW04YfwVn9p33YuipOL/N+Co74jSh0oEDacaN1TTLP6RuFyrLy0ew8JwE+EiRpNc2NMLSIap0C0ePkrtultvx9NnZ0aTJ1mhs2lOesqBPSvWXlglQqPcseldBcpTt1ch+m9I41xxzQzmOnGyka59wvqLyJDaJEzKI0kJobwwZY6OOANz3Yvrus1ahAhGXsRwjuJWdyrkV5uXuWE2KLy1MY31fFqh6I/9FMdvEBt2zCtkMLtOYjn7IpiOom0P0cZkGXJeGlTMojaw1eostC5mZCYKf6gNtGOc95U9r3hDSHhYFeLCj5rE14SGjh84uogx6rO8vGYbjl3vgpdVFJy37Xx7tQHyueLfrUVATjuGc4/x7Ukez4Vb9thfXcHvV1W77YfEIM0uM2HSpFOdWq7lbNDcLSAkmJHdEZcssDoaUhCqFz8YFeSyEW4iZF6j5Uqljkkuj1YDIcrkF5ggbmoZGfZL85iDedVsYPdxgXTBiXEcJGfbTfD7X36Uc6+6jxpVUZDgF5dBF6jCK9gdVLgiGLU0NcSCTork1lNByuKNmsp34GLTJso9OAiHsTI="
34+
# SLACK_TOKEN
35+
- secure: "g0KII9TK5MhOS3j9h68jzQZk1bn6mVIaSMPrtB9aA7jrEMALm6biP+pYL2CgWyzGtFbsFVIG81fuyMpYjMR3ImFI/sGh+w0650HMaD97TEWYVc/gVtqjZsDbzGYtmG9tmxahJxl/LjAsO2xmddVYKlpyVzCGtAECe0IWX7LxYODIr01NQgmh6X+DClb1S6P1S6jgO4tjsnatstYo3us4jGHLqSDz9n9pH70YzZn8EB2cDQkLA5visc/w3mAMqmA3a3RWoBMNd3M63zEdlHWtiEaPY9JYDGASP1gp4rXAwKk5RTnNw6BBhVqqInfs1gFpXVve5zNus/YUZ342NuCyy2+pSSmJyWmA26pKE+PtHOoMuUwCqCrC/OdoLX7p7PTO++4XIr2vYV7KPlFELfzvlnCjXqlq8+AaiSb6z4FGijuHXRWNVvnasTcP3MDJn5OtjtBBNTiYm9fYj+z6PNVf9DwZbukiHN3GKNFEBGA1ACMvkD12BjDfrHsgLqHPUd9oRhU1qNGQVZozmVeKRczsP2lhwQp1GdrLhaz1ABeT0IjYqm+87LuE5eR0oQ/5ETOCDHdlfd4Vf6oz68lvkBbb2Yof55eJrSPUIzmLqCucEC1TI9WZui7isyRkhH9K5XCMQS0FKx6AvATOP4aG6zy8N5jAUYupR+NsCbDJUsQRc54="

publish.sh

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/bin/bash
2+
3+
# Copyright (C) 2016 Swift Navigation Inc.
4+
# Contact: Mark Fine <mark@swiftnav.com>
5+
#
6+
# This source is subject to the license found in the file 'LICENSE' which must
7+
# be be distributed together with this source. All other rights reserved.
8+
#
9+
# THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
10+
# EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
11+
# WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
12+
#
13+
# Script for publishing built binaries to S3.
14+
15+
set -e
16+
17+
if [ "$TRAVIS_OS_NAME" != "linux" ]; then
18+
exit
19+
fi
20+
21+
REPO="${PWD##*/}"
22+
BUCKET="${BUCKET:-llvm-obfuscator-arm}"
23+
PRS_BUCKET="${PRS_BUCKET:-llvm-obfuscator-arm-pull-requests}"
24+
25+
BUILD_VERSION="$(git describe --tags --dirty --always)"
26+
BUILD_PATH="$REPO/$BUILD_VERSION"
27+
if [[ ! -z "$PRODUCT_VERSION" ]]; then
28+
BUILD_PATH="$BUILD_PATH/$PRODUCT_VERSION"
29+
fi
30+
if [[ ! -z "$PRODUCT_REV" ]]; then
31+
BUILD_PATH="$BUILD_PATH/$PRODUCT_REV"
32+
fi
33+
if [[ ! -z "$PRODUCT_TYPE" ]]; then
34+
BUILD_PATH="$BUILD_PATH/$PRODUCT_TYPE"
35+
fi
36+
37+
echo "Uploading $@ to $BUILD_PATH"
38+
echo "Publish PULL_REQUEST ($TRAVIS_PULL_REQUEST)"
39+
echo "Publish BRANCH ($TRAVIS_BRANCH)"
40+
echo "Publish TAG ($TRAVIS_TAG)"
41+
42+
for file in "$@"; do
43+
KEY="$BUILD_PATH/$(basename $file)"
44+
if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
45+
if [[ "$TRAVIS_BRANCH" == master || "$TRAVIS_TAG" == v* || "$TRAVIS_BRANCH" == v*-release ]]; then
46+
OBJECT="s3://$BUCKET/$KEY"
47+
aws s3 cp "$file" "$OBJECT"
48+
fi
49+
else
50+
aws s3api put-object --no-sign-request --bucket "$PRS_BUCKET" --key "$KEY" --body "$file" --acl public-read
51+
fi
52+
done

0 commit comments

Comments
 (0)