diff --git a/.github/workflows/ci-reusable.yml b/.github/workflows/ci-reusable.yml index 7121786a..83f1dcac 100644 --- a/.github/workflows/ci-reusable.yml +++ b/.github/workflows/ci-reusable.yml @@ -52,7 +52,7 @@ jobs: - name: Integration tests if: matrix.tests == 'integration' || matrix.tests == 'all' env: - CODEX_INTEGRATION_TEST_INCLUDES: ${{ matrix.includes }} + STORAGE_INTEGRATION_TEST_INCLUDES: ${{ matrix.includes }} run: make -j${ncpu} DEBUG=${{ runner.debug }} testIntegration - name: Upload integration tests log files diff --git a/Makefile b/Makefile index b030340e..2046e2bf 100644 --- a/Makefile +++ b/Makefile @@ -267,15 +267,15 @@ libstorage: ifeq ($(STATIC), 1) echo -e $(BUILD_MSG) "build/$@.a" && \ - $(ENV_SCRIPT) nim libstorageStatic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) codex.nims + $(ENV_SCRIPT) nim libstorageStatic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) storage.nims else ifeq ($(detected_OS),Windows) echo -e $(BUILD_MSG) "build/$@.dll" && \ - $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) codex.nims + $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) storage.nims else ifeq ($(detected_OS),macOS) echo -e $(BUILD_MSG) "build/$@.dylib" && \ - $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) codex.nims + $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) storage.nims else echo -e $(BUILD_MSG) "build/$@.so" && \ - $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) codex.nims + $(ENV_SCRIPT) nim libstorageDynamic $(NIM_PARAMS) $(LIBSTORAGE_PARAMS) storage.nims endif endif # "variables.mk" was not included diff --git a/README.md b/README.md index d21e42b6..280a22b9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# Logos Storage Decentralized Engine +# Logos Storage Filesharing Client -> The Logos Storage project aims to create a decentralized engine that allows persisting data in p2p networks. +> The Logos Storage project aims to create a filesharing client that allows sharing data privately in p2p networks. > WARNING: This project is under active development and is considered pre-alpha. @@ -16,12 +16,12 @@ ## Build and Run -For detailed instructions on preparing to build logos-storage-nim see [*Build Logos Storage*](https://docs.codex.storage/learn/build). - To build the project, clone it and run: ```bash make update && make +# Tip: use -j{ncpu} to for parallel execution, eg: +# make -j12 update && make -j12 ``` The executable will be placed under the `build` directory under the project root. @@ -41,12 +41,7 @@ It is possible to configure a Logos Storage node in several ways: The order of priority is the same as above: CLI options --> Environment variables --> Configuration file. -Please check [documentation](https://docs.codex.storage/learn/run#configuration) for more information. - -## Guides - -To get acquainted with Logos Storage, consider: -* running the simple [Logos Storage Two-Client Test](https://docs.codex.storage/learn/local-two-client-test) for a start, and; +Please check `build/storage --help` for more information. ## API @@ -54,8 +49,9 @@ The client exposes a REST API that can be used to interact with the clients. Ove ## Bindings -Logos Storage provides a C API that can be wrapped by other languages. The bindings is located in the `library` folder. -Currently, only a Go binding is included. +Logos Storage provides a C API that can be wrapped by other languages. The C API bindings are located in the `library` folder. + +Currently, only Go bindings are provided in this repo. However, Rust bindings for Logos Storage can be found at https://github.com/nipsysdev/storage-rust-bindings. ### Build the C library @@ -71,7 +67,8 @@ See https://github.com/logos-storage/logos-storage-go-bindings-example. ### Static vs Dynamic build -By default, Logos Storage builds a dynamic library (`libstorage.so`), which you can load at runtime. +By default, Logos Storage builds a dynamic library (`libstorage.so`/`libstorage.dylib`/`libstroage.dll`), which you can load at runtime. + If you prefer a static library (`libstorage.a`), set the `STATIC` flag: ```bash diff --git a/docker/README.md b/docker/README.md index 76af6cd8..2c337bed 100644 --- a/docker/README.md +++ b/docker/README.md @@ -37,7 +37,7 @@ ## Environment variables - We can configure Codex using [Environment variables](../README#environment-variables) and [docker-compose.yaml](docker-compose.yaml) file can be useful as an example. + We can configure Logos Storage using [Environment variables](../README#environment-variables) and [docker-compose.yaml](docker-compose.yaml) file can be useful as an example. We also added a temporary environment variable `NAT_IP_AUTO` to the entrypoint which is set as `false` for releases and ` true` for regular builds. That approach is useful for Dist-Tests. ```shell @@ -51,7 +51,7 @@ 2. The docker image can then be minified using [slim](https://github.com/slimtoolkit/slim). Install slim on your path and then run: ```shell slim # brings up interactive prompt - >>> build --target status-im/codexsetup --http-probe-off true + >>> build --target status-im/logosstoragesetup --http-probe-off true ``` - 3. This should output an image with name `status-im/codexsetup.slim` + 3. This should output an image with name `status-im/logosstoragesetup.slim` 4. We can then bring up the image using `docker-compose up -d`. diff --git a/library/README.md b/library/README.md index b9fd0567..4e78808a 100644 --- a/library/README.md +++ b/library/README.md @@ -16,7 +16,7 @@ sequenceDiagram participant C as C API (libstorage.h) participant Ctx as StorageContext participant Thr as Worker Thread - participant Eng as CodexServer + participant Eng as StorageServer App->>Go: Start Go->>C: storage_start_node diff --git a/openapi.yaml b/openapi.yaml index 04d8960d..150986d8 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -171,7 +171,7 @@ components: type: string nullable: true description: "The original name of the uploaded content (optional)" - example: codex.png + example: storage.png mimetype: type: string nullable: true @@ -287,7 +287,7 @@ paths: description: The content disposition used to send the filename. schema: type: string - example: 'attachment; filename="codex.png"' + example: 'attachment; filename="storage.png"' requestBody: content: application/octet-stream: