|
33 | 33 | - _Requirements: 4.1, 4.4_ |
34 | 34 |
|
35 | 35 | - [x] 2.2 Create workshop sync script |
36 | | - - Create infra/scripts/cfn/sync.sh that copies workshop-template.yaml to workshop directories as {workshop}-stack.yaml |
37 | | - - Include iam-policy.json copying from cdk/src/main/resources/ directory to workshop static/ directories |
38 | | - - Implement directory existence checking and error reporting |
39 | | - - Support workshop list: ide, java-on-aws, java-on-eks, java-ai-agents, java-spring-ai-agents |
| 36 | + - Create infra/scripts/cfn/sync.sh that copies cfn/{workshop}-stack.yaml → workshop-stack.yaml ✅ |
| 37 | + - Copy workshop-specific IAM policies (iam-policy-{workshop}.json → iam-policy.json) ✅ |
| 38 | + - Target files use static names: workshop-stack.yaml and iam-policy.json ✅ |
| 39 | + - Implement directory existence checking and error reporting ✅ |
| 40 | + - Support workshop list: ide, java-on-aws-immersion-day, java-on-amazon-eks, java-ai-agents, java-spring-ai-agents ✅ |
40 | 41 | - _Requirements: 4.2, 4.5_ |
41 | 42 |
|
42 | 43 | - [x] 2.3 Set up build automation |
43 | | - - Create infra/package.json with generate and sync npm scripts |
44 | | - - Make scripts executable and test npm run generate && npm run sync workflow |
45 | | - - Validate that generated templates are copied to correct locations with proper naming |
46 | | - - Copy existing iam-policy.json to infra/cdk/src/main/resources/ for single source of truth |
| 44 | + - Create infra/package.json with generate and sync npm scripts ✅ |
| 45 | + - Make scripts executable and test npm run generate && npm run sync workflow ✅ |
| 46 | + - Validate that generated templates are copied to correct locations with proper naming ✅ |
| 47 | + - Workshop-specific IAM policies stored as iam-policy-{workshop}.json in cdk/src/main/resources/ ✅ |
| 48 | + - Ide.java loads iam-policy-{templateType}.json and throws exception if not found ✅ |
| 49 | + - Created iam-policy-base.json with Allow * for base template ✅ |
47 | 50 | - _Requirements: 4.3_ |
48 | 51 |
|
49 | 52 | ## Base IDE Stack (10.x) |
|
383 | 386 | - Enabled easy filtering and management of workshop resources in AWS console and CLI |
384 | 387 | - _Requirements: 21.1, 21.2, 21.3, 21.4, 21.5_ |
385 | 388 |
|
386 | | -## Java-on-AWS Migration (100.x) |
| 389 | +## Java-on-AWS-Immersion-Day Migration (100.x) |
387 | 390 |
|
388 | | -- [x] 100.1 Analyze java-on-aws workshop requirements |
| 391 | +- [x] 100.1 Analyze java-on-aws-immersion-day workshop requirements |
389 | 392 | - Reviewed infrastructure/cfn/unicornstore-stack.yaml and identified required resources ✅ |
390 | 393 | - Documented EKS, Database, and other workshop-specific components ✅ |
391 | 394 | - Mapped existing resources to new construct pattern ✅ |
|
416 | 419 | - Consolidate RDS and database schema setup into single construct |
417 | 420 | - _Requirements: 5.6, 12.1, 12.2, 12.3, 12.4, 12.5, 12.6_ |
418 | 421 |
|
419 | | -- [x] 100.4 Update WorkshopStack for java-on-aws with EKS integration |
| 422 | +- [x] 100.4 Update WorkshopStack for java-on-aws-immersion-day with EKS integration |
420 | 423 | - Database already conditionally created for non-base templates (same as Roles) ✅ |
421 | 424 | - Added conditional EKS creation: if (!"base".equals(templateType) && !"java-ai-agents".equals(templateType)) ✅ |
422 | 425 | - Integrated EKS with IDE security group: eks.ideInternalSecurityGroup(ide.getIdeInternalSecurityGroup()) ✅ |
423 | 426 | - Integrated EKS with IDE instance role: eks.ideInstanceRole(ideProps.getIdeRole()) ✅ |
424 | | - - Tested TEMPLATE_TYPE=java-on-aws generates template with VPC, IDE, CodeBuild, Roles, Database, and EKS resources ✅ |
| 427 | + - Tested TEMPLATE_TYPE=java-on-aws-immersion-day generates template with VPC, IDE, CodeBuild, Roles, Database, and EKS resources ✅ |
425 | 428 | - Validated generated template includes all EKS add-ons and Access Entries configuration ✅ |
426 | | - - Ensured template supports both java-on-aws and base templates from same codebase ✅ |
| 429 | + - Ensured template supports both java-on-aws-immersion-day and base templates from same codebase ✅ |
427 | 430 | - _Requirements: 1.2, 1.3, 13.1, 16.1_ |
428 | 431 |
|
429 | 432 | - [x] 100.5 Create EKS post-deployment setup script |
|
439 | 442 | - Verified all three add-ons are installed and functional before completing ✅ |
440 | 443 | - _Requirements: 15.1, 15.2, 14.2, 14.3, 14.4, 15.7, 18.1, 18.2, 18.3, 18.4, 18.6_ |
441 | 444 |
|
442 | | -- [x] 100.6 Create java-on-aws workshop orchestration script |
443 | | - - Created infra/scripts/ide/java-on-aws.sh that executes base.sh and workshop-specific setup ✅ |
| 445 | +- [x] 100.6 Create java-on-aws-immersion-day workshop orchestration script |
| 446 | + - Created infra/scripts/templates/java-on-aws-immersion-day.sh that executes base.sh and workshop-specific setup ✅ |
444 | 447 | - Script calls base.sh first for foundational development tools ✅ |
445 | 448 | - Then executes EKS-specific setup (cluster configuration, add-ons, storage classes) ✅ |
446 | 449 | - Added Phase 3: Monitoring stack (Prometheus + Grafana) via monitoring.sh ✅ |
|
480 | 483 | - Updated bootstrap.sh to call tools.sh as part of default IDE setup (after vscode/code-editor) ✅ |
481 | 484 | - Created templates/ directory for workshop-specific post-deploy scripts ✅ |
482 | 485 | - Created templates/base.sh as empty placeholder with comment ✅ |
483 | | - - Moved java-on-aws.sh to templates/java-on-aws.sh ✅ |
484 | | - - Updated java-on-aws.sh to NOT call base (tools already installed by bootstrap) ✅ |
| 486 | + - Moved java-on-aws-immersion-day.sh to templates/java-on-aws-immersion-day.sh ✅ |
| 487 | + - Updated java-on-aws-immersion-day.sh to NOT call base (tools already installed by bootstrap) ✅ |
485 | 488 | - Updated bootstrap.sh to look for template scripts in templates/ folder ✅ |
486 | 489 | - Updated vscode.sh and code-editor.sh to use settings.sh ✅ |
487 | 490 | - Final structure: |
|
504 | 507 | - eks.sh: "✅ Success: EKS cluster (workshop-eks)" ✅ |
505 | 508 | - monitoring.sh: "✅ Success: Monitoring (Prometheus + Grafana)" ✅ |
506 | 509 | - analysis.sh: "✅ Success: Analysis (Thread + Profiling dashboards)" ✅ |
507 | | - - java-on-aws.sh: "✅ Success: Java-on-AWS workshop template" ✅ |
| 510 | + - java-on-aws-immersion-day.sh: "✅ Success: Java-on-AWS-Immersion-Day workshop template" ✅ |
508 | 511 | - _Requirements: 3.3, 3.7, 6.6_ |
509 | 512 |
|
510 | 513 |
|
511 | 514 |
|
512 | | -- [x] 100.11 Validate java-on-aws migration |
513 | | - - Generated template with TEMPLATE_TYPE=java-on-aws and verified all EKS resources are present ✅ |
514 | | - - Tested template generation for both base and java-on-aws from same codebase ✅ |
| 515 | +- [x] 100.11 Validate java-on-aws-immersion-day migration |
| 516 | + - Generated template with TEMPLATE_TYPE=java-on-aws-immersion-day and verified all EKS resources are present ✅ |
| 517 | + - Tested template generation for both base and java-on-aws-immersion-day from same codebase ✅ |
515 | 518 | - Verified EKS add-ons, Access Entries, and database resources are properly configured ✅ |
516 | 519 | - Documented template differences and ensured they provide equivalent functionality ✅ |
517 | 520 | - _Requirements: 1.2, 1.3, 16.1_ |
|
542 | 545 | - _Requirements: 5.6_ |
543 | 546 |
|
544 | 547 | - [x] 100.15 Integrate PerformanceAnalysis into WorkshopStack |
545 | | - - Added conditional PerformanceAnalysis creation for java-on-aws template type ✅ |
| 548 | + - Added conditional PerformanceAnalysis creation for java-on-aws-immersion-day template type ✅ |
546 | 549 | - Passed EKS cluster reference for Access Entry creation ✅ |
547 | 550 | - Passed VPC reference for Lambda VPC placement ✅ |
548 | 551 | - Tested template generation with PerformanceAnalysis resources ✅ |
549 | | - - Verified all resources present in generated java-on-aws-stack.yaml ✅ |
| 552 | + - Verified all resources present in generated java-on-aws-immersion-day-stack.yaml ✅ |
550 | 553 | - _Requirements: 1.2, 1.3_ |
551 | 554 |
|
552 | 555 | - [x] 100.16 Create thread-dump-lambda.py implementation |
|
570 | 573 | - Note: ESO roles not needed - replaced by AWS Secrets Store CSI Driver add-on |
571 | 574 | - _Requirements: 5.6_ |
572 | 575 |
|
573 | | -## Java-AI-Agents Migration (300.x) |
| 576 | +## Java-on-Amazon-EKS Template (200.x) |
574 | 577 |
|
575 | | -- [ ] 300.1 Analyze and migrate java-ai-agents workshop |
576 | | - - Review infrastructure/cfn/java-ai-agents-stack.yaml (no EKS, includes Bedrock permissions, has database) |
577 | | - - Verify EKS exclusion logic: if (!"base".equals(workshopType) && !"java-ai-agents".equals(workshopType)) |
578 | | - - Database will be included automatically (non-base template) |
579 | | - - Create infra/scripts/setup/ai-agents.sh for AI-specific setup |
580 | | - - Create infra/scripts/workshops/java-ai-agents.sh orchestration script |
581 | | - - _Requirements: 5.4, 5.5_ |
| 578 | +- [x] 200.1 Create java-on-amazon-eks template (same infrastructure as java-on-aws-immersion-day) |
| 579 | + - Updated WorkshopStack.java to include java-on-amazon-eks in same conditional as java-on-aws-immersion-day ✅ |
| 580 | + - Updated generate.sh to generate java-on-amazon-eks-stack.yaml template ✅ |
| 581 | + - Created infra/scripts/templates/java-on-amazon-eks.sh (same setup as java-on-aws-immersion-day.sh) ✅ |
| 582 | + - Created infra/cdk/src/main/resources/iam-policy-java-on-amazon-eks.json (copy of java-on-aws-immersion-day policy) ✅ |
| 583 | + - Template includes: VPC, IDE, CodeBuild, Database, EKS, PerformanceAnalysis, Unicorn ✅ |
| 584 | + - _Requirements: 1.2, 1.3, 5.4_ |
582 | 585 |
|
583 | | -## Java-Spring-AI-Agents Migration (400.x) |
| 586 | +## Java-AI-Agents Migration (300.x) |
584 | 587 |
|
585 | | -- [ ] 400.1 Analyze and migrate java-spring-ai-agents workshop |
586 | | - - Review infrastructure/cfn/spring-ai-stack.yaml for specific requirements |
587 | | - - Create infra/scripts/setup/spring-ai.sh for Spring AI specific setup |
588 | | - - Create infra/scripts/workshops/java-spring-ai-agents.sh orchestration script |
589 | | - - Validate template generation and workshop setup scripts |
590 | | - - _Requirements: 5.4, 5.5_ |
| 588 | +- [x] 300.1 Create java-ai-agents template (same infrastructure as base) |
| 589 | + - Updated generate.sh to generate java-ai-agents-stack.yaml template ✅ |
| 590 | + - Created infra/scripts/templates/java-ai-agents.sh (minimal setup, no EKS/Database) ✅ |
| 591 | + - Created infra/cdk/src/main/resources/iam-policy-java-ai-agents.json (Allow * like base) ✅ |
| 592 | + - Template includes: VPC, IDE, CodeBuild only (same as base) ✅ |
| 593 | + - No EKS, Database, PerformanceAnalysis, or Unicorn resources ✅ |
| 594 | + - _Requirements: 1.2, 1.3, 5.4_ |
| 595 | + |
| 596 | +## Java-Spring-AI-Agents Template (400.x) |
| 597 | + |
| 598 | +- [x] 400.1 Create java-spring-ai-agents template (same infrastructure as base) |
| 599 | + - Updated generate.sh to generate java-spring-ai-agents-stack.yaml template ✅ |
| 600 | + - Created infra/scripts/templates/java-spring-ai-agents.sh (minimal setup, no EKS/Database) ✅ |
| 601 | + - Created infra/cdk/src/main/resources/iam-policy-java-spring-ai-agents.json (Allow * like base) ✅ |
| 602 | + - Template includes: VPC, IDE only (same as base) ✅ |
| 603 | + - No EKS, Database, PerformanceAnalysis, or Unicorn resources ✅ |
| 604 | + - _Requirements: 1.2, 1.3, 5.4_ |
591 | 605 |
|
0 commit comments