diff --git a/.travis.yml b/.travis.yml index 412c2ab0..4daa44d3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -92,6 +92,18 @@ jobs: - pip install -r tests/acceptance/requirements.txt script: - pytest -vv -rA --diff-type=split tests/acceptance/test_acceptance/ --host http://localhost:8080 + - stage: 'Building Optimizely Agent' + if: (branch = master AND type = push) OR type = pull_request OR tag IS present + env: + SDK=agent + SDK_BRANCH=$(if [ -z "$TRAVIS_PULL_REQUEST_BRANCH" ]; then echo ${TRAVIS_BRANCH}; else echo "$TRAVIS_PULL_REQUEST_BRANCH"; fi) + cache: false + before_install: + ./scripts/pull_travis_ci_tools.sh + install: skip + script: + - "$HOME/travisci-tools/trigger-script-with-status-update.sh" + - stage: Test Build using latest tag (no upload) name: linux diff --git a/scripts/Makefile.ci b/scripts/Makefile.ci index 343195a6..d45d9dea 100644 --- a/scripts/Makefile.ci +++ b/scripts/Makefile.ci @@ -1,6 +1,6 @@ .DEFAULT_GOAL := help -ci_build_static_binary: ## build static binary +ci_build_static_binary: check-go ## build static binary CGO_ENABLED=0 $(GOBUILD) $(LDFLAGS) -o $(GOBIN)/$(TARGET) cmd/optimizely/main.go ci_build_dockerimage: ## build minimal docker image of optimizely diff --git a/scripts/dockerfiles/Dockerfile.static b/scripts/dockerfiles/Dockerfile.static index a881ea43..34b82662 100644 --- a/scripts/dockerfiles/Dockerfile.static +++ b/scripts/dockerfiles/Dockerfile.static @@ -4,6 +4,7 @@ FROM golang:$GO_VERSION as builder WORKDIR /go/src/github.com/optimizely/agent COPY . . RUN make install +RUN make static RUN make ci_build_static_binary FROM scratch diff --git a/scripts/pull_travis_ci_tools.sh b/scripts/pull_travis_ci_tools.sh new file mode 100755 index 00000000..a69afb31 --- /dev/null +++ b/scripts/pull_travis_ci_tools.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e +BRANCH_NAME=${1:-master} +mkdir $HOME/travisci-tools && pushd $HOME/travisci-tools && git init && git pull https://$CI_USER_TOKEN@github.com/optimizely/travisci-tools.git $BRANCH_NAME && popd +