Skip to content

Commit

Permalink
feat: Add AtomicServer Support for OpenDAL (apache#2878)
Browse files Browse the repository at this point in the history
* feat: Add AtomicData Support for OpenDAL (apache#2635)

* fix foundationdb action file

* feat: Add AtomicData Support for OpenDAL - Docs (apache#2635)

* feat: Add AtomicData Support for OpenDAL - Fix clippy (apache#2635)

* feat: AtomicData - Enable Pass in Endpoint (apache#2635)

* feat: AtomicData change to call atomic-server API (apache#2635)

* feat: Rename AtomicData => AtomicServer (apache#2635)
  • Loading branch information
ArmandoZ authored Sep 15, 2023
1 parent 2325bb8 commit 6ff8c70
Show file tree
Hide file tree
Showing 18 changed files with 685 additions and 3 deletions.
7 changes: 7 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,13 @@ OPENDAL_WASABI_BUCKET=<bucket>
OPENDAL_WASABI_ENDPOINT=<endpoint>
OPENDAL_WASABI_ACCESS_KEY_ID=<ak>
OPENDAL_WASABI_SECRET_ACCESS_KEY=<sk>
# atomicserver
OPENDAL_ATOMICSERVER_TEST=false
OPENDAL_ATOMICSERVER_ROOT=/path/to/dir
OPENDAL_ATOMICSERVER_ENDPOINT=http://localhost:9883
OPENDAL_ATOMICSERVER_PRIVATE_KEY=<private_key>
OPENDAL_ATOMICSERVER_PUBLIC_KEY=<public_key>
OPENDAL_ATOMICSERVER_PARENT_RESOURCE_ID=http://localhost:9883
# foundationdb
OPENDAL_FOUNDATIONDB_TEST=false
OPENDAL_FOUNDATIONDB_ROOT=/path/to/dir
Expand Down
57 changes: 57 additions & 0 deletions .github/workflows/service_test_atomicserver.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.

name: Service Test Atomicserver

on:
push:
branches:
- main
pull_request:
branches:
- main
paths:
- "core/src/**"
- "core/tests/**"
- "!core/src/docs/**"
- "!core/src/services/**"
- "core/src/services/atomicserver/**"
- ".github/workflows/service_test_atomicserver.yml"

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
cancel-in-progress: true

jobs:
atomicserver:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Test
shell: bash
working-directory: core
run: |
cargo test atomicserver --features services-atomicserver -j=1
env:
RUST_BACKTRACE: full
OPENDAL_ATOMICSERVER_TEST: off
OPENDAL_ATOMICSERVER_ROOT: TODO - ${{ secrets.OPENDAL_ATOMICSERVER_ROOT }}
OPENDAL_ATOMICSERVER_ENDPOINT: TODO - ${{ secrets.OPENDAL_ATOMICSERVER_ENDPOINT }}
OPENDAL_ATOMICSERVER_PRIVATE_KEY: TODO - ${{ secrets.OPENDAL_ATOMICSERVER_PRIVATE_KEY }}
OPENDAL_ATOMICSERVER_PUBLIC_KEY: TODO - ${{ secrets.OPENDAL_ATOMICSERVER_PUBLIC_KEY }}
OPENDAL_ATOMICSERVER_PARENT_RESOURCE_ID: TODO - ${{ secrets.OPENDAL_ATOMICSERVER_PARENT_RESOURCE_ID }}
2 changes: 1 addition & 1 deletion .github/workflows/service_test_foundationdb.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ on:
- "!core/src/docs/**"
- "!core/src/services/**"
- "core/src/services/foundationdb/**"
- ".github/workflows/service-test-foundationdb.yml"
- ".github/workflows/service_test_foundationdb.yml"

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
Expand Down
45 changes: 43 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ Major components of the project include:
- sled: [sled](https://crates.io/crates/sled) backend
- redb: [redb](https://crates.io/crates/redb) backend
- tikv: [tikv](https://tikv.org/) backend
- atomicserver: [Atomicserver](https://github.com/atomicdata-dev/atomic-server) services

</details>

Expand Down
2 changes: 2 additions & 0 deletions core/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@ layers-await-tree = ["dep:await-tree"]
# Enable layers async-backtrace support.
layers-async-backtrace = ["dep:async-backtrace"]

services-atomicserver = ["dep:atomic_lib"]
services-azblob = [
"dep:sha2",
"dep:reqsign",
Expand Down Expand Up @@ -196,6 +197,7 @@ async-backtrace = { version = "0.2.6", optional = true }
async-compat = "0.2"
async-tls = { version = "0.11", optional = true }
async-trait = "0.1.68"
atomic_lib = { version = "0.34.5", optional = true }
await-tree = { version = "0.1.1", optional = true }
backon = "0.4.1"
base64 = "0.21"
Expand Down
1 change: 1 addition & 0 deletions core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@
- sled: [sled](https://crates.io/crates/sled) backend
- redb: [redb](https://crates.io/crates/redb) backend
- tikv: [tikv](https://tikv.org/) backend
- atomicserver: [Atomicserver](https://github.com/atomicdata-dev/atomic-server) services

</details>

Expand Down
1 change: 1 addition & 0 deletions core/src/docs/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
- `services-redis-rustls`: Enable redis service support with `rustls`.
- `services-redis-native-tls`: Enable redis service support with `native-tls`.
- `services-rocksdb`: Enable rocksdb service support.
- `services-atomicserver`: Enable atomicserver service support.
- `services-sled`: Enable sled service support.

## Dependencies Features
Expand Down
Loading

0 comments on commit 6ff8c70

Please sign in to comment.