forked from RedHatInsights/insights-results-aggregator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
69 lines (65 loc) · 2.14 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
# Copyright 2021, 2022, 2023 Red Hat, Inc
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
language: go
go:
- "1.20"
services:
- postgresql
jobs:
include:
- name: "Build 1.20"
stage: build
script:
- make
- stage: style
script:
- make style
- stage: unit tests
script:
- make test
- ./check_coverage.sh
- make coverage
after_success:
- env
- bash <(curl -s https://codecov.io/bash)
- stage: openapi-checks
services:
- docker
before_install:
- docker pull openapitools/openapi-generator-cli
script:
- docker run -v ${PWD}:/local openapitools/openapi-generator-cli validate -i /local/openapi.json
- stage: bdd tests
services:
- docker
before_script:
- make
- wget -O docker-compose.yml https://raw.githubusercontent.com/RedHatInsights/insights-behavioral-spec/main/docker-compose.yml
- POSTGRES_DB_NAME=test docker-compose --profile test-aggregator up -d
- cid=$(docker ps | grep 'insights-behavioral-spec:latest' | cut -d ' ' -f 1)
- docker cp insights-results-aggregator $cid:`docker exec $cid bash -c 'echo "$VIRTUAL_ENV_BIN"'`
- docker cp openapi.json $cid:`docker exec $cid bash -c 'echo "$HOME"'`
- docker exec -u root $cid /bin/bash -c 'chmod +x $VIRTUAL_ENV_BIN/insights-results-aggregator'
script:
- docker exec -it $cid /bin/bash -c 'env && make aggregator-tests'
- stage: integration tests
script:
- make integration_tests
stages:
- build
- style
- unit tests
- openapi-checks
- bdd tests
- integration tests