Add a small Rust CLI tool to the quickstart image for non-trivial startup logic
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start by reviewing the quickstart image's startup scripts and the discussion in PR #841. Scope the first implementation around computing the native asset contract address from a network ID using the low-level stellar-xdr and stellar-strkey crates; done means the CLI is shipped in the image and replaces the brittle configuration setup.
Written by the indexing model from the issue text.
Description
What problem does your feature solve?
The quickstart image startup scripts use shell tools like jq, stellar-xdr, and stellar-strkey to perform tasks such as computing the native asset contract address and (in the future) deploying the native asset contract for local networks (#555). As more logic is added to these scripts, they become increasingly brittle and hard to maintain.
Context: https://github.com/stellar/quickstart/pull/841#issuecomment-3710247435
What would you like to see?
A small Rust CLI application that lives in the quickstart image and handles any logic that is not trivial enough to live in a shell script. It would:
- Stay low level and minimal
- Depend only on very low level components released early as part of stellar-core (e.g.
stellar-xdrcrate,stellar-strkeycrate) - Compute the native asset contract address given a network ID
- Eventually submit a transaction to deploy the native asset contract for local networks (#555)
- Replace the current config setup that is very brittle
The intent is for this tool to be easy to update quickly when a new stellar-core is released, or even when working with an unreleased stellar-core using new XDR definitions.
What alternatives are there?
- Continue using shell scripts: Combine
jq,stellar-xdr,stellar-strkey, and other CLI tools in bash. This works but becomes brittle as more complex logic is added. - Ship stellar-cli with quickstart: This would provide the needed functionality but stellar-cli is much further downstream, making it harder for quickstart to quickly adopt a just-released or unreleased stellar-core.
- Dominant language
- Shell
- Stars
- 222
- Forks
- 236
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 12
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from stellar/quickstart
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
stellar/quickstart#932 · 16 comments · 2 reactions ·
-
Difficulty 4/5 3-5 days Newbie friendliness 58/100
stellar/quickstart#923 · 2 comments ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 35/100
stellar/quickstart#911 · 2 comments ·
-
feature request
Difficulty 5/5 Over a week Newbie friendliness 35/100
stellar/quickstart#907 · 1 comment ·
-
feature request
Difficulty 3/5 1-2 days Newbie friendliness 48/100
stellar/quickstart#900 · 2 comments ·
All issues in stellar/quickstart
Similar issues
-
Update Vish to 1.1.5 Openpackage-update
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
oSoWoSo/vOid_Community_repOsitory#144 · 1 comment ·
-
help wanted new command
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
tldr-pages/tldr#24151 ·
-
PacReq: Rune IDE Openpackage request
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
pacstall/pacstall-programs#9402 ·
-
[BUG] ci: the first prefetch-images.sh call runs before shard.txt exists, so it is always a no-op Openbug github-actions
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
update-request
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
msys2/MINGW-packages#31768 ·