Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update build system #119

Open
wants to merge 27 commits into
base: develop
Choose a base branch
from

Conversation

NikitaZotov
Copy link
Member

@NikitaZotov NikitaZotov commented Dec 13, 2024

I don't know if I should bring out the build and run instructions of submodules. It's like it should be a Quick Start, but I don't want to deploy server with documentation for this repository.


Important

Update build system by removing old scripts, updating documentation, and adjusting configurations for new build process.

  • Build System:
    • Replaces install_platform.sh with install_submodules.sh in install.yml.
    • Replaces install_minimal_platform.sh with install_minimal_submodules.sh in minimal_install.yml.
    • Removes all build and run scripts due to changes in the sc-machine build system.
  • Documentation:
    • Updates README.md to reflect new build instructions using Docker and native methods.
    • Updates changelog.md to document breaking changes and script removals.
  • Configuration:
    • Updates docker-compose.yml to use new image versions and paths.
    • Updates ostis-web-platform.ini to reflect new configuration paths and settings.
  • Miscellaneous:
    • Updates copyright year in LICENSE to 2025.
    • Renames kb/ostis-web-platform-components-specification.scs to knowledge-base/ostis-web-platform-components-specification.scs.

This description was created by Ellipsis for ec0bb6a. It will automatically update as commits are pushed.

@NikitaZotov NikitaZotov self-assigned this Dec 13, 2024
@NikitaZotov NikitaZotov added this to the 0.10.0 milestone Dec 13, 2024
docs/changelog.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Show resolved Hide resolved
README.md Show resolved Hide resolved
README.md Outdated
source .venv/bin/activate
python3 server/app.py
# after building projects there should be three folders `build/Debug` in sc-machine, scp-machine and sc-component-manager
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sc-machine was built in release, there is only 'Release' folder in 'build'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was something changed?

README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated
@@ -94,7 +115,8 @@ To learn more about the platform, check out our [documentation](https://github.c
```sh
# build the knowledge base
# required before the first startup (or if you've made updates to KB sources)
# required before the first startup
# (or if you've made updates to knowledge base sources)
docker compose run machine build
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there are several runs that don't mention --rm

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some are left

README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Show resolved Hide resolved
README.md Outdated
source .venv/bin/activate
python3 server/app.py
# after building projects there should be three folders `build/Debug` in sc-machine, scp-machine and sc-component-manager
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was something changed?

README.md Outdated
@@ -94,7 +115,8 @@ To learn more about the platform, check out our [documentation](https://github.c
```sh
# build the knowledge base
# required before the first startup (or if you've made updates to KB sources)
# required before the first startup
# (or if you've made updates to knowledge base sources)
docker compose run machine build
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some are left

README.md Outdated
# to run sc-machine, see https://ostis-ai.github.io/sc-machine/build/quick_start/#run-sc-machine-in-release
./sc-machine/build/Release/bin/sc-builder -i repo.path -o kb.bin --clear
./sc-machine/build/Release/bin/sc-machine -s kb.bin -c ostis-web-platform.ini \
-e "sc-machine/build/Debug/lib/extensions;scp-machine/build/Debug/lib/extensions;sc-component-manager/build/Debug/lib/extensions"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no debug folder in sc-machine

@NikitaZotov
Copy link
Member Author

@ellipsis, review this PR, please

Copy link

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Reviewed everything up to 1348208 in 1 minute and 1 seconds

More details
  • Looked at 631 lines of code in 24 files
  • Skipped 1 files when reviewing.
  • Skipped posting 18 drafted comments based on config settings.
1. .github/workflows/install.yml:39
  • Draft comment:
    Changed script from install_platform.sh to install_submodules.sh. Ensure workflow naming matches new script functionality.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
2. .github/workflows/minimal_install.yml:39
  • Draft comment:
    Updated minimal install script to call install_minimal_submodules.sh. Confirm that removal of minimal platform build steps is intentional.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
3. LICENSE:3
  • Draft comment:
    Updated copyright year to 2025. Make sure this change is consistent across the project.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
4. README.md:42
  • Draft comment:
    Changed Docker command to use '--rm' flag for cleaner container removal. Ensure all docs reference new commands.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
5. README.md:76
  • Draft comment:
    Native installation instructions now include explicit build steps for each submodule. Confirm that these detailed instructions are maintained.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
6. docker-compose.yml:31
  • Draft comment:
    Healthcheck command now sources a venv. Verify that the virtual environment exists and is properly set up in the container.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
7. docker-compose.yml:39
  • Draft comment:
    Volume mapping changed from '/kb' to '/knowledge-base'. Confirm updates in paths across all components.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
8. docs/changelog.md:9
  • Draft comment:
    Changelog now lists breaking changes and removed scripts. Ensure that all script removals are documented in release notes.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
9. ostis-web-platform.ini:35
  • Draft comment:
    Changed 'repo_path' and 'extensions_path' to 'input' and 'output' in [sc-builder]. Verify that any dependent systems or documentation use updated keys.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
10. repo.path:2
  • Draft comment:
    Updated knowledge base directory from 'kb' to 'knowledge-base'. Ensure consistency with other config files.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
11. scripts/install_minimal_submodules.sh:10
  • Draft comment:
    Renamed file from install_minimal_platform.sh; verify all docs and workflows reference the new script name.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
12. scripts/set_vars.sh:8
  • Draft comment:
    Removed export of CONFIG_PATH and REPO_PATH. Confirm these are set elsewhere to avoid missing configuration.
  • Reason this comment was not posted:
    Comment did not seem useful.
13. .github/workflows/install.yml:40
  • Draft comment:
    Using './install_submodules.sh' is intended; please confirm it covers all needed installation steps.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
14. .github/workflows/minimal_install.yml:40
  • Draft comment:
    Changed to './install_minimal_submodules.sh'—verify this meets the minimal installation needs.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
15. README.md:104
  • Draft comment:
    Reference to './scripts/install_dependencies.sh' is outdated since that script was removed. Update instructions for building sc-web.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable:
    The comment is about a changed part of the README (the native installation instructions). The comment claims a script is missing, which would make the instructions incorrect. However, I can't verify if the script actually exists in the sc-web repository without checking it. The instructions point to the sc-web README for details, so the script may exist there.
    I can't actually verify if the script exists or not without checking the sc-web repository. The instructions explicitly defer to the sc-web README for build details.
    Since the instructions explicitly point to the sc-web README for build details (line 102), and we can't verify the script's existence, we should err on the side of assuming the instructions are correct.
    Delete the comment since we can't verify its correctness and the instructions defer to the authoritative sc-web README for build details.
16. docker-compose.yml:31
  • Draft comment:
    The healthcheck command sources a virtual environment; ensure that '.venv' is present in the container or adjust the command.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
17. docs/changelog.md:95
  • Draft comment:
    Duplicate [0.7.0-Rebirth] changelog entry detected; consider removing the duplicate to avoid confusion.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
18. scripts/set_vars.sh:8
  • Draft comment:
    Removal of sourcing other submodules' set_vars.sh is intentional; ensure all necessary environment variables remain set.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None

Workflow ID: wflow_3ygnaKD6vjnIvBa7


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

@NikitaZotov NikitaZotov force-pushed the feat/update_build_system branch from 1348208 to ec0bb6a Compare February 3, 2025 13:41
@NikitaZotov
Copy link
Member Author

@ellipsis, review this PR, please

Copy link

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Reviewed everything up to ec0bb6a in 59 seconds

More details
  • Looked at 659 lines of code in 25 files
  • Skipped 1 files when reviewing.
  • Skipped posting 30 drafted comments based on config settings.
1. .github/workflows/install.yml:39
  • Draft comment:
    Updated script call to install_submodules.sh; ensure all dependent workflows and docs reflect this change.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
2. .github/workflows/minimal_install.yml:39
  • Draft comment:
    Renamed script call to install_minimal_submodules.sh for consistency; verify documentation is updated accordingly.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
3. LICENSE:3
  • Draft comment:
    License year updated to 2025; ensure this change is communicated in release notes.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
4. README.md:38
  • Draft comment:
    Docker Compose command updated to use '--rm' flag for cleanup; confirm that all sections align with new build instructions.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
5. README.md:74
  • Draft comment:
    Native installation instructions now invoke install_submodules.sh and include detailed build steps; ensure prerequisites (like conan, cmake, ninja) are clearly noted.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
6. docker-compose.yml:22
  • Draft comment:
    Volume mount now uses '/knowledge-base' instead of '/kb'; double-check that dependent scripts and config files are updated accordingly.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
7. docker-compose.yml:31
  • Draft comment:
    Healthcheck uses activation of venv; ensure the script at '/sc-machine/scripts/healthcheck.py' is accessible in this environment.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
8. docs/changelog.md:11
  • Draft comment:
    Changelog updated with breaking changes; verify that removal of scripts is documented comprehensively.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
9. ostis-web-platform.ini:35
  • Draft comment:
    Updated config keys from 'repo_path' and 'extensions_path' to 'input' and separate settings; ensure these changes match expectations of sc-builder and related components.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
10. repo.path:2
  • Draft comment:
    Renamed directory from 'kb' to 'knowledge-base'; confirm that all references in build scripts and config files are updated.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
11. scripts/install_minimal_submodules.sh:8
  • Draft comment:
    Script now clones submodules without building; ensure that dependent documentation instructs users on manual build steps if needed.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
12. scripts/set_vars.sh:4
  • Draft comment:
    Removed sourcing of module-specific set_vars scripts; confirm that environment variables required for builds are set appropriately in this new consolidated version.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
13. .github/workflows/install.yml:40
  • Draft comment:
    Switched from install_platform.sh to install_submodules.sh. Ensure the new script covers all required steps.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
14. .github/workflows/minimal_install.yml:40
  • Draft comment:
    Updated to call install_minimal_submodules.sh instead of the platform script. Verify minimal install still meets requirements.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
15. LICENSE:3
  • Draft comment:
    License year updated to 2025. Confirm consistency across the project.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
16. README.md:42
  • Draft comment:
    Added '--rm' flag in the docker compose run command for cleaning up the container after execution.
  • Reason this comment was not posted:
    Comment did not seem useful.
17. README.md:77
  • Draft comment:
    Native installation instructions now use install_submodules.sh. Ensure all required clone/build steps are covered.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
18. README.md:88
  • Draft comment:
    Detailed build instructions for sc-machine, scp-machine, sc-component-manager, and sc-web have been added. Verify commands and dependency versions.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
19. README.md:136
  • Draft comment:
    Native run now directly activates the venv and starts the server. Ensure the .venv setup is correct.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
20. docker-compose.yml:3
  • Draft comment:
    Updated the sc-web image tag to 0.9.0; ensure this aligns with the latest release.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
21. docker-compose.yml:18
  • Draft comment:
    Updated sc-machine image to 0.10.0. Verify compatibility with the rest of the build process.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
22. docker-compose.yml:39
  • Draft comment:
    Environment variables and paths updated to reflect a shift to 'knowledge-base' and new build directories. Confirm these paths match the new build layout.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
23. docker-compose.yml:31
  • Draft comment:
    Healthcheck now sources venv before running the script. Verify that '/sc-machine/.venv' exists in the container.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
24. docs/changelog.md:11
  • Draft comment:
    Changelog updated reflecting removal of several build and run scripts. Ensure documentation aligns with the new developer-focused workflow.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
25. ellipsis.yaml:1
  • Draft comment:
    Ellipsis configuration is well defined. No issues detected.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
26. ostis-web-platform.ini:37
  • Draft comment:
    Changed key from 'input_path' to 'input' in the [sc-builder] section. Confirm that sc-builder accepts the new key.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
27. ostis-web-platform.ini:41
  • Draft comment:
    Updated 'knowledge_base_components_path' to 'knowledge-base' to match new repo structure.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
28. repo.path:2
  • Draft comment:
    Directory 'kb' renamed to 'knowledge-base' for consistency with other changes.
  • Reason this comment was not posted:
    Confidence changes required: 0%
    None
29. scripts/install_minimal_submodules.sh:10
  • Draft comment:
    Script now focuses on cloning submodules only; removed build and dependency calls to streamline installation.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None
30. scripts/set_vars.sh:8
  • Draft comment:
    Removed exports for CONFIG_PATH and REPO_PATH and submodule sourcing. Confirm that dependent scripts are updated accordingly.
  • Reason this comment was not posted:
    Confidence changes required: 33%
    None

Workflow ID: wflow_JwRIEPPCZVCAz089


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants