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

ci: rework publish job to use bundlr+ARNS to host code on Arweave subdomain #19

Open
TillaTheHun0 opened this issue May 11, 2023 · 5 comments
Labels
bug Something isn't working enhancement New feature or request

Comments

@TillaTheHun0
Copy link
Member

Have tried swapping to a fork, eggy, but am running into some issues. Will need to investigate further.

@TillaTheHun0 TillaTheHun0 added the bug Something isn't working label May 11, 2023
@TillaTheHun0 TillaTheHun0 moved this to 📋 Backlog in Public Board May 11, 2023
@TillaTheHun0 TillaTheHun0 self-assigned this May 11, 2023
@TillaTheHun0 TillaTheHun0 moved this from 📋 Backlog to 🏗 In progress in Public Board May 11, 2023
@TillaTheHun0
Copy link
Member Author

Waiting on a response on this issue deno911/eggs#8

@TillaTheHun0
Copy link
Member Author

Ultimately, we just want our code up on Arweave.

Another approach may be to just use bundlr to upload onto Arweave and then use g8way.io and Path Manifests to import directly from Arweave with no proxy service like nest.land being required.

@twilson63
Copy link
Contributor

Yep, happy to help there

@TillaTheHun0
Copy link
Member Author

TillaTheHun0 commented May 17, 2023

Currently with nest.land we import from https://x.nest.land/{module_name}@{version}/mod.js which redirects to an Arweave transaction like https://arweave.net/afjNOdumqZhfVMIjRw_8fCYZoecSB6XtHGZpNNUNIr8/mod.js

With nothing else, if we go directly to Arweave using g8way.io, we lose visibility into the module_name and version. We need a user friendly domain that identifies the module name and version and then use that to import from in Deno. For that, we could use https://ar.io/arns

We already own the hyper Subdomain on hyper.g8way.io, so by "registering" subdomains like adapter-sqlite-1.2.3_hyper that point to the transaction that contains the source code, we could have user-friendly urls to import from like import cache from https://adapter-sqlite-1.2.3_hyper.g8way.io/mod.js

This is still all vanilla Arweave and SmartContracts

@TillaTheHun0
Copy link
Member Author

TillaTheHun0 commented May 17, 2023

So to deploy CI could run a script, ran on new git tags, that:

  • run bundlr.uploadFolder being sure to omit any secrets files that were injected into CI (currently none)
    • maybe could set mod.js as the indexFile
  • run setRecord for hyper ANT contract using the kebab-case of the package name+semver ie. adapter-sqlite-1.2.3, pointing to the transaction id of the manifest file generated by bundlr.uploadFolder.

A separate manual task once this is done

  • Update README with new import url schema ie. import cache from https://adapter-sqlite-{semver}_hyper.g8way.io/mod.js

@TillaTheHun0 TillaTheHun0 changed the title ci: eggs CLI is not working for Deno > 1.25 ci: rework publish job to use bundlr+ARNS to host code on Arweave subdomain May 19, 2023
@TillaTheHun0 TillaTheHun0 added the enhancement New feature or request label May 19, 2023
@TillaTheHun0 TillaTheHun0 moved this from 🏗 In progress to 📋 Backlog in Public Board May 24, 2023
@TillaTheHun0 TillaTheHun0 removed their assignment Jun 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
Status: 📋 Backlog
Development

No branches or pull requests

2 participants