[PR #136] [MERGED] docs: Add development docs #692

Closed
opened 2025-10-31 15:18:41 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/moghtech/komodo/pull/136
Author: @FoxxMD
Created: 10/17/2024
Status: Merged
Merged: 10/22/2024
Merged by: @mbecker20

Base: mainHead: developmentDocs


📝 Commits (9)

  • 43cac82 docs: Add development POC
  • abffa8d docs: Flesh out full build/run steps
  • c2ec996 feat: Add mergeable compose file to expose port and internal periphery url
  • ad0da76 feat: Add .devcontainer and VSCode Tasks for developing Komodo
  • eb400f8 Make cargo cache persistent in devcontainer
  • bebc0e2 Add deno to devcontainer
  • 51b0aaf Update tasks to include TS client copy to frontend before run
  • e1f5214 Recommend extensions for used dependencies in vscode workspace
  • a6952ce Update local run sequence for development docs

📊 Changes

9 files changed (+333 additions, -0 deletions)

View changed files

.devcontainer/dev.compose.yaml (+33 -0)
.devcontainer/devcontainer.json (+46 -0)
.devcontainer/postCreate.sh (+3 -0)
.vscode/extensions.json (+8 -0)
.vscode/tasks.json (+179 -0)
docsite/docs/development.md (+51 -0)
📝 docsite/sidebars.ts (+1 -0)
expose.compose.yaml (+6 -0)
📝 runfile.toml (+6 -0)

📄 Description

This is a WIP for a jumping off point for users trying to develop or contribute to Komodo. The doc I've added is missing a few things and I had a few questions about dependencies and modifying test files:

  • cargo build with rust stable fails

On my machine (Arch kernel 6.10.9) Trying to run cargo build with Rust 1.81 (stable) I get a build error:

error: package `aws-sdk-sso v1.45.0` cannot be built because it requires rustc 1.78.0 or newer, while the currently active rustc version is 1.75.0
Either upgrade to rustc 1.78.0 or newer, or use
cargo update aws-sdk-sso@1.45.0 --precise ver
where `ver` is the latest version of `aws-sdk-sso` supporting rustc 1.75.0

Are you developing with nightly/unstable Rust? I did not see anything specific in the repo about what Rust version is required.

  • UI port for docker testing/development

There is no port exposed in test.compose.yaml. I imagine this is because it is currently used just to test that the container starts up without error? And exposing the default port might conflict with your existing local (non-docker) instance or something else happening on the komodo build runner.

Easiest change would be to just expose the port but another option would be to use a service profile and add an additional core-ui service with exposed port. This would allow existing behavior to be unchanged but users could run docker compose -p komodo-dev -f test.compose.yaml --profile ui up -d to get the service with the port exposed. This would make testing docker builds for UI changes easier without any manual editing of compose files on the users part. Thoughts?

  • Order and run requirements for komodo

In the Local and Docs section it lists the run commands required to get a full Komodo instance up and running. Is the order of these commands correct?

If a user only wants to develop for one part of Komodo (lets say core) can they simply re-build/run one part while leaving everything else up? If so, what are the correct commands/order to rebuild/run for each of these:

  • core
  • periphery
  • core/periphery
  • frontend
  • vscode tasks.json

I realize you are using runnables-cli but since the repo is configured for vscode already you would consider also supporting tasks.json to mirror runfile.toml so users don't need to install another dependency? If so I can try to get this implemented with the current runfile.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/moghtech/komodo/pull/136 **Author:** [@FoxxMD](https://github.com/FoxxMD) **Created:** 10/17/2024 **Status:** ✅ Merged **Merged:** 10/22/2024 **Merged by:** [@mbecker20](https://github.com/mbecker20) **Base:** `main` ← **Head:** `developmentDocs` --- ### 📝 Commits (9) - [`43cac82`](https://github.com/moghtech/komodo/commit/43cac828210c7dd414de38e1dcd5fed5defa1cf8) docs: Add development POC - [`abffa8d`](https://github.com/moghtech/komodo/commit/abffa8dfd37910e7d06ba5ddec9978728c722cbd) docs: Flesh out full build/run steps - [`c2ec996`](https://github.com/moghtech/komodo/commit/c2ec9965d3a31ae6bf02346a2c5aaf62f4ccc875) feat: Add mergeable compose file to expose port and internal periphery url - [`ad0da76`](https://github.com/moghtech/komodo/commit/ad0da76a6e69b172f15dd5b6d4e534214b638656) feat: Add .devcontainer and VSCode Tasks for developing Komodo - [`eb400f8`](https://github.com/moghtech/komodo/commit/eb400f834cb1ce8bdd645bf0c54d6b2f805e25f5) Make cargo cache persistent in devcontainer - [`bebc0e2`](https://github.com/moghtech/komodo/commit/bebc0e23f8f1f303d3de9c42b8642c25ee9f73c5) Add deno to devcontainer - [`51b0aaf`](https://github.com/moghtech/komodo/commit/51b0aaf331e46b27f374cf870506ef3c06592edc) Update tasks to include TS client copy to frontend before run - [`e1f5214`](https://github.com/moghtech/komodo/commit/e1f5214c621e654b1810e070af88cb581c860c91) Recommend extensions for used dependencies in vscode workspace - [`a6952ce`](https://github.com/moghtech/komodo/commit/a6952ce66442d36e5e6f95c9cfef8ed6ea7c5e80) Update local `run` sequence for development docs ### 📊 Changes **9 files changed** (+333 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `.devcontainer/dev.compose.yaml` (+33 -0) ➕ `.devcontainer/devcontainer.json` (+46 -0) ➕ `.devcontainer/postCreate.sh` (+3 -0) ➕ `.vscode/extensions.json` (+8 -0) ➕ `.vscode/tasks.json` (+179 -0) ➕ `docsite/docs/development.md` (+51 -0) 📝 `docsite/sidebars.ts` (+1 -0) ➕ `expose.compose.yaml` (+6 -0) 📝 `runfile.toml` (+6 -0) </details> ### 📄 Description This is a WIP for a jumping off point for users trying to develop or contribute to Komodo. The doc I've added is missing a few things and I had a few questions about dependencies and modifying test files: - [x] `cargo build` with rust stable fails On my machine (Arch kernel 6.10.9) Trying to run `cargo build` with Rust 1.81 (stable) I get a build error: ``` error: package `aws-sdk-sso v1.45.0` cannot be built because it requires rustc 1.78.0 or newer, while the currently active rustc version is 1.75.0 Either upgrade to rustc 1.78.0 or newer, or use cargo update aws-sdk-sso@1.45.0 --precise ver where `ver` is the latest version of `aws-sdk-sso` supporting rustc 1.75.0 ``` Are you developing with nightly/unstable Rust? I did not see anything specific in the repo about what Rust version is required. - [x] UI port for docker testing/development There is no port exposed in [`test.compose.yaml`](https://github.com/FoxxMD/komodo/blob/0dcffbe9a979055e56c3111dc63734b66f37d278/test.compose.yaml). I imagine this is because it is currently used just to test that the container starts up without error? And exposing the default port might conflict with your existing local (non-docker) instance or something else happening on the komodo build runner. Easiest change would be to just expose the port but another option would be to use a [service profile](https://docs.docker.com/compose/how-tos/profiles/) and add an additional `core-ui` service with exposed port. This would allow existing behavior to be unchanged but users could run `docker compose -p komodo-dev -f test.compose.yaml --profile ui up -d` to get the service with the port exposed. This would make testing docker builds for UI changes easier without any manual editing of compose files on the users part. Thoughts? - [x] Order and run requirements for komodo In the **Local and Docs** section it lists the `run` commands required to get a full Komodo instance up and running. Is the order of these commands correct? If a user only wants to develop for one part of Komodo (lets say core) can they simply re-build/run one part while leaving everything else up? If so, what are the correct commands/order to rebuild/run for each of these: * core * periphery * core/periphery * frontend - [x] vscode `tasks.json` I realize you are using `runnables-cli` but since the repo is configured for vscode already you would consider also supporting [`tasks.json`](https://code.visualstudio.com/Docs/editor/tasks) to mirror `runfile.toml` so users don't need to install another dependency? If so I can try to get this implemented with the current runfile. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the
pull-request
label 2025-10-31 15:18:41 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/komodo#692
No description provided.