@guidesmiths/cuckoojs-schematics
v0.0.10
Published
A collection of CuckooJS schematics
Downloads
10
Readme
Getting Started With Schematics
This repository is a basic Schematic implementation that serves as a starting point to create and publish Schematics to NPM.
Testing
To test locally, install @angular-devkit/schematics-cli globally and use the schematics command line tool. That tool acts the same as the generate command of the Angular CLI, but also has a debug mode.
Check the documentation with
schematics --helpUnit Testing
npm run test will run the unit tests, using Jasmine as a runner and test framework.
Publishing
To publish, simply do:
npm run build
npm publishThat's it!
Available schematics
Pull Request Template
- Description: Enables having a standard format when doing Pull Request
- Command:
schematics @guidesmiths/cuckoojs-schematics:pr-template - Parameters:
| Name | Description | Supported values | Default value |
|-------------|-----------------------------------|-------------------------|----------------|
| gitProvider | Git provider where repo is hosted | github, azuredevops | |
Dockerfile
- Description: Created a Dockerfile for your build type
- Command:
schematics @guidesmiths/cuckoojs-schematics:dockerfile - Parameters:
| Name | Description | Supported values | Default value |
|---------------|---------------------------------------|-------------------------|---------------|
| directory | Directory where files will be created | valid folder | . |
| buildType | Specify the build process | github, azuredevops | |
| nodeVersion | Specify the NodeJS version to use | 18, 16, 14, 12 | |
Gitignore
- Description: Created a Gitignore file with common files
- Command:
schematics @guidesmiths/cuckoojs-schematics:gitignore - Parameters:
| Name | Description | Supported values | Default value |
|---------------|---------------------------------------|-------------------------|---------------|
| directory | Directory where files will be created | valid folder | . |
Commitlint
- Description: Config commit message pattern for your commits
- Command:
schematics @guidesmiths/cuckoojs-schematics:commitlint - Parameters:
| Name | Description | Supported values | Default value |
|---------------|---------------------------------------|-------------------------|---------------|
| directory | Directory where files will be created | valid folder | . |
Continuous Integration
- Description: Config basic CI pipeline (docker build and push)
- Command:
schematics @guidesmiths/cuckoojs-schematics:ci - Parameters:
| Name | Description | Supported values | Default value |
|------------------|------------------------------------------------------------|-------------------------|------|
| ciProvider | CI provider | github, azuredevops | |
| dockerRegistry | Docker registry to push image or service connection if AzureDevOps | string | |
| imageName | Name of the docker image | string | |
Helm chart
- Description: Create a helm chart to deploy on kubernetes
- Command:
schematics @guidesmiths/cuckoojs-schematics:helm - Parameters:
| Name | Description | Supported values | Default value |
|---------------|-----------------------------------------------|------------------|---------------|
| serviceName | Name of the resource to deploy | string | |
| imageName | Docker image to be deployed | string | |
| resourcesLimitCpu | Maximum cpu used by each pod | number | 100 |
| resourcesLimitMemory | Maximum memory used by each pod | number | 128 |
| resourcesRequestCpu | Requested cpu used by a pod to be launched | number | 100 |
| resourcesRequestMemory | Requested memory used by a pod to be launched | number | 128 |
| autoscalingEnabled | Enable autoscaling features on the pods | true, false | true |
| autoscalingReplicasMin | Autoscaled minimum replicas | number | 1 |
| autoscalingReplicasMax | Autoscaled maximum replicas | number | 5 |
| autoscalingTargetCpu | Target cpu used to trigger autoscaling | number | 75 |
| ingressController | Ingress controller to be used | generic, traefik | generic |
| tlsCertManager | TLS certificate manager to be used | none, certManager | none |
| domainName | Domain name for the service | string | chart-example.local |
