This repository contains reusable AWS CDK constructs for the OrcaBus platform. These constructs simplify the creation and management of AWS infrastructure components while following best practices and OrcaBus-specific configurations.
Packages docs:
Alternatively, you can view the package documentation on constructs.dev.
This monorepo is organized as follows:
packages/– Contains reusable CDK constructs, such asapi-gatewayanddeployment-stack-pipeline. These packages are published to the npm registry.dev/– A development workspace for testing and experimenting with the constructs..github/workflows/– Contains GitHub Actions workflows for automating releases to the npm registry.
The repository is structured as a pnpm workspace with two workspaces:
packages/– For CDK constructs that will be published to the npm registry.dev/– For development and testing purposes.
Ensure you have the correct Node.js version installed:
node --version
# Expected output: v22.9.0Set up corepack (if not already enabled):
npm install --global corepack@latest
corepack enable pnpmTo install all required dependencies across workspaces, run:
pnpm installNavigate to the dev directory:
pnpm clean
pnpm i
cd devUse the predefined pnpm script to run CDK commands:
pnpm cdk <command>
This package’s documentation is automatically generated in Markdown format using typedoc and typedoc-plugin-markdown.
To regenerate the documentation, run:
pnpm packages:generate-docsThe documentation follows the JSDoc convention and can be viewed locally at:
📄 View Generated Documentation
Additionally, constructs.dev automatically indexes packages compiled with the JSII compiler (as this package is). Once published to the npm registry, the documentation is also available on their site:
🔗 @orcabus/platform-cdk-constructs on constructs.dev
A GitHub Action is configured to automatically publish to the npm registry when a release is created.
To publish manually, ensure the following environment variables are set:
NPM_ACCESS_LEVELNPM_TOKEN
Then, build, package, and publish the constructs:
pnpm build
pnpm package
pnpm publishAlternative, you may push a new release to the main branch. This will trigger the GitHub Action to publish the package automatically.
i.e
git pull origin main
git checkout main
gh release create 0.0.10-alpha.0 --title '0.0.10-alpha.0 release!' --notes-file 'release-notes.md'