Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
182 changes: 174 additions & 8 deletions .github/workflows/common-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js cdk-basic
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -84,7 +86,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js cdk-esm
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -131,7 +135,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js sls-basic
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -179,7 +185,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js sls-esbuild-cjs
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -227,7 +235,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js sls-esbuild-esm
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -263,6 +273,156 @@ jobs:
- name: Test - observability mode
run: OBSERVABLE_MODE=true npx vitest --retry 1 test/sls-esbuild-esm.test.ts

test-osls-basic:
runs-on: ubuntu-latest
concurrency:
group: test-osls-basic
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: |
node prepareForTest.js osls-basic
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
with:
name: dist
path: dist
- name: Install lambda-live-debugger globally
if: ${{ inputs.mode == 'global' }}
run: |
npm i lambda-live-debugger -g
npm i [email protected] -g
working-directory: test
- name: Install lambda-live-debugger locally
if: ${{ inputs.mode == 'local' }}
run: |
npm i lambda-live-debugger
working-directory: test
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: eu-west-1
role-to-assume: ${{ secrets.AWS_ROLE }}
role-session-name: GitHubActions
- name: Destroy
run: npm run destroy
working-directory: test/osls-basic
continue-on-error: true
- name: Deploy
run: npm run deploy
working-directory: test/osls-basic
- name: Test
run: npx vitest --retry 1 test/osls-basic.test.ts
- name: Test - observability mode
run: OBSERVABLE_MODE=true npx vitest --retry 1 test/osls-basic.test.ts

test-osls-esbuild-cjs:
runs-on: ubuntu-latest
concurrency:
group: test-osls-esbuild-cjs
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: |
node prepareForTest.js osls-esbuild-cjs
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
with:
name: dist
path: dist
- name: Install lambda-live-debugger globally
if: ${{ inputs.mode == 'global' }}
run: |
npm i lambda-live-debugger -g
npm i [email protected] -g
working-directory: test
- name: Install lambda-live-debugger locally
if: ${{ inputs.mode == 'local' }}
run: |
npm i lambda-live-debugger
working-directory: test
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: eu-west-1
role-to-assume: ${{ secrets.AWS_ROLE }}
role-session-name: GitHubActions
- name: Destroy
run: npm run destroy
working-directory: test/osls-esbuild-cjs
continue-on-error: true
- name: Deploy
run: npm run deploy
working-directory: test/osls-esbuild-cjs
- name: Test
run: npx vitest --retry 1 test/osls-esbuild-cjs.test.ts
- name: Test - observability mode
run: OBSERVABLE_MODE=true npx vitest --retry 1 test/osls-esbuild-cjs.test.ts

test-osls-esbuild-esm:
runs-on: ubuntu-latest
concurrency:
group: test-osls-esbuild-esm
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: |
node prepareForTest.js osls-esbuild-esm
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
with:
name: dist
path: dist
- name: Install lambda-live-debugger globally
if: ${{ inputs.mode == 'global' }}
run: |
npm i lambda-live-debugger -g
npm i [email protected] -g
working-directory: test
- name: Install lambda-live-debugger locally
if: ${{ inputs.mode == 'local' }}
run: |
npm i lambda-live-debugger
working-directory: test
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: eu-west-1
role-to-assume: ${{ secrets.AWS_ROLE }}
role-session-name: GitHubActions
- name: Destroy
run: npm run destroy
working-directory: test/osls-esbuild-esm
continue-on-error: true
- name: Deploy
run: npm run deploy
working-directory: test/osls-esbuild-esm
- name: Test
run: npx vitest --retry 1 test/osls-esbuild-esm.test.ts
- name: Test - observability mode
run: OBSERVABLE_MODE=true npx vitest --retry 1 test/osls-esbuild-esm.test.ts

test-sam-basic:
runs-on: ubuntu-latest
concurrency:
Expand All @@ -279,7 +439,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js sam-basic
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -330,7 +492,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js sam-alt
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down Expand Up @@ -377,7 +541,9 @@ jobs:
node-version: ${{ env.node_version }}
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm ci
run: |
node prepareForTest.js terraform-basic
npm i
- name: Download build artifact
uses: actions/download-artifact@v4
if: ${{ inputs.mode == 'build' }}
Expand Down
60 changes: 60 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,66 @@
"type": "node",
"cwd": "${workspaceRoot}/test/sls-esbuild-esm"
},
{
"name": "LLDebugger - OSLS basic",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts", "--stage=test"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-basic"
},
{
"name": "LLDebugger - OSLS basic - observability",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts", "--stage=test", "-o"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-basic"
},
{
"name": "LLDebugger - OSLS EsBuild CJS",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-esbuild-cjs"
},
{
"name": "LLDebugger - OSLS EsBuild CJS - observability",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts", "-o"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-esbuild-cjs"
},
{
"name": "LLDebugger - OSLS EsBuild ESM",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-esbuild-esm"
},
{
"name": "LLDebugger - OSLS EsBuild ESM - observability",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
"args": ["../../src/lldebugger.ts", "-o"],
"request": "launch",
"skipFiles": ["<node_internals>/**"],
"console": "integratedTerminal",
"type": "node",
"cwd": "${workspaceRoot}/test/osls-esbuild-esm"
},
{
"name": "LLDebugger - SAM basic",
"program": "${workspaceRoot}/node_modules/tsx/dist/cli.mjs",
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This tool offers similar functionality to [SST](https://sst.dev/) and [Serverles
It supports the following frameworks:

- AWS CDK v2
- Serverless Framework v3 (SLS)
- Serverless Framework v3 (SLS) and [`osls` fork](https://github.com/oss-serverless/serverless)
- AWS Serverless Application Model (SAM)
- Terraform
- Any other framework or setup by implementing a simple function in TypeScript
Expand Down
Loading
Loading