forked from kurrent-io/EventStore-Client-Go
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathintegration_tests_with_empty_database.yml
More file actions
97 lines (90 loc) · 5.23 KB
/
integration_tests_with_empty_database.yml
File metadata and controls
97 lines (90 loc) · 5.23 KB
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
name: Integration Tests With Empty Database
on:
pull_request:
push:
branches:
- develop
jobs:
integration-tests-with-empty-database:
runs-on: ubuntu-18.04
strategy:
matrix:
include:
- target: connection
source_dir: './core/connection/**'
test_dir: './integration_tests/internal/with_empty_database/connection/**'
- target: event_streams/append_to_stream
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/append_to_stream/**'
- target: event_streams/batch_append_to_stream
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/batch_append_to_stream/**'
- target: event_streams/delete_stream
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/delete_stream/**'
- target: event_streams/read_from_stream
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/read_from_stream/**'
- target: event_streams/stream_metadata
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/stream_metadata/**'
- target: event_streams/subscribe_to_stream
source_dir: './event_streams/**'
test_dir: './integration_tests/internal/with_empty_database/event_streams/subscribe_to_stream/**'
- target: operations
source_dir: './operations/**'
test_dir: './integration_tests/internal/with_empty_database/operations/**'
- target: persistent
source_dir: './persistent/**'
test_dir: './integration_tests/internal/with_empty_database/persistent/**'
- target: projections
source_dir: './projections/**'
test_dir: './integration_tests/internal/with_empty_database/projections/**'
- target: user_management
source_dir: './user_management/**'
test_dir: './integration_tests/internal/with_empty_database/user_management/**'
fail-fast: false
name: Test - ${{ matrix.target }}
steps:
- uses: actions/checkout@v1
- name: Cache tests
id: cache-events
uses: actions/cache@v2
with:
path: ./README.md
key: ${{ runner.os }}-integration-empty-db-test-${{ hashFiles(matrix.test_dir, matrix.source_dir, 'core/**', 'protos/**') }}
- name: Docker Pull
if: ${{ steps.cache-events.outputs.cache-hit != 'true' }}
run: |
(echo ${{ secrets.GITHUB_TOKEN }} | docker login -u pivonroll --password-stdin docker.pkg.github.com) || \
(echo ${{ secrets.GITHUB_TOKEN }} | docker login -u pivonroll --password-stdin docker.pkg.github.com) || \
(echo ${{ secrets.GITHUB_TOKEN }} | docker login -u pivonroll --password-stdin docker.pkg.github.com) || \
(exit 1)
(docker pull docker.pkg.github.com/eventstore/eventstore-client-grpc-testdata/eventstore-client-grpc-testdata:21.6.0-buster-slim) || \
(docker pull docker.pkg.github.com/eventstore/eventstore-client-grpc-testdata/eventstore-client-grpc-testdata:21.6.0-buster-slim) || \
(docker pull docker.pkg.github.com/eventstore/eventstore-client-grpc-testdata/eventstore-client-grpc-testdata:21.6.0-buster-slim) || \
(docker pull docker.pkg.github.com/eventstore/eventstore-client-grpc-testdata/eventstore-client-grpc-testdata:21.6.0-buster-slim) || \
(exit 1)
- name: Tests with cache hit
if: ${{ steps.cache-events.outputs.cache-hit == 'true' }}
run: |
echo "Cache Hit"
- name: Tests
if: ${{ matrix.target != 'connection' && steps.cache-events.outputs.cache-hit != 'true' }}
run: |
touch vars.env
docker-compose up
cd integration_tests/internal/with_empty_database/${{ matrix.target }}
go test -v ./...
docker-compose down
- name: Tests with cluster
if: ${{ matrix.target == 'connection' && steps.cache-events.outputs.cache-hit != 'true' }}
run: |
touch vars.env
docker-compose up
docker-compose -f cluster-docker-compose.yml up -d
cd integration_tests/internal/with_empty_database/${{ matrix.target }}
go test -v ./...
cd ../../../..
docker-compose -f cluster-docker-compose.yml down
docker-compose down