@lambda-lambda-lambda/cli
Advanced tools
+7
-0
@@ -156,1 +156,8 @@ # Changelog | ||
| - Removed hardcoded middleware, fix output | ||
| ## [0.6.6] - 2024-06-06 | ||
| ### Updated | ||
| - Replace use of `appPrefix` w/ `routePrefix` | ||
| - Workaround Docker [remoteUser permissions](https://github.com/microsoft/vscode-remote-release/issues/6834#issuecomment-1158600543) |
@@ -55,3 +55,4 @@ "use strict"; | ||
| cfResourceName: (0, change_case_1.pascalCase)(appConfig.name), | ||
| routePath: ((appConfig.prefix !== '/') ? appConfig.prefix : '') + '/example', | ||
| routePath: '/example', | ||
| routePrefix: ((appConfig.prefix !== '/') ? appConfig.prefix : ''), | ||
| nodeVersion: appConfig.runtime.replace(/[^0-9]/g, '') | ||
@@ -58,0 +59,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"} |
+2
-2
| { | ||
| "name": "@lambda-lambda-lambda/cli", | ||
| "description": "Command-line tool to create a new L³ application.", | ||
| "version": "0.6.5", | ||
| "version": "0.6.6", | ||
| "main": "index.js", | ||
@@ -38,3 +38,3 @@ "types": "types.d.ts", | ||
| "devDependencies": { | ||
| "@lambda-lambda-lambda/types": "^0.0.2", | ||
| "@lambda-lambda-lambda/types": "^0.0.3", | ||
| "@types/node": "^20.12.7", | ||
@@ -41,0 +41,0 @@ "@types/node-fetch": "^2.6.11", |
@@ -21,3 +21,3 @@ 'use strict'; | ||
| // Middleware (order is important). | ||
| // Middleware (in execution order). | ||
| router.use(accessControlHeaders); | ||
@@ -27,6 +27,6 @@ router.use(appConfigPlugin(config)); | ||
| // Send root response. | ||
| // Send root response (prefix path). | ||
| router.get('/', function(req, res) { | ||
| // Redirect to Swagger viewer. | ||
| // Redirect to Swagger UI viewer. | ||
| res.setHeader('Location', `${config.router.prefix}?swagger-ui=html`); | ||
@@ -33,0 +33,0 @@ res.status(301).send(); |
+3
-3
@@ -21,3 +21,3 @@ 'use strict'; | ||
| // Middleware (order is important). | ||
| // Middleware (in execution order). | ||
| router.use(accessControlHeaders); | ||
@@ -27,6 +27,6 @@ router.use(appConfigPlugin(config)); | ||
| // Send root response. | ||
| // Send root response (prefix path). | ||
| router.get('/', function(req, res) { | ||
| // Redirect to Swagger viewer. | ||
| // Redirect to Swagger UI viewer. | ||
| res.setHeader('Location', `${config.router.prefix}?swagger-ui=html`); | ||
@@ -33,0 +33,0 @@ res.status(301).send(); |
| { | ||
| "name": "{{appName}}", | ||
| "build": {"dockerfile": "Dockerfile"}, | ||
| "build": { | ||
| "dockerfile": "Dockerfile", | ||
| "args": { | ||
| "BASE_DIR": "/var/task", | ||
| "USER": "${localEnv:USER}", | ||
| "UID": "${localEnv:UID:1000}" | ||
| //"GROUP": "${localEnv:USER}", | ||
| //"GID": "${localEnv:GID:1000}", | ||
| } | ||
| }, | ||
| "forwardPorts": [3000], | ||
| // Mounting AWS config (Requires container rebuild) | ||
| //"mounts": ["source=${localEnv:HOME}/.aws,target=/root/.aws,type=bind,consistency=cached"], | ||
| "workspaceFolder": "/var/task", | ||
| "workspaceMount": "source=${localWorkspaceFolder},target=/var/task,type=bind", | ||
| "workspaceFolder": "/var/task", | ||
| "containerEnv": { | ||
@@ -13,3 +22,2 @@ "LAMBDA_TASK_ROOT": "${containerWorkspaceFolder}/{{appName}}/src" | ||
| "updateContentCommand": "npm install --prefix ${containerWorkspaceFolder}/{{appName}} >/dev/null", | ||
| "postCreateCommand": "npm install -g pm2", | ||
| "postStartCommand": "pm2 start ${containerWorkspaceFolder}/.devcontainer/ecosystem.config.js", | ||
@@ -16,0 +24,0 @@ "customizations": { |
+21
-1
@@ -9,2 +9,22 @@ # | ||
| RUN dnf install -y gzip tar | ||
| ARG BASE_DIR | ||
| ARG USER | ||
| ARG GROUP=${USER} | ||
| ARG UID | ||
| ARG GID=${UID} | ||
| RUN dnf -y install gcc git gzip libyaml-devel make shadow-utils tar | ||
| # Install app dependencies. | ||
| RUN npm install -g pm2 | ||
| ENV PATH="${PATH}:/usr/sbin" | ||
| # Create shared workspace. | ||
| RUN groupadd -g ${UID} ${USER} | ||
| RUN useradd -u ${UID} -g ${GID} -G root -s /usr/bin/bash -m ${USER} | ||
| RUN chown ${USER}:${GROUP} ${BASE_DIR} | ||
| USER ${USER} | ||
| WORKDIR ${BASE_DIR} |
+13
-3
@@ -17,3 +17,3 @@ # {{appName}} | ||
| In the VS Code _Command Palette_ choose "Open Folder in Container" which will launch your application in a Docker container allowing for realtime development and testing. Once launched, the application can be accessed at [http://localhost:3000{{appPrefix}}](http://localhost:3000{{appPrefix}}) and tested using the [VS Code Swagger Viewer](https://marketplace.visualstudio.com/items?itemName=Arjun.swagger-viewer) (`swagger.json`) | ||
| In the VS Code _Command Palette_ choose "Open Folder in Container" which will launch your application in a Docker container allowing for realtime development and testing. Once launched, the application can be accessed using the [Swagger UI](https://swagger.io/tools/swagger-ui) at [http://localhost:3000{{routePrefix}}](http://localhost:3000{{routePrefix}}) or by using the [VS Code Swagger Viewer](https://marketplace.visualstudio.com/items?itemName=Arjun.swagger-viewer) (`swagger.json`) | ||
@@ -63,6 +63,16 @@ ## Deploying to AWS | ||
| ### Project files are assigned root priviledges | ||
| ### Project files are assigned incorrect priviledges | ||
| This is due to a [bug](https://github.com/microsoft/vscode-remote-release/issues/2402) in the [Remote Container](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) extension, not this project. During the container build process when the local machines's UID/GID matches an existing user UID/GID in the container it assigns `root` by default. Note, in normal circumstances the [`remoteUser`](https://containers.dev/implementors/json_reference/#remoteUser) assigned would be `vscode` which always matches the local machine's user UID/GID values. | ||
| If you experience this when working between local/remote development environments this is due to the user UID [not being present during build time](https://github.com/microsoft/vscode-remote-release/issues/6834#issuecomment-1158600543). In this case the default `1000` is defined as both the UID/GID for the remote user. You can override this behavior by updating the following project `devcontainer.json` build arguments or by exporting the UID/GID in your `.bash_profile`. | ||
| ```json | ||
| "build": { | ||
| "dockerfile": "Dockerfile", | ||
| "args": { | ||
| "UID": "${localEnv:UID:1234}", // Default to 1234 | ||
| "GID": "${localEnv:GID:1234}" | ||
| } | ||
| }, | ||
| ``` | ||
| ## References | ||
@@ -69,0 +79,0 @@ |
@@ -13,3 +13,3 @@ 'use strict'; | ||
| * | ||
| * {{routePath}}: | ||
| * {{routePrefix}}{{routePath}}: | ||
| * get: | ||
@@ -16,0 +16,0 @@ * description: Route description. |
@@ -13,3 +13,3 @@ 'use strict'; | ||
| * | ||
| * {{routePath}}: | ||
| * {{routePrefix}}{{routePath}}: | ||
| * get: | ||
@@ -16,0 +16,0 @@ * description: Route description. |
@@ -18,3 +18,3 @@ { | ||
| "paths": { | ||
| "{{routePath}}": { | ||
| "{{routePrefix}}{{routePath}}": { | ||
| "get": { | ||
@@ -21,0 +21,0 @@ "description": "Route description.", |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 4 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 4 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
58382
1.73%916
0.99%