nuxt-hub / cli Goto Github PK
View Code? Open in Web Editor NEWBuild full-stack Nuxt application with NuxtHub command line interface (CLI).
License: Apache License 2.0
Build full-stack Nuxt application with NuxtHub command line interface (CLI).
License: Apache License 2.0
Based on the current branch so nuxthub open
can open the preview or production url.
We could also support nuxthub open --production
and nuxthub open --preview
Currently when you run nuxthub deploy
it ends up running nuxi build --preset=cloudflare-pages
. It would be helpful to be able to pass other nuxi build
options such as --dotenv .dev.vars
to the build command when running nuxthub deploy
.
A couple of ideas on implementation:
hub
optionhub: {
extraBuildOpts: ['--dotenv .dev.vars']
},
nuxthub
clinuxthub deploy --dotenv .preview.vars
It would be nice to allow users to select deployment like what we have in team selection, this way users can log of different deployments, not just latest one. (this might be helpful in reviewing and debugging PRs.) Currently this is possible in NuxtHub Admin but no in CLI
Another solution is to create and option to pass deploymentId
nuxthub logs --deployment=THE_ID
Using the nuxthub cli (v0.5.10) in a remote docker workspace (coder) I am getting the message "ERROR nuxthub login is not supported in Docker or SSH yet." when trying to run most commands.
I tested manually bypassing the isHeadless() check and all of the commands seemed to work as intended in my remote docker workspace environment.
NuxtHub API fetching to know a build is happening (replacing the modules:done
and build:done
hooks from the module for example).
This will give the possibility to remove the need of having the @nuxthub/core
module to deploy Nuxt projects without the need for storage.
The nuxthub build
command can detect the framework used and run the right build command.
It can also be overwritten with:
npx nuxthub build -c "your build command"
The module will then read from the output directory (default to dist/
) the hub.config.json
file to know the primitives used to check if the build has to be cancelled (https://github.com/nuxt-hub/core/blob/823a6e8839efdb022ff43889c89ab128c833ea3f/src/utils/build.ts#L41-L51), this won't be necessary once we support wrangler.toml
sorry for the title but I do not know how to name this issue
Hello,
I deployed a Nuxt application using the GUI from the NuxtHub Admin. Everything was fine. In order to migrate my database, nuxt-hub/core#100, I run nuxt dev --remote
locally. I got this issue:
[nuxt:hub 10:21:26 PM] ERROR No project URL found, make sure to deploy the project using nuxthub deploy or link your project with nuxthub link or add the deployed URL as NUXT_HUB_PROJECT_URL environment variable (if self-hosted).
So I run npx nuxthub link
and I successfully linked my project. A new env variable have been added.
I try again nuxt dev --remote
but I got a new error:
have been replaced but was correct and set by the previous command
ℹ Linked to https://admin.hub.nuxt.com/barbapapazes/<project> nuxt:hub 10:24:20 PM
ℹ Using production environment nuxt:hub 10:24:20 PM
ℹ Using remote storage from https://<project>.nuxt.dev nuxt:hub 10:24:20 PM
ERROR Failed to fetch remote storage: Project not found. nuxt:hub 10:24:20 PM
Make sure to deploy the project using nuxthub deploy or add the deployed URL as NUXT_HUB_PROJECT_URL environment variable.
So I follow the error and set NUXT_HUB_PROJECT_URL
. I rerun nuxt dev --remote
, and a new error:
[nuxt:hub 10:26:23 PM] ERROR You cannot use both NUXT_HUB_PROJECT_KEY and NUXT_HUB_PROJECT_URL at the same time. Please use only one of them.
So I remove NUXT_HUB_PROJECT_KEY
and now nuxt dev --remote
works fine.
I do not know why it was not working as intended after the npx nuxthub link
🤷♀️
If so, is there any documentation or examples available that demonstrate how to set it up?
Similar to wrangler tails
We should also support the --preview
or --production
option
The first time you run npx nuxthub deploy
the CLI works, but it gets stuck at ⠋ Waiting for DNS to propagate (38s)
.
I tried to deploy a project from scratch twice and both times the CLI got stuck in the same second.
maxi@maxi:~/personal/project$ npx nuxthub deploy --production
NuxtHub CLI 8:26:25 AM
│
◇ Deploy ~/personal/project to NuxtHub?
│ Yes
│
◇ Select a project
│ Create a new project
│
◇ Project name
│ project
│
◇ Select a region for the storage
│ Western Europe
│
◇ Production branch (git)
│ main
✔ Project project created 8:27:45 AM
✔ Connected to onmax team. 8:27:45 AM
✔ Linked to project project. 8:27:45 AM
ℹ Building the Nuxt project... 8:27:45 AM
Nuxt 3.11.2 with Nitro 2.9.6 8:27:45 AM
ℹ Using Nitro server preset: cloudflare-pages 8:27:45 AM
ℹ Building client... 8:27:50 AM
ℹ vite v5.2.10 building for production... 8:27:51 AM
ℹ ✓ 132 modules transformed. 8:27:53 AM
ℹ .nuxt/dist/client/manifest.json 2.65 kB │ gzip: 0.51 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/error-500.BOCRP2Ph.css 1.88 kB │ gzip: 0.72 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/error-404.EzKNKnTL.css 3.56 kB │ gzip: 1.10 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/entry.DwbplpIx.css 32.06 kB │ gzip: 6.27 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/CECyHBGm.js 0.38 kB │ gzip: 0.27 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/DyftLUpp.js 2.77 kB │ gzip: 1.24 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/DzhoZO_q.js 7.41 kB │ gzip: 3.10 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/xkXEaXLr.js 20.81 kB │ gzip: 8.55 kB 8:27:54 AM
ℹ .nuxt/dist/client/_nuxt/r-iXKQ5M.js 150.70 kB │ gzip: 57.25 kB 8:27:54 AM
ℹ ✓ built in 3.60s 8:27:54 AM
✔ Client built in 4626ms 8:27:54 AM
ℹ Building server... 8:27:54 AM
ℹ vite v5.2.10 building SSR bundle for production... 8:27:54 AM
ℹ ✓ 100 modules transformed. 8:27:56 AM
ℹ .nuxt/dist/server/styles.mjs 0.07 kB 8:27:57 AM
ℹ .nuxt/dist/server/_nuxt/vue.f36acd1f-BXTgS32W.js 0.82 kB │ map: 1.81 kB 8:27:57 AM
ℹ .nuxt/dist/server/_nuxt/error-500-BYJWZ-X6.js 4.07 kB │ map: 4.65 kB 8:27:57 AM
ℹ .nuxt/dist/server/_nuxt/multipart-parser-BKZ1fS-w.js 7.35 kB │ map: 10.89 kB 8:27:57 AM
ℹ .nuxt/dist/server/_nuxt/error-404-DbYAhDQX.js 11.74 kB │ map: 21.76 kB 8:27:57 AM
ℹ .nuxt/dist/server/_nuxt/index-yYube4_S.js 39.96 kB │ map: 330.86 kB 8:27:57 AM
ℹ .nuxt/dist/server/server.mjs 220.57 kB │ map: 392.85 kB 8:27:57 AM
ℹ ✓ built in 2.75s 8:27:57 AM
✔ Server built in 2782ms 8:27:57 AM
✔ Generated public dist nitro 8:27:57 AM
ℹ Building Nuxt Nitro server (preset: cloudflare-pages) nitro 8:27:57 AM
✔ Nuxt Nitro server built nitro 8:28:10 AM
├─ dist/_worker.js/chunks/_/auth.mjs (733 B) (433 B gzip)
├─ dist/_worker.js/chunks/_/auth.mjs.map (551 B) (360 B gzip)
├─ dist/_worker.js/chunks/_/blob.mjs (65.6 kB) (20.9 kB gzip)
├─ dist/_worker.js/chunks/_/blob.mjs.map (2.98 kB) (1.15 kB gzip)
├─ dist/_worker.js/chunks/_/database.mjs (1.28 kB) (639 B gzip)
├─ dist/_worker.js/chunks/_/database.mjs.map (792 B) (480 B gzip)
├─ dist/_worker.js/chunks/_/drizzle.mjs (56.7 kB) (14.3 kB gzip)
├─ dist/_worker.js/chunks/_/drizzle.mjs.map (12.6 kB) (3.39 kB gzip)
├─ dist/_worker.js/chunks/_/error-500.mjs (4.82 kB) (2.05 kB gzip)
├─ dist/_worker.js/chunks/_/error-500.mjs.map (358 B) (227 B gzip)
├─ dist/_worker.js/chunks/_/features.mjs (1.28 kB) (512 B gzip)
├─ dist/_worker.js/chunks/_/features.mjs.map (490 B) (317 B gzip)
├─ dist/_worker.js/chunks/_/index.mjs (63.4 kB) (14.2 kB gzip)
├─ dist/_worker.js/chunks/_/index.mjs.map (7.02 kB) (2.73 kB gzip)
├─ dist/_worker.js/chunks/_/kv.mjs (3.36 kB) (1.36 kB gzip)
├─ dist/_worker.js/chunks/_/kv.mjs.map (1.59 kB) (697 B gzip)
├─ dist/_worker.js/chunks/_/pathe.ff20891b.mjs (852 B) (452 B gzip)
├─ dist/_worker.js/chunks/_/pathe.ff20891b.mjs.map (560 B) (357 B gzip)
├─ dist/_worker.js/chunks/build/client.manifest.mjs (2.85 kB) (585 B gzip)
├─ dist/_worker.js/chunks/build/client.manifest.mjs.map (1.15 kB) (426 B gzip)
├─ dist/_worker.js/chunks/build/error-404-DbYAhDQX.mjs (6.42 kB) (2.61 kB gzip)
├─ dist/_worker.js/chunks/build/error-404-DbYAhDQX.mjs.map (5.59 kB) (2.48 kB gzip)
├─ dist/_worker.js/chunks/build/error-500-BYJWZ-X6.mjs (3.13 kB) (1.41 kB gzip)
├─ dist/_worker.js/chunks/build/error-500-BYJWZ-X6.mjs.map (1.24 kB) (675 B gzip)
├─ dist/_worker.js/chunks/build/index-yYube4_S.mjs (20.7 kB) (8.24 kB gzip)
├─ dist/_worker.js/chunks/build/index-yYube4_S.mjs.map (29.5 kB) (11.9 kB gzip)
├─ dist/_worker.js/chunks/build/multipart-parser-BKZ1fS-w.mjs (4.74 kB) (2.04 kB gzip)
├─ dist/_worker.js/chunks/build/multipart-parser-BKZ1fS-w.mjs.map (6.47 kB) (2.65 kB gzip)
├─ dist/_worker.js/chunks/build/server.mjs (179 kB) (53.2 kB gzip)
├─ dist/_worker.js/chunks/build/server.mjs.map (24.1 kB) (8.66 kB gzip)
├─ dist/_worker.js/chunks/build/vue.f36acd1f-BXTgS32W.mjs (387 B) (278 B gzip)
├─ dist/_worker.js/chunks/build/vue.f36acd1f-BXTgS32W.mjs.map (746 B) (434 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.delete.mjs (548 B) (297 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.delete.mjs.map (521 B) (332 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.get.mjs (528 B) (287 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.get.mjs.map (495 B) (323 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.put.mjs (885 B) (477 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/_...pathname_.put.mjs.map (738 B) (439 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/delete.post.mjs (557 B) (299 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/delete.post.mjs.map (496 B) (320 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/head/_...pathname_.get.mjs (467 B) (267 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/blob/head/_...pathname_.get.mjs.map (448 B) (298 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.delete.mjs (435 B) (297 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.delete.mjs.map (517 B) (336 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.get.mjs (2.25 kB) (1.05 kB gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.get.mjs.map (955 B) (534 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.options.mjs (197 B) (164 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/_...key_.options.mjs.map (393 B) (269 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/batch-delete.options.mjs (201 B) (167 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/batch-delete.options.mjs.map (404 B) (270 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/batch-delete.post.mjs (508 B) (314 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/batch-delete.post.mjs.map (581 B) (365 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/clear/_...base_.delete.mjs (525 B) (356 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/clear/_...base_.delete.mjs.map (602 B) (374 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/clear/_...base_.options.mjs (204 B) (164 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/cache/clear/_...base_.options.mjs.map (405 B) (274 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/_command_.post.mjs (1.44 kB) (529 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/_command_.post.mjs.map (736 B) (436 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/query.options.mjs (194 B) (161 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/query.options.mjs.map (387 B) (263 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/query.post.mjs (620 B) (355 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/database/query.post.mjs.map (588 B) (367 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.get.mjs (366 B) (226 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.get.mjs.map (393 B) (268 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.get2.mjs (403 B) (272 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.get2.mjs.map (473 B) (312 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.post.mjs (641 B) (387 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.post.mjs.map (533 B) (341 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.put.mjs (1.08 kB) (581 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/index.put.mjs.map (962 B) (487 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/kv/_...path_.mjs (1.67 kB) (823 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/kv/_...path_.mjs.map (1.07 kB) (579 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/manifest.get.mjs (852 B) (452 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/manifest.get.mjs.map (621 B) (390 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/openapi.get.mjs (437 B) (287 B gzip)
├─ dist/_worker.js/chunks/routes/api/_hub/openapi.get.mjs.map (465 B) (312 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.get.mjs (533 B) (335 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.get.mjs.map (618 B) (344 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.head.mjs (179 B) (158 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.head.mjs.map (363 B) (255 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.post.mjs (422 B) (286 B gzip)
├─ dist/_worker.js/chunks/routes/api/index.post.mjs.map (563 B) (330 B gzip)
├─ dist/_worker.js/chunks/routes/auth/github.get.mjs (17.6 kB) (3.4 kB gzip)
├─ dist/_worker.js/chunks/routes/auth/github.get.mjs.map (3.54 kB) (971 B gzip)
├─ dist/_worker.js/chunks/routes/renderer.mjs (117 kB) (39.7 kB gzip)
├─ dist/_worker.js/chunks/routes/renderer.mjs.map (25.8 kB) (8.76 kB gzip)
├─ dist/_worker.js/chunks/runtime.mjs (132 kB) (39.7 kB gzip)
├─ dist/_worker.js/chunks/runtime.mjs.map (25.3 kB) (8.45 kB gzip)
├─ dist/_worker.js/chunks/runtime2.mjs (1.14 kB) (666 B gzip)
├─ dist/_worker.js/chunks/runtime2.mjs.map (715 B) (427 B gzip)
├─ dist/_worker.js/chunks/virtual/_commonjsHelpers.mjs (206 B) (177 B gzip)
├─ dist/_worker.js/chunks/virtual/_commonjsHelpers.mjs.map (103 B) (103 B gzip)
├─ dist/_worker.js/chunks/virtual/_virtual_spa-template.mjs (85 B) (99 B gzip)
├─ dist/_worker.js/chunks/virtual/_virtual_spa-template.mjs.map (108 B) (108 B gzip)
└─ dist/_worker.js/index.js (140 B) (146 B gzip)
Σ Total size: 865 kB (281 kB gzip)
✔ You can preview this build using npx wrangler pages dev dist/ nitro 8:28:10 AM
✔ You can deploy this build using npx wrangler pages deploy dist/ nitro 8:28:10 AM
✔ Deployed project to production...
⠧ Waiting for DNS to propagate (38s)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.