Skip to content

Commit bcd1514

Browse files
authored
Release v6.2.1 into Main
2 parents 5bc9772 + bb63a27 commit bcd1514

100 files changed

Lines changed: 3023 additions & 1326 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/code.publish.yml

Lines changed: 68 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,19 @@
1-
name: Publish LISA NPM Package
1+
name: Publish LISA Packages
22
on:
33
release:
44
types: [released]
5+
workflow_dispatch:
6+
inputs:
7+
test_mode:
8+
description: 'Test mode (skips npm publish and release upload)'
9+
required: false
10+
type: boolean
11+
default: true
12+
version:
13+
description: 'Version tag for testing'
14+
required: false
15+
type: string
16+
default: 'test-v0.0.0'
517

618
permissions:
719
contents: read # Default read-only
@@ -10,19 +22,64 @@ jobs:
1022
PublishLISA:
1123
runs-on: ubuntu-latest
1224
permissions:
13-
contents: read
14-
packages: write # Required for npm package publishing
25+
contents: write # Required for uploading release assets
26+
id-token: write # Required for npm trusted publishing (OIDC)
1527
steps:
1628
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v4
17-
# Setup .npmrc file to publish to GitHub Packages
29+
# Setup .npmrc file to publish to NpmJs Packages
1830
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v4
1931
with:
2032
node-version: '24.x'
21-
registry-url: 'https://npm.pkg.github.com'
33+
registry-url: 'https://registry.npmjs.org'
34+
35+
# Setup Python for build scripts
36+
- uses: actions/setup-python@v5
37+
with:
38+
python-version: '3.13'
39+
40+
# Install npm dependencies and publish package. Auth is established with NpmJs Trusted publishing.
41+
# To update, modify package at https://www.npmjs.com/package/awslabs-lisa/access
42+
# More info: https://docs.npmjs.com/trusted-publishers
2243
- run: npm ci
23-
- run: npm publish
44+
- name: Publish NPM Package
45+
if: github.event_name == 'release' || !inputs.test_mode
46+
run: npm publish
47+
- name: Publish NPM Package (Dry Run)
48+
if: github.event_name == 'workflow_dispatch' && inputs.test_mode
49+
run: npm publish --dry-run
50+
51+
# Build binary assets (lambda layers and container images)
52+
- name: Build Lambda Layers and Container Images
53+
run: |
54+
# Create build directory for lambda layers
55+
mkdir -p build
56+
57+
# Build assets (runs build-lambdas and build-images --export)
58+
./bin/build-assets
2459
env:
25-
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60+
PYPI_URL: https://pypi.org/simple
61+
LISA_VERSION: ${{ github.event_name == 'release' && github.event.release.tag_name || inputs.version }}
62+
63+
# Upload binary assets to GitHub Release
64+
- name: Upload Release Assets
65+
if: github.event_name == 'release' || !inputs.test_mode
66+
uses: softprops/action-gh-release@v2
67+
with:
68+
files: |
69+
dist/layers/*.zip
70+
dist/images/*.tar
71+
env:
72+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
73+
74+
# In test mode, just list what would be uploaded
75+
- name: List Build Artifacts (Test Mode)
76+
if: github.event_name == 'workflow_dispatch' && inputs.test_mode
77+
run: |
78+
echo "=== Lambda Layers (dist/layers/*.zip) ==="
79+
ls -lh dist/layers/*.zip 2>/dev/null || echo "No zip files found"
80+
echo ""
81+
echo "=== Container Images (dist/images/*.tar) ==="
82+
ls -lh dist/images/*.tar 2>/dev/null || echo "No tar files found"
2683
2784
SendSlackNotification:
2885
name: Send Slack Notification
@@ -37,9 +94,9 @@ jobs:
3794
env:
3895
SLACK_WEBHOOK: ${{ secrets.INTERNAL_DEV_SLACK_WEBHOOK_URL }}
3996
SLACK_COLOR: ${{ contains(join(needs.*.result, ' '), 'failure') && 'failure' || 'success' }}
40-
SLACK_TITLE: 'NPM Package Published'
97+
SLACK_TITLE: 'LISA Package Published'
4198
SLACK_FOOTER: ''
4299
MSG_MINIMAL: 'actions url,commit'
43-
SLACK_MESSAGE_ON_FAILURE: '<!here> NPM Package publish FAILED for version ${{ github.event.pull_request.head.ref }}|commit>'
44-
SLACK_MESSAGE_ON_SUCCESS: 'NPM Package published SUCCESS for ${{ github.event.pull_request.head.ref }}|commit>.'
45-
SLACK_MESSAGE: 'NPM Publish Finished with status ${{ job.status }} for <${{ github.event.pull_request.head.ref }}|commit>'
100+
SLACK_MESSAGE_ON_FAILURE: '<!here> LISA Package publish FAILED for version ${{ github.event.release.tag_name }}'
101+
SLACK_MESSAGE_ON_SUCCESS: 'LISA Package published SUCCESS for version ${{ github.event.release.tag_name }} with NPM package and binary assets.'
102+
SLACK_MESSAGE: 'LISA Publish Finished with status ${{ job.status }} for version ${{ github.event.release.tag_name }}'

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,3 +58,4 @@ config-generated.yaml
5858

5959
# Cypress local environment
6060
/cypress/.env.local
61+
.npmrc

.npmignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ lib/**/dist/
1414
lib/**/build/
1515
!/dist/
1616
!/dist/**/node_modules
17+
/dist/images
1718

1819
# Non-source files
1920
.eslintrc.json

CHANGELOG.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
# v6.2.1
2+
3+
## Bug Fixes
4+
- Removed FastAPI import from auth handler preventing lambdas without FastAPI in the layer dependencies from working
5+
- Updated Session model to account for session configuration data types to allow resuming old stored sessions
6+
- Made exception handling more uniform and consistent across the application
7+
8+
## UI Updates
9+
- Cleaned up the MCP approval modal
10+
- Removed borders around all tables for a consistent theme across the UI
11+
- Added markdown preview toggle to prompt input
12+
- Moved delete all sessions button under user profile and added back the refresh button to session panel
13+
14+
## Documentation Updates
15+
- Cleared up the vLLM variables LISA supports
16+
- Updated deployment guide to account for new cognito updates
17+
18+
## Acknowledgements
19+
* @bedanley
20+
* @Ernest-Gray
21+
* @estohlmann
22+
* @jmharold
23+
24+
**Full Changelog**: https://github.com/awslabs/LISA/compare/v6.2.0..v6.2.1
25+
126
# v6.2.0
227

328
## Key Features
@@ -20,7 +45,7 @@ LISA supports video generation.
2045
### Interactive Configuration Generator CLI
2146
LISA offers an interactive CLI tool that guides customers through creating a valid `config-custom.yaml` file for deployment. Instead of manually editing YAML and referencing `example_config.yaml`, customers can now run:
2247

23-
> @awslabs/lisa@6.2.0 generate-config
48+
> awslabs-lisa@6.2.0 generate-config
2449
> tsx scripts/generate-config.ts
2550
2651
╔════════════════════════════════════════════════════════════════╗

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6.2.0
1+
6.2.1

bin/build-assets

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,30 @@
22
set -e
33

44
ROOT=$(pwd)
5+
LAYER_DIR=$ROOT/dist/layers
6+
IMAGE_DIR=$ROOT/dist/images
57

6-
./bin/build-lambdas
8+
# Default PYPI_URL if not set
9+
export PYPI_URL=${PYPI_URL:-"https://pypi.org/simple"}
10+
export OUTPUT_DIR=$LAYER_DIR
11+
export IMAGE_DIR
12+
13+
echo "Building all assets..."
14+
15+
# Build Lambda layers (Python and Node.js)
16+
echo "Building Lambda Layers..."
17+
./bin/build-lambda-layers
18+
19+
# Build Lambda function (no dependencies, uses layers)
20+
echo "Building Lambda function..."
21+
cd lambda
22+
$ROOT/bin/package-lambda --src . --output "Lambda.zip" --pypi "$PYPI_URL"
23+
mv ./build/Lambda.zip "$LAYER_DIR/"
24+
rm -rf ./build
25+
cd "$ROOT"
26+
27+
# Build and export container images
28+
echo "Building Image exports..."
729
./bin/build-images --export
30+
31+
echo "All assets built successfully!"

bin/build-images

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
set -e
44

55
ROOT=$(pwd)
6-
OUTPUT_DIR=$ROOT/dist/images
6+
OUTPUT_DIR=${IMAGE_DIR:-$ROOT/dist/images}
77

88
# Container runtime: Use CDK_DOCKER env var (same as CDK), default to docker
99
DOCKER_CMD="${CDK_DOCKER:-docker}"

bin/build-lambda-layers

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
#!/bin/bash
2+
set -e
3+
4+
ROOT=$(pwd)
5+
OUTPUT_DIR=${OUTPUT_DIR:-$ROOT/dist/layers}
6+
mkdir -p $OUTPUT_DIR
7+
8+
# Default PYPI_URL if not set
9+
PYPI_URL=${PYPI_URL:-"https://pypi.org/simple"}
10+
11+
# Define associative array for package name and source mapping
12+
declare -A LAMBDA_LAYERS
13+
LAMBDA_LAYERS["CommonLayer"]="./lib/core/layers/common"
14+
LAMBDA_LAYERS["AuthLayer"]="./lib/core/layers/authorizer"
15+
LAMBDA_LAYERS["FastApiLayer"]="./lib/core/layers/fastapi"
16+
LAMBDA_LAYERS["Rag"]="./lib/rag/layer"
17+
LAMBDA_LAYERS["Sdk"]="./lisa-sdk"
18+
19+
echo "Building Python Lambda Layers..."
20+
for package_name in "${!LAMBDA_LAYERS[@]}"; do
21+
source_path=${LAMBDA_LAYERS[$package_name]}
22+
echo "Building Lambda Layer $package_name from $source_path..."
23+
24+
# Use package-lambda utility with --layer flag (output is relative to source)
25+
cd "$source_path"
26+
$ROOT/bin/package-lambda --src . --output "$package_name.zip" --pypi "$PYPI_URL" --layer
27+
# Move the built zip to the output directory
28+
mv "./build/$package_name.zip" "$OUTPUT_DIR/"
29+
rm -rf ./build
30+
cd "$ROOT"
31+
done
32+
33+
# Build Node.js CDK Layer
34+
build_node_layer() {
35+
local package_name=$1
36+
local source_path=$2
37+
echo "Building Node.js Lambda Layer $package_name from $source_path..."
38+
39+
cd "$source_path"
40+
41+
# Clean previous build
42+
rm -rf build node_modules
43+
44+
# Create layer structure: nodejs/node_modules
45+
mkdir -p build/nodejs
46+
47+
# Copy package.json and install production dependencies
48+
cp package.json build/nodejs/
49+
cd build/nodejs
50+
npm install --omit=dev --production
51+
cd ../..
52+
53+
# Create zip
54+
cd build
55+
zip -r "$package_name.zip" nodejs
56+
mv "$package_name.zip" $OUTPUT_DIR/
57+
cd ..
58+
rm -rf build
59+
cd $ROOT
60+
}
61+
62+
echo "Building Node.js Lambda Layers..."
63+
build_node_layer "CdkLayer" "./lib/core/layers/cdk"
64+
65+
echo "All Lambda layers built successfully in $OUTPUT_DIR!"
File renamed without changes.

0 commit comments

Comments
 (0)