mirror of
https://github.com/rqlite/rqlite.git
synced 2026-01-25 04:16:26 +00:00
Refactor CircleCI config for version 2.1
This commit is contained in:
@@ -1,13 +1,10 @@
|
|||||||
# CircleCI 2.0 configuration file
|
---
|
||||||
# Check https://circleci.com/docs/2.0/language-go/ for more details
|
|
||||||
version: 2.1
|
version: 2.1
|
||||||
|
|
||||||
parameters:
|
parameters:
|
||||||
primary_image:
|
primary_image:
|
||||||
type: string
|
type: string
|
||||||
default: 'rqlite/circleci-primary:0.0.12'
|
default: rqlite/circleci-primary:0.0.12
|
||||||
|
commands:
|
||||||
commands: # a reusable command with parameters
|
|
||||||
restore_and_save_cache:
|
restore_and_save_cache:
|
||||||
steps:
|
steps:
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
@@ -17,8 +14,7 @@ commands: # a reusable command with parameters
|
|||||||
- save_cache:
|
- save_cache:
|
||||||
key: go-mod-v4-{{ checksum "go.sum" }}
|
key: go-mod-v4-{{ checksum "go.sum" }}
|
||||||
paths:
|
paths:
|
||||||
- "/home/circleci/go/pkg/mod"
|
- /home/circleci/go/pkg/mod
|
||||||
|
|
||||||
cross_compile:
|
cross_compile:
|
||||||
parameters:
|
parameters:
|
||||||
cc:
|
cc:
|
||||||
@@ -32,27 +28,23 @@ commands: # a reusable command with parameters
|
|||||||
steps:
|
steps:
|
||||||
- run: go version
|
- run: go version
|
||||||
- run:
|
- run:
|
||||||
name: "Cross compile using <<parameters.cc>>"
|
name: Cross compile using <<parameters.cc>>
|
||||||
command: go install -a ./...
|
command: go install -a ./...
|
||||||
environment:
|
environment:
|
||||||
CGO_ENABLED: 1
|
CGO_ENABLED: 1
|
||||||
GOARCH: <<parameters.goarch>>
|
GOARCH: <<parameters.goarch>>
|
||||||
GOOS: <<parameters.goos>>
|
GOOS: <<parameters.goos>>
|
||||||
CC: <<parameters.cc>>
|
CC: <<parameters.cc>>
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
lint:
|
lint:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
steps:
|
steps:
|
||||||
# Don't do a restore_cache here, so we regularly check that the Go
|
|
||||||
# modules are actually fetchable.
|
|
||||||
- checkout
|
- checkout
|
||||||
- run: go version
|
- run: go version
|
||||||
- run: test -z "$(gofmt -l . | tee /dev/stderr)"
|
- run: test -z "$(gofmt -l . | tee /dev/stderr)"
|
||||||
- run: go vet ./...
|
- run: go vet ./...
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
test_odd:
|
test_odd:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -61,7 +53,6 @@ jobs:
|
|||||||
- restore_and_save_cache
|
- restore_and_save_cache
|
||||||
- run: go test -failfast $(go list ./... | sed -n 'n;p')
|
- run: go test -failfast $(go list ./... | sed -n 'n;p')
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
test_odd_race:
|
test_odd_race:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -71,9 +62,8 @@ jobs:
|
|||||||
- run:
|
- run:
|
||||||
command: go test -v -failfast -timeout 20m -race $(go list ./... | sed -n 'n;p')
|
command: go test -v -failfast -timeout 20m -race $(go list ./... | sed -n 'n;p')
|
||||||
environment:
|
environment:
|
||||||
GORACE: "halt_on_error=1"
|
GORACE: halt_on_error=1
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
test_even:
|
test_even:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -82,7 +72,6 @@ jobs:
|
|||||||
- restore_and_save_cache
|
- restore_and_save_cache
|
||||||
- run: go test -failfast $(go list ./... | sed -n 'p;n')
|
- run: go test -failfast $(go list ./... | sed -n 'p;n')
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
test_even_race:
|
test_even_race:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -92,9 +81,8 @@ jobs:
|
|||||||
- run:
|
- run:
|
||||||
command: go test -v -failfast -timeout 20m -race $(go list ./... | sed -n 'p;n')
|
command: go test -v -failfast -timeout 20m -race $(go list ./... | sed -n 'p;n')
|
||||||
environment:
|
environment:
|
||||||
GORACE: "halt_on_error=1"
|
GORACE: halt_on_error=1
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
cross_compile_windows:
|
cross_compile_windows:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -168,7 +156,6 @@ jobs:
|
|||||||
cc: mips64el-linux-gnuabi64-gcc
|
cc: mips64el-linux-gnuabi64-gcc
|
||||||
goarch: mips64le
|
goarch: mips64le
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_single:
|
end_to_end_single:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -182,7 +169,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_upgrade:
|
end_to_end_upgrade:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -197,7 +183,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_joining:
|
end_to_end_joining:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -210,7 +195,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_multi:
|
end_to_end_multi:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -223,7 +207,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_multi_adv:
|
end_to_end_multi_adv:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -236,7 +219,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_autoclustering:
|
end_to_end_autoclustering:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -251,7 +233,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_auto_state:
|
end_to_end_auto_state:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -259,7 +240,7 @@ jobs:
|
|||||||
name: minio
|
name: minio
|
||||||
command: server /data
|
command: server /data
|
||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- restore_and_save_cache
|
- restore_and_save_cache
|
||||||
@@ -275,10 +256,9 @@ jobs:
|
|||||||
MINIO_BUCKET: minio-bucket
|
MINIO_BUCKET: minio-bucket
|
||||||
- run:
|
- run:
|
||||||
command: python3 system_test/e2e/auto_state_file.py
|
command: python3 system_test/e2e/auto_state_file.py
|
||||||
-run:
|
- run:
|
||||||
command: python3 system_test/e2e/auto_state_gcs.py
|
command: python3 system_test/e2e/auto_state_gcs.py
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_cdc:
|
end_to_end_cdc:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -291,7 +271,6 @@ jobs:
|
|||||||
environment:
|
environment:
|
||||||
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
RQLITED_PATH: /home/circleci/go/bin/rqlited
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
end_to_end_extensions:
|
end_to_end_extensions:
|
||||||
docker:
|
docker:
|
||||||
- image: << pipeline.parameters.primary_image >>
|
- image: << pipeline.parameters.primary_image >>
|
||||||
@@ -301,11 +280,16 @@ jobs:
|
|||||||
- run: go install ./...
|
- run: go install ./...
|
||||||
- run: mkdir /home/circleci/extensions
|
- run: mkdir /home/circleci/extensions
|
||||||
- run: mkdir /home/circleci/extensions-misc
|
- run: mkdir /home/circleci/extensions-misc
|
||||||
- run: gcc -g -fPIC -shared db/testdata/rot13.c -o /home/circleci/extensions/rot13.so
|
- run: gcc -g -fPIC -shared db/testdata/rot13.c -o
|
||||||
- run: gcc -g -fPIC -shared db/testdata/carray.c -o /home/circleci/extensions/carray.so
|
/home/circleci/extensions/rot13.so
|
||||||
|
- run: gcc -g -fPIC -shared db/testdata/carray.c -o
|
||||||
|
/home/circleci/extensions/carray.so
|
||||||
- run: zip -j /home/circleci/rot13.zip /home/circleci/extensions/rot13.so
|
- run: zip -j /home/circleci/rot13.zip /home/circleci/extensions/rot13.so
|
||||||
- run: tar -czf /home/circleci/rot13.tar.gz --strip-components=1 -C /home/circleci/extensions rot13.so
|
- run: tar -czf /home/circleci/rot13.tar.gz --strip-components=1 -C
|
||||||
- run: git clone https://github.com/rqlite/rqlite-sqlite-ext.git && cd rqlite-sqlite-ext/misc && make && cp *.so /home/circleci/extensions-misc
|
/home/circleci/extensions rot13.so
|
||||||
|
- run: git clone https://github.com/rqlite/rqlite-sqlite-ext.git && cd
|
||||||
|
rqlite-sqlite-ext/misc && make && cp *.so
|
||||||
|
/home/circleci/extensions-misc
|
||||||
- run:
|
- run:
|
||||||
command: python3 system_test/e2e/extensions.py
|
command: python3 system_test/e2e/extensions.py
|
||||||
environment:
|
environment:
|
||||||
@@ -317,7 +301,6 @@ jobs:
|
|||||||
EXTENSIONS_PATH_MULTIPLE: /home/circleci/rot13.zip,/home/circleci/extensions/carray.so
|
EXTENSIONS_PATH_MULTIPLE: /home/circleci/rot13.zip,/home/circleci/extensions/carray.so
|
||||||
EXTENSIONS_PATH_MISC: /home/circleci/extensions-misc
|
EXTENSIONS_PATH_MISC: /home/circleci/extensions-misc
|
||||||
resource_class: large
|
resource_class: large
|
||||||
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
build_and_test:
|
build_and_test:
|
||||||
|
|||||||
Reference in New Issue
Block a user