mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-08-28 10:54:59 +00:00
Merge pull request #1504 from codysoyland/ci-staging
Add TravisCI staged builds
This commit is contained in:
commit
7e3ae59ec3
2 changed files with 46 additions and 27 deletions
43
.travis.yml
43
.travis.yml
|
|
@ -11,20 +11,39 @@ env:
|
|||
- GOARCH=386 ENTERPRISE=1
|
||||
- GOARCH=amd64
|
||||
- GOARCH=amd64 ENTERPRISE=1
|
||||
cache:
|
||||
directories:
|
||||
vendor
|
||||
install:
|
||||
- make install-dep vendor
|
||||
script:
|
||||
- make test
|
||||
before_deploy:
|
||||
- pip install awscli --user `whoami`
|
||||
deploy:
|
||||
- provider: script
|
||||
script: make prerelease-upload GOOS=linux GOARCH=amd64
|
||||
skip_cleanup: true
|
||||
on:
|
||||
all_branches: true
|
||||
- make -B install-dep vendor
|
||||
script: make test
|
||||
jobs:
|
||||
include:
|
||||
- stage: metalinter
|
||||
install:
|
||||
- make -B install-dep vendor
|
||||
- go get -u github.com/alecthomas/gometalinter
|
||||
- gometalinter --install
|
||||
script: make metalinter
|
||||
env:
|
||||
- GOARCH=amd64
|
||||
- stage: deploy
|
||||
script: skip
|
||||
go: "1.10"
|
||||
condition: $GOARCH = amd64
|
||||
env:
|
||||
- GOARCH=amd64
|
||||
deploy:
|
||||
- provider: script
|
||||
script: pip install awscli --user `whoami` && make -B prerelease
|
||||
skip_cleanup: true
|
||||
on:
|
||||
all_branches: true
|
||||
repo: pilosa/pilosa
|
||||
tags: false
|
||||
stages:
|
||||
- metalinter
|
||||
- test
|
||||
- deploy
|
||||
matrix:
|
||||
# Excluding or allowing failures on non-primary matrix configurations due to long running times.
|
||||
fast_finish: true
|
||||
|
|
|
|||
30
Makefile
30
Makefile
|
|
@ -1,4 +1,4 @@
|
|||
.PHONY: build check-clean clean cover cover-viz default docker docker-build docker-test generate generate-protoc generate-pql install install-build-deps install-dep install-protoc install-protoc-gen-gofast install-peg prerelease prerelease-build prerelease-upload release release-build require-dep require-protoc require-protoc-gen-gofast require-peg test
|
||||
.PHONY: build check-clean clean cover cover-viz default docker docker-build docker-test generate generate-protoc generate-pql install install-build-deps install-dep install-protoc install-protoc-gen-gofast install-peg metalinter prerelease prerelease-upload release release-build require-dep require-protoc require-protoc-gen-gofast require-peg test
|
||||
|
||||
CLONE_URL=github.com/pilosa/pilosa
|
||||
VERSION := $(shell git describe --tags 2> /dev/null || echo unknown)
|
||||
|
|
@ -63,22 +63,19 @@ endif
|
|||
release: check-clean
|
||||
$(MAKE) release-build GOOS=darwin GOARCH=amd64
|
||||
$(MAKE) release-build GOOS=darwin GOARCH=amd64 ENTERPRISE=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=amd64 DOCKER_BUILD=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=amd64 DOCKER_BUILD=1 ENTERPRISE=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=386 DOCKER_BUILD=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=386 DOCKER_BUILD=1 ENTERPRISE=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=amd64
|
||||
$(MAKE) release-build GOOS=linux GOARCH=amd64 ENTERPRISE=1
|
||||
$(MAKE) release-build GOOS=linux GOARCH=386
|
||||
$(MAKE) release-build GOOS=linux GOARCH=386 ENTERPRISE=1
|
||||
|
||||
# Create branch-tagged pre-release for client library CI jobs
|
||||
prerelease-build: vendor
|
||||
$(MAKE) release-build VERSION_ID=$(BRANCH_ID)
|
||||
# Create prerelease builds
|
||||
prerelease: vendor
|
||||
$(MAKE) release-build GOOS=linux GOARCH=amd64 VERSION_ID=$$\(BRANCH_ID\)
|
||||
$(if $(shell git describe --tags --exact-match HEAD),$(MAKE) release)
|
||||
$(MAKE) prerelease-upload
|
||||
|
||||
# Create prerelease build for Linux/amd64
|
||||
prerelease:
|
||||
$(MAKE) prerelease-build GOOS=linux GOARCH=amd64
|
||||
|
||||
# Upload prerelease to S3
|
||||
prerelease-upload: prerelease
|
||||
aws s3 cp build/pilosa-$(BRANCH_ID).tar.gz s3://build.pilosa.com/pilosa-$(BRANCH_ID).tar.gz --acl public-read
|
||||
prerelease-upload:
|
||||
aws s3 sync build/ s3://build.pilosa.com/ --exclude "*" --include "*.tar.gz" --acl public-read
|
||||
|
||||
# Install Pilosa
|
||||
install: vendor
|
||||
|
|
@ -111,6 +108,9 @@ docker-build:
|
|||
docker-test:
|
||||
docker run --rm -v $(PWD):/go/src/$(CLONE_URL) -w /go/src/$(CLONE_URL) golang:$(GO_VERSION) go test -tags='$(BUILD_TAGS)' $(TESTFLAGS) ./...
|
||||
|
||||
metalinter:
|
||||
gometalinter --vendor --disable-all --enable=gotype --enable=gotypex --deadline=60s --exclude "^internal/.*\.pb\.go" ./...
|
||||
|
||||
######################
|
||||
# Build dependencies #
|
||||
######################
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue