NodeBB Assets - Object Storage
Unsolved
Technical Support
-
@razibal So I need that plugin in NodeBB also?
Presently, I get
NoSuchBucket: The specified bucket does not exist. at de_NoSuchBucketRes (/home/sudonix.dev/nodebb/node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js:6053:23) at de_ListObjectsV2CommandError (/home/sudonix.dev/nodebb/node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js:5083:25) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-serde/dist-cjs/deserializerMiddleware.js:7:24 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-signing/dist-cjs/middleware.js:14:20 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-retry/dist-cjs/retryMiddleware.js:27:46 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js:7:26 at async S3SyncClient.listBucketObjects (/home/sudonix.dev/nodebb/node_modules/s3-sync-client/lib/commands/list-bucket-objects.js:12:20) at async Promise.all (index 1) at async S3SyncClient.bucketWithLocal (/home/sudonix.dev/nodebb/node_modules/s3-sync-client/lib/commands/bucket-with-local.js:22:44) { '$fault': 'client', '$metadata': { httpStatusCode: 404, requestId: undefined, extendedRequestId: undefined, cfId: undefined, attempts: 1, totalRetryDelay: 0 }, Code: 'NoSuchBucket' }
-
@razibal Ok, I'm almost there...
Getting this in the console (even though access is permitted)
AccessDenied: Access Denied at throwDefaultError (/home/sudonix.dev/nodebb/node_modules/@aws-sdk/smithy-client/dist-cjs/default-error-handler.js:8:22) at /home/sudonix.dev/nodebb/node_modules/@aws-sdk/smithy-client/dist-cjs/default-error-handler.js:18:39 at de_PutObjectCommandError (/home/sudonix.dev/nodebb/node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js:5701:12) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-serde/dist-cjs/deserializerMiddleware.js:7:24 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-signing/dist-cjs/middleware.js:14:20 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-retry/dist-cjs/retryMiddleware.js:27:46 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js:58:20 at async /home/sudonix.dev/nodebb/node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js:7:26 at async LocalObject.uploadObject (/home/sudonix.dev/nodebb/node_modules/s3-sync-client/lib/sync-objects/local-object.js:55:9) { '$fault': 'client', '$metadata': { httpStatusCode: 403, requestId: undefined, extendedRequestId: undefined, cfId: undefined, attempts: 1, totalRetryDelay: 0 }, Code: 'AccessDenied' }
EDIT: Got it
-
@razibal Assets such as avatars, some font-awesome icons.
Some examples
failed to load resource: the server responded with a status of 404 () fa-brands-400.woff2:1 Failed to load resource: the server responded with a status of 404 () /assets/uploads/profile/55-profileavatar-1661514770650.png:1 Failed to load resource: the server responded with a status of 404 () /assets/uploads/profile/1-profileavatar-1654009436557.png:1 Failed to load resource: the server responded with a status of 404 () /assets/uploads/profile/40-profileavatar-1649005649588.jpeg:1 Failed to load resource: the server responded with a status of 404 () /assets/images/blank-profile-pic-progressive.jpeg:1 Failed to load resource: the server responded with a status of 404 () /assets/uploads/profile/31-profileavatar-1642760955052.jpeg:1 Failed to load resource: the server responded with a status of 404 () fa-regular-400.ttf:1 Failed to load resource: the server responded with a status of 404 () fa-brands-400.ttf:1 Failed to load resource: the server responded with a status of 404 () nodebb.min.js?v=53dqct16ks2:5 Uncaught (in promise) TypeError: app.alert is not a function
EDIT - doesn't look like it's pulling in subdirectories - just the root of
assets
-
@razibal Looks promising on script execute
upload: build/public/admin.min.js to s3://nodebb-dev2/assets/admin.min.js upload: build/public/nodebb.min.js to s3://nodebb-dev2/assets/nodebb.min.js upload: build/public/plugins/nodebb-plugin-ns-embed/js/acp.js to s3://nodebb-dev2/assets/plugins/nodebb-plugin-ns-embed/js/acp.js upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-900-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-900-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-900-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-900-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-cyrillic-ext-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-900-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-900-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-greek-ext-900-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-greek-ext-900-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-900-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-900-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-300-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-100-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-100-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-latin-ext-800-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-latin-ext-800-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-200-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-200-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-400-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-400-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-500-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-500-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-700-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-700-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-600-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-600-normal.woff upload: build/public/plugins/nodebb-theme-harmony/inter/inter-vietnamese-300-normal.woff to s3://nodebb-dev2/assets/plugins/nodebb-theme-harmony/inter/inter-vietnamese-300-normal.woff
However, the bucket itself remains the same.
-
aws s3api list-objects-v2 --endpoint-url https://[account].r2.cloudflarestorage.com --bucket nodebb-dev3 | more
{ "Contents": [ { "Key": "assets/acp.min.js.map", "LastModified": "2023-05-17T14:37:46.508Z", "ETag": "\"30d96ca6de60c70d482689de4f656784\"", "Size": 2115263, "StorageClass": "STANDARD" }, { "Key": "assets/acp.min.js", "LastModified": "2023-05-17T14:37:46.182Z", "ETag": "\"ac03fc028d895314c458a64783a5d2df\"", "Size": 617833, "StorageClass": "STANDARD" },
-
{ "Contents": [ { "Key": "assets/03371bf1d5cbb1eab58e3a0130d1e9c2.js", "LastModified": "2023-05-17T17:37:30.453Z", "ETag": "\"733f46933105eaf011a37d00a964aa39\"", "Size": 502502, "StorageClass": "STANDARD" }, { "Key": "assets/10822.4553fc0a94f5e4017c9e.min.js", "LastModified": "2023-05-17T17:37:29.881Z", "ETag": "\"e825b3003d09c6acaef0960484c1cd43\"", "Size": 742, "StorageClass": "STANDARD" }, { "Key": "assets/10943.83723e39cc9dae85e2e7.min.js", "LastModified": "2023-05-17T17:37:29.880Z", "ETag": "\"a14d728a69056d99f40de4e9d009c14f\"", "Size": 1149, "StorageClass": "STANDARD" }, { "Key": "assets/11307.fd4abf5601dce6fcfaf8.min.js", "LastModified": "2023-05-17T17:37:30.211Z", "ETag": "\"b81d4a241111819396108c44b1932acc\"", "Size": 327, "StorageClass": "STANDARD" }, { "Key": "assets/11393.036b406d0bb56dc3b1c4.min.js",
A lot more output here, but I think you get the picture.
It looks like everything is being minified into single files?
Copyright © 2024 NodeBB | Contributors