Skip to content

Commit

Permalink
feat: Bootstrap new (old) project oay (#2041)
Browse files Browse the repository at this point in the history
Signed-off-by: Xuanwo <github@xuanwo.io>
  • Loading branch information
Xuanwo authored Apr 19, 2023
1 parent b6d7e0e commit e449e34
Show file tree
Hide file tree
Showing 6 changed files with 120 additions and 0 deletions.
17 changes: 17 additions & 0 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 Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ members = [
"bindings/java",

"bin/oli",
"bin/oay",
]

[workspace.package]
Expand Down
48 changes: 48 additions & 0 deletions bin/oay/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# 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.

[package]
categories = ["filesystem"]
description = "OpenDAL Gateway"
keywords = ["storage", "data", "s3", "fs", "azblob"]
name = "oay"

authors.workspace = true
edition.workspace = true
homepage.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true

[dependencies]
anyhow = "1"
clap = { version = "4", features = ["cargo", "string"] }
dirs = "5.0.0"
env_logger = "0.10"
futures = "0.3"
log = "0.4"
opendal.workspace = true
serde = { version = "1", features = ["derive"] }
tokio = { version = "1.27", features = [
"fs",
"macros",
"rt-multi-thread",
"io-std",
] }
toml = "0.7.3"
url = "2.3.1"
13 changes: 13 additions & 0 deletions bin/oay/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Oay

Oay is an OpenDAL Gateway that empowers users to access data through their preferred APIs.

## Goal

Allow users to access different storage backend through their preferred APIs.

![](https://user-images.githubusercontent.com/5351546/233089393-b4ce41df-3236-4dc7-969d-fa00468ae095.png)

## Status

Our first milestone is to provide S3 APIs.
16 changes: 16 additions & 0 deletions bin/oay/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// 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.
25 changes: 25 additions & 0 deletions bin/oay/src/bin/oay.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// 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.

use anyhow::Result;

#[tokio::main]
async fn main() -> Result<()> {
println!("Hello, world!");

Ok(())
}

0 comments on commit e449e34

Please # to comment.