Quickstart
This guide will help you create your first working CI/CD workflow using Kraken.Django + React Project
Most Penn Labs products follow the pattern of a Django project in thebackend directory and a React project in the frontend directory. Kraken provides a LabsApplicationStack that can easily configure CI for this common use case.
Configure LabsApplicationStack
In your This configuration will:
.github/cdk/main.ts file (or wherever your cdkactions app is defined), replace the generated stack with:- Lint, test, and build both Django and React projects
- Publish Docker images for both projects
- Deploy your application
$dockerImageBaseName-backend(e.g.,example-product-backend)$dockerImageBaseName-frontend(e.g.,example-product-frontend)
Build the workflow
Navigate to the cdkactions directory and build:This generates the GitHub Actions workflow YAML files.
Custom Configuration
If your repository structure differs from the standard 1 Django + 1 React pattern, you can use theDjangoProject and ReactProject classes directly for more flexibility.
Example: Django with Multiple Frontends
For a project with one Django backend and multiple React frontends:- Lint, test, and build the Django project
- Lint, test, and build both React projects
- Publish Docker images for all three projects
- Deploy the application after all images are published
Next Steps
Now that you have a working workflow, explore:- Advanced configuration options
- Custom job definitions
- Integration tests
- Deployment strategies