forked from scality/cloudserver
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathcircle.yml
159 lines (147 loc) · 5.96 KB
/
circle.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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
---
general:
branches:
ignore:
- /^ultron\/.*/ # Ignore ultron/* branches
artifacts:
- coverage/
machine:
node:
version: 6.9.5
ruby:
version: "2.4.1"
services:
- redis
environment:
CXX: g++-4.9
ENABLE_LOCAL_CACHE: true
REPORT_TOKEN: report-token-1
hosts:
bucketwebsitetester.s3-website-us-east-1.amazonaws.com: 127.0.0.1
dependencies:
override:
- rm -rf node_modules
- npm install
post:
- sudo pip install flake8 yamllint
- sudo pip install s3cmd==1.6.1
# fog and ruby testing dependencies
- gem install fog-aws -v 1.3.0
- gem install mime-types -v 3.1
- gem install rspec -v 3.5
- gem install json
- gem install digest
# java sdk dependencies
- sudo apt-get install -y -q default-jdk
test:
override:
- npm run --silent lint -- --max-warnings 0
- npm run --silent lint_md
- flake8 $(git ls-files '*.py')
- yamllint $(git ls-files '*.yml')
- mkdir -p $CIRCLE_TEST_REPORTS/unit
- npm run unit_coverage
- npm run start_dmd & bash wait_for_local_port.bash 9990 40
&& npm run multiple_backend_test
# Run S3 with multiple data backends ; run ft_tests
- S3BACKEND=mem S3DATA=multiple npm start
> $CIRCLE_ARTIFACTS/server_multiple_java.txt
& bash wait_for_local_port.bash 8000 40
&& cd ./tests/functional/jaws && mvn test
- S3BACKEND=mem S3DATA=multiple npm start
> $CIRCLE_ARTIFACTS/server_multiple_fog.txt
& bash wait_for_local_port.bash 8000 40
&& cd tests/functional/fog && rspec tests.rb
- S3BACKEND=mem MPU_TESTING=yes S3DATA=multiple npm start
> $CIRCLE_ARTIFACTS/server_multiple_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& S3DATA=multiple npm run ft_awssdk
# Run S3 with multiple data backends + KMS Encryption; run ft_awssdk
- S3BACKEND=mem MPU_TESTING=yes S3DATA=multiple npm start
> $CIRCLE_ARTIFACTS/server_multiple_kms_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& S3DATA=multiple ENABLE_KMS_ENCRYPTION=true npm run ft_awssdk
# Run S3 with mem Backend ; run ft_tests
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_java.txt
& bash wait_for_local_port.bash 8000 40
&& cd ./tests/functional/jaws && mvn test
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_fog.txt
& bash wait_for_local_port.bash 8000 40
&& cd tests/functional/fog && rspec tests.rb
- S3BACKEND=mem MPU_TESTING=yes npm start
> $CIRCLE_ARTIFACTS/server_mem_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_awssdk
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_s3cmd.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_s3cmd
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_s3curl.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_s3curl
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_rawnode.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_node
# Run S3 with mem Backend + KMS Encryption ; run ft_tests
- S3BACKEND=mem MPU_TESTING=yes npm start
> $CIRCLE_ARTIFACTS/server_mem_kms_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_awssdk
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_kms_s3cmd.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_s3cmd
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_kms_s3curl.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_s3curl
- S3BACKEND=mem npm start
> $CIRCLE_ARTIFACTS/server_mem_kms_rawnode.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_node
# Run S3 with file Backend ; run ft_tests
- S3BACKEND=file S3VAULT=mem MPU_TESTING=yes npm start
> $CIRCLE_ARTIFACTS/server_file_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_awssdk
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_s3cmd.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_s3cmd
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_s3curl.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_s3curl
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_rawnode.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_node
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_management.txt
& bash wait_for_local_port.bash 8000 40
&& npm run ft_management
# Run S3 with file Backend + KMS Encryption ; run ft_tests
- S3BACKEND=file S3VAULT=mem MPU_TESTING=yes npm start
> $CIRCLE_ARTIFACTS/server_file_kms_awssdk.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_awssdk
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_kms_s3cmd.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_s3cmd
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_kms_s3curl.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_s3curl
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_kms_rawnode.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_node
- S3BACKEND=file S3VAULT=mem npm start
> $CIRCLE_ARTIFACTS/server_file_kms_management.txt
& bash wait_for_local_port.bash 8000 40
&& ENABLE_KMS_ENCRYPTION=true npm run ft_management