forked from sourcegraph/lsp-adapter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
93 lines (88 loc) · 3.32 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
language: go
go:
- 1.10.x
- 1.11.x
env:
- GO111MODULE=on
# Base configuration for the jobs that release the codeintel Docker images to DockerHub.
# Referenced further down.
codeintel_image_release_job: &codeintel_image_release_job
stage: release
services:
- docker
install: skip
if: branch = master AND type = push AND fork = false
script: bash deploy_image.sh
jobs:
include:
# Lint lsp-adapter and Dockerfiles
- stage: lint
install:
- go get -v golang.org/x/tools/cmd/goimports
- curl -sL -o ~/hadolint "https://github.com/hadolint/hadolint/releases/download/v1.6.5/hadolint-$(uname -s)-$(uname -m)" && chmod 700 ~/hadolint
before_script:
- cd $TRAVIS_BUILD_DIR
- GO_FILES=$(find . -type f -name '*.go' -not -path "./vendor/*")
script:
- test -z $(goimports -d $GO_FILES) # this test asserts import ordering
- test -z $(gofmt -s -d $GO_FILES)
- ~/hadolint dockerfiles/*/Dockerfile
# Test lsp-adapter
- stage: "test: go 1.11.x"
go: 1.11.x
script: go test -v -mod=vendor ./...
- stage: "test: go 1.10.x"
go: 1.10.x
script: go test -v ./...
# Release lsp-adapter (only on tags)
- stage: release
if: tag =~ ^v AND fork = false
install:
- go get -v github.com/mitchellh/gox
script:
- mkdir release
- cd release
- gox -arch 'amd64' -os 'linux windows darwin' github.com/sourcegraph/lsp-adapter
- cd ..
deploy:
provider: releases
api_key:
secure: hyjUIM0uBBd3H6DiFoWI6cvnSh8E9tOidduLEIrFijx2jjtORkmTgMzCLehAJ4aDFJJStwE5J9xllRZZx2fqiRF8kjeiygi2051ckuDxQCACQipSfSHu5Jy9+ZFHd3sJhjsx4AKms3lZnRoTwXIFEknNR2uOIbTUSwWYZQT8x8UFdbb16hCXfpdnWhCMHufPdZHtQSwXV5p5rwul5W8lrTNEHfui7iBXcEAgYmjkgL33onzjfFCh3cNPNBW1KeXOGMyKqRhbUjN1j16Fgm3577R5a706oqT6XSLwsYVBU2Y3bps1OYqdToORIW/pOX7OACBq1m87XxEVfkHKvDetKdt2VakRnO7OW9DWicqTJe22AnSa79uOtI9NGQC2zlH/SOsscmIyl5JIdDhjUTSqyySo4keI18Aq69rmvJwUFRtJ1auwRp7Dzfan+NONk6REMwq4ee43UXAEQjG7zyhv+IQEBYVR9LBZhiaw+hp2QmCiS40Sgp4/N7qW2D04GTgpeNC4kbGbV6vWcAQW17t9yeaj01ijmLKFkBWpq3b/7IE5NeoZlmNXU/XSEJykb+0oaR23lB9zzg56RFdxRMM2Ms0OhDJhOo6z6apsKlWSoywc8Q5Yk/krnfmOX73jUQB4v2NvNQM3y7tGuT7JJ6yxCHqpxtJRAUWFetGQ2ptuEJ4=
file_glob: true
file: release/*
skip_cleanup: true
on:
tags: true
# Jobs to release codeintel images to DockerHub
- <<: *codeintel_image_release_job
env: LANGUAGE=ruby
- <<: *codeintel_image_release_job
env: LANGUAGE=rust
- <<: *codeintel_image_release_job
env: LANGUAGE=html
- <<: *codeintel_image_release_job
env: LANGUAGE=elixir
- <<: *codeintel_image_release_job
env: LANGUAGE=css
- <<: *codeintel_image_release_job
env: LANGUAGE=cpp
- <<: *codeintel_image_release_job
env: LANGUAGE=clojure
- <<: *codeintel_image_release_job
env: LANGUAGE=bash
- <<: *codeintel_image_release_job
env: LANGUAGE=docker
- <<: *codeintel_image_release_job
env: LANGUAGE=ocaml
- <<: *codeintel_image_release_job
env: LANGUAGE=lua
- <<: *codeintel_image_release_job
env: LANGUAGE=csharp
- <<: *codeintel_image_release_job
env: LANGUAGE=r
- <<: *codeintel_image_release_job
env: LANGUAGE=haskell
branches:
only:
- master
- "/^v\\d+\\.\\d+\\.\\d+(-\\S*)?$/"