-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
130 lines (120 loc) · 4.41 KB
/
.gitlab-ci.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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
image: golang:1.10
stages:
- lint
- test
- deploy
before_script:
- mkdir -p $GOPATH/src/golang.org/x
- git clone https://github.com/golang/crypto $GOPATH/src/golang.org/x/crypto
- (cd $GOPATH/src/golang.org/x/crypto && git remote set-url origin https://go.googlesource.com/crypto)
- git clone https://github.com/golang/net $GOPATH/src/golang.org/x/net
- (cd $GOPATH/src/golang.org/x/net && git remote set-url origin https://go.googlesource.com/net)
- git clone https://github.com/golang/sys $GOPATH/src/golang.org/x/sys
- (cd $GOPATH/src/golang.org/x/sys && git remote set-url origin https://go.googlesource.com/sys)
- git clone https://github.com/golang/text $GOPATH/src/golang.org/x/text
- (cd $GOPATH/src/golang.org/x/text && git remote set-url origin https://go.googlesource.com/text)
- make dependencies
- cp -R $CI_PROJECT_DIR $GOPATH/src/gitlab.com/NebulousLabs/Sia
- cd $GOPATH/src/gitlab.com/NebulousLabs/Sia
lint:
stage: lint
script:
- go get -u github.com/alecthomas/gometalinter
- gometalinter --install
- gometalinter --deadline=300s --vendor --disable-all --enable=vet --enable=gofmt ./...
legacy-tests:
stage: test
except:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-long pkgs="./node ./node/api ./node/api/server" run=.
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
package-tests:
stage: test
except:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-long run=. pkgs="./build ./cmd/siac ./cmd/siad ./compatibility ./crypto ./encoding ./modules ./modules/consensus ./modules/explorer ./modules/gateway ./modules/host ./modules/host/contractmanager ./modules/renter ./modules/renter/contractor ./modules/renter/hostdb ./modules/renter/hostdb/hosttree ./modules/renter/proto ./modules/miner ./modules/wallet ./modules/transactionpool ./persist ./sync ./types"
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
integration-tests:
stage: test
except:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-long run=. pkgs="./siatest ./siatest/consensus ./siatest/renter ./siatest/wallet"
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
legacy-tests-nightly:
stage: test
only:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-vlong pkgs="./node ./node/api ./node/api/server" run=.
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
package-tests-nightly:
stage: test
only:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-vlong run=. pkgs="./build ./cmd/siac ./cmd/siad ./compatibility ./crypto ./encoding ./modules ./modules/consensus ./modules/explorer ./modules/gateway ./modules/host ./modules/host/contractmanager ./modules/renter ./modules/renter/contractor ./modules/renter/hostdb ./modules/renter/hostdb/hosttree ./modules/renter/proto ./modules/miner ./modules/wallet ./modules/transactionpool ./persist ./sync ./types"
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
integration-tests-nightly:
stage: test
only:
- schedules
artifacts:
name: "SiaTesting-$CI_JOB_NAME"
paths:
- $CI_PROJECT_DIR/SiaTesting
- $CI_PROJECT_DIR/cover/cover.out
when: always
script:
- make test-vlong run=. pkgs="./siatest ./siatest/consensus ./siatest/renter ./siatest/wallet"
- cp -R /tmp/SiaTesting $CI_PROJECT_DIR/SiaTesting
- cp -R ./cover $CI_PROJECT_DIR/cover
deploy:
stage: deploy
only:
refs:
- master@NebulousLabs/Sia
artifacts:
name: "Binaries"
paths:
- $CI_PROJECT_DIR/artifacts
script:
- ./deploy.sh "$NIGHTLY_SIGNING_KEY"
- cp -R ./artifacts $CI_PROJECT_DIR/artifacts