Skip to content

Commit

Permalink
Initial commit (#1)
Browse files Browse the repository at this point in the history
* repo-sync-2023-03-27T16:29:09+0800

* rename CI
  • Loading branch information
tongke6 authored Mar 27, 2023
1 parent c35f33d commit 405d74a
Show file tree
Hide file tree
Showing 635 changed files with 173,687 additions and 1 deletion.
73 changes: 73 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
common --experimental_repo_remote_exec
common --experimental_ui_max_stdouterr_bytes=-1

build --incompatible_new_actions_api=false
build --copt=-fdiagnostics-color=always
build --enable_platform_specific_config

build --cxxopt=-std=c++17
build --host_cxxopt=-std=c++17
build --linkopt -fvisibility=hidden

# Binary safety flags
build --copt=-fPIC
build --host_copt=-fstack-protector-strong
build:linux --host_copt=-Wl,-z,noexecstack
build:macos --host_copt=-Wa,--noexecstack


test --keep_going
test --test_output=errors
test --test_timeout=1800

# platform specific config
# Bazel will automatic pick platform config since we have enable_platform_specific_config set
build:macos --features=-supports_dynamic_linker
build:macos --cxxopt -Wno-deprecated-enum-enum-conversion
build:macos --cxxopt -Wno-deprecated-anon-enum-enum-conversion
build:macos --macos_minimum_os=11.0

# static link libstdc++ & libgcc on Linux
build:linux --copt=-fopenmp
build:linux --linkopt=-fopenmp
build:linux --action_env=BAZEL_LINKOPTS=-static-libstdc++:-static-libgcc
build:linux --action_env=BAZEL_LINKLIBS=-l%:libstdc++.a:-l%:libgcc.a

build:asan --strip=never
build:asan --copt -fno-sanitize-recover=all
build:asan --copt -fsanitize=address
build:asan --copt -Og
build:asan --copt -g
build:asan --copt -fno-omit-frame-pointer
build:asan --linkopt -fsanitize=address
build:asan --linkopt -static-libasan

build:ubsan --strip=never
build:ubsan --copt -fno-sanitize-recover=all
build:ubsan --copt -fsanitize=undefined
build:ubsan --copt -Og
build:ubsan --copt -g
build:ubsan --copt -fno-omit-frame-pointer
build:ubsan --linkopt -fsanitize=undefined
build:ubsan --linkopt -static-libubsan

build:macos-asan --features=asan
build:macos-ubsan --features=ubsan

test:asan --strip=never
test:asan --copt -fno-sanitize-recover=all
test:asan --copt -fsanitize=address
test:asan --copt -O0
test:asan --copt -g
test:asan --copt -fno-omit-frame-pointer
test:asan --linkopt -fsanitize=address
test:asan --linkopt -static-libasan

test:ubsan --strip=never
test:ubsan --copt -fno-sanitize-recover=all
test:ubsan --copt -fsanitize=undefined
test:ubsan --copt -O0
test:ubsan --copt -g
test:ubsan --copt -fno-omit-frame-pointer
test:ubsan --linkopt -fsanitize=undefined
test:ubsan --linkopt -static-libubsan
1 change: 1 addition & 0 deletions .bazelversion
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
5.4.0
3 changes: 3 additions & 0 deletions .ci/docker-compose/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
SCDB_PORT=8080
MYSQL_PORT=13306
SCQL_IMAGE_TAG=latest
16 changes: 16 additions & 0 deletions .ci/docker-compose/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Startup

```bash
# You could specify project name via flag `-p project_name` to
# avoid container name conflict in multi-user environments.
docker compose up -d
```


# Notes

1. You could customize scdbserver and mysql container published port env `SCDB_PORT` and `MYSQL_PORT` in file `.env`, default port is `8080`.

2. You could customize scql image tag via env `SCQL_IMAGE_TAG` in file `.env`.


60 changes: 60 additions & 0 deletions .ci/docker-compose/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
version: '3.8'
services:
scdb:
image: scql:${SCQL_IMAGE_TAG:-latest}
command:
- /home/admin/bin/scdbserver
- -config=/home/admin/configs/config.yml
restart: always
ports:
- mode: host
protocol: tcp
published: ${SCDB_PORT:-8080}
target: 8080
volumes:
- ./scdb/conf/:/home/admin/configs/
engine_alice:
command:
- /home/admin/bin/scqlengine
- --flagfile=/home/admin/engine/conf/gflags.conf
image: scql:${SCQL_IMAGE_TAG:-latest}
volumes:
- ./engine/alice/conf/gflags.conf:/home/admin/engine/conf/gflags.conf
engine_bob:
command:
- /home/admin/bin/scqlengine
- --flagfile=/home/admin/engine/conf/gflags.conf
image: scql:${SCQL_IMAGE_TAG:-latest}
volumes:
- ./engine/bob/conf/gflags.conf:/home/admin/engine/conf/gflags.conf
engine_carol:
command:
- /home/admin/bin/scqlengine
- --flagfile=/home/admin/engine/conf/gflags.conf
image: scql:${SCQL_IMAGE_TAG:-latest}
volumes:
- ./engine/carol/conf/gflags.conf:/home/admin/engine/conf/gflags.conf
mysql:
image: mysql:latest
environment:
- MYSQL_ROOT_PASSWORD=testpass
- TZ=Asia/Shanghai
healthcheck:
retries: 10
test:
- CMD
- mysqladmin
- ping
- -h
- mysql
timeout: 20s
expose:
- "3306"
ports:
- mode: host
protocol: tcp
published: ${MYSQL_PORT:-13306}
target: 3306
restart: always
volumes:
- ./mysql/initdb:/docker-entrypoint-initdb.d
7 changes: 7 additions & 0 deletions .ci/docker-compose/engine/alice/conf/gflags.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
--listen_port=8003
--enable_builtin_service=true
--internal_port=9527
--datasource_router=embed
--enable_scdb_authorization=true
--engine_credential=alice_credential
--embed_router_conf={"datasources":[{"id":"ds001","name":"mysql db","kind":"MYSQL","connection_str":"db=alice;user=root;password=testpass;host=mysql;auto-reconnect=true"}],"rules":[{"db":"*","table":"*","datasource_id":"ds001"}]}
7 changes: 7 additions & 0 deletions .ci/docker-compose/engine/bob/conf/gflags.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
--listen_port=8003
--enable_builtin_service=true
--internal_port=9527
--datasource_router=embed
--enable_scdb_authorization=true
--engine_credential=bob_credential
--embed_router_conf={"datasources":[{"id":"ds001","name":"mysql db","kind":"MYSQL","connection_str":"db=bob;user=root;password=testpass;host=mysql;auto-reconnect=true"}],"rules":[{"db":"*","table":"*","datasource_id":"ds001"}]}
7 changes: 7 additions & 0 deletions .ci/docker-compose/engine/carol/conf/gflags.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
--listen_port=8003
--enable_builtin_service=true
--internal_port=9527
--datasource_router=embed
--enable_scdb_authorization=true
--engine_credential=carol_credential
--embed_router_conf={"datasources":[{"id":"ds001","name":"mysql db","kind":"MYSQL","connection_str":"db=carol;user=root;password=testpass;host=mysql;auto-reconnect=true"}],"rules":[{"db":"*","table":"*","datasource_id":"ds001"}]}
Loading

0 comments on commit 405d74a

Please sign in to comment.