# deploy-source-code **Repository Path**: walrus-catalog/deploy-source-code ## Basic Information - **Project Name**: deploy-source-code - **Description**: Build and deploy a container image from source code. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-27 - **Last Updated**: 2024-01-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Deploy Source Code Kaniko is an open-source tool that provides a secure way to build container image without requiring a Docker daemon. This module utilizes the power of Kaniko to build container image using a Dockerfile fetched from GitHub, as well as the deployment of it to a Kubernetes cluster. This module will also generate to image name to output. ## Requirements | Name | Version | |------|---------| | [kaniko](#requirement\_kaniko) | 0.0.2 | ## Providers | Name | Version | |------|---------| | [kaniko](#provider\_kaniko) | 0.0.2 | ## Modules No modules. ## Resources | Name | Type | |------|------| | [kaniko_image.image](https://registry.terraform.io/providers/seal-io/kaniko/0.0.2/docs/resources/image) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [dockerfile](#input\_dockerfile) | Path to the Dockerfile. | `string` | `"Dockerfile"` | no | | [git\_auth](#input\_git\_auth) | @label "Authentication" @group "Source" | `bool` | `false` | no | | [git\_branch](#input\_git\_branch) | Branch of the repository to clone. | `string` | `"main"` | no | | [git\_password](#input\_git\_password) | Password for cloning the git repository. | `string` | `null` | no | | [git\_path](#input\_git\_path) | Path to the source code. | `string` | `null` | no | | [git\_url](#input\_git\_url) | URL to the source code repository. | `string` | n/a | yes | | [git\_username](#input\_git\_username) | Username for cloning the git repository. | `string` | `null` | no | | [image](#input\_image) | Name of the image to be built and deployed. | `string` | n/a | yes | | [registry\_auth](#input\_registry\_auth) | @label "Registry Authentication" @group "Build" | `bool` | `false` | no | | [registry\_password](#input\_registry\_password) | Password for the image registry. | `string` | `null` | no | | [registry\_username](#input\_registry\_username) | Username for the image registry. | `string` | `null` | no | ## Outputs | Name | Description | |------|-------------| | [image](#output\_image) | Built docker image name | ## Requirements | Name | Version | |------|---------| | [kaniko](#requirement\_kaniko) | 0.0.2 | ## Providers | Name | Version | |------|---------| | [kaniko](#provider\_kaniko) | 0.0.2 | | [kubernetes](#provider\_kubernetes) | n/a | ## Modules | Name | Source | Version | |------|--------|---------| | [deployment](#module\_deployment) | terraform-iaac/deployment/kubernetes | 1.4.2 | | [service](#module\_service) | terraform-iaac/service/kubernetes | 1.0.4 | ## Resources | Name | Type | |------|------| | [kaniko_image.image](https://registry.terraform.io/providers/seal-io/kaniko/0.0.2/docs/resources/image) | resource | | [kubernetes_service.service](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/data-sources/service) | data source | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [dockerfile](#input\_dockerfile) | Path to the Dockerfile. | `string` | `"Dockerfile"` | no | | [env](#input\_env) | Name and value pairs to set as the environment variables | `map(string)` | `{}` | no | | [git\_auth](#input\_git\_auth) | @label "Git Authentication" @group "Build" | `bool` | `false` | no | | [git\_branch](#input\_git\_branch) | Branch of the repository to clone. | `string` | `"main"` | no | | [git\_password](#input\_git\_password) | Password for cloning the git repository. | `string` | `null` | no | | [git\_path](#input\_git\_path) | Path to the source code. | `string` | `null` | no | | [git\_url](#input\_git\_url) | URL to the source code repository. | `string` | n/a | yes | | [git\_username](#input\_git\_username) | Username for cloning the git repository. | `string` | `null` | no | | [image](#input\_image) | Name of the image to be built and deployed. | `string` | n/a | yes | | [limit\_cpu](#input\_limit\_cpu) | CPU limit. e.g. 0.5, 1, 2 | `string` | `""` | no | | [limit\_memory](#input\_limit\_memory) | Memory limit. e.g. 128Mi, 512Mi, 1Gi, 2Gi, 4Gi | `string` | `""` | no | | [name](#input\_name) | Name of the deployment resource. Auto-generated if empty. | `string` | `""` | no | | [namespace](#input\_namespace) | Namespace to deploy. Auto-generated if empty. | `string` | `""` | no | | [ports](#input\_ports) | Service ports to expose | `list(number)` |
[| no | | [registry\_auth](#input\_registry\_auth) | @label "Registry Authentication" @group "Build" | `bool` | `false` | no | | [registry\_password](#input\_registry\_password) | Password for the image registry. | `string` | `null` | no | | [registry\_username](#input\_registry\_username) | Username for the image registry. | `string` | `null` | no | | [replicas](#input\_replicas) | Count of pods | `number` | `1` | no | | [request\_cpu](#input\_request\_cpu) | CPU request. e.g. 0.5, 1, 2 | `string` | `"0.1"` | no | | [request\_memory](#input\_request\_memory) | Memory request. e.g. 128Mi, 512Mi, 1Gi, 2Gi, 4Gi | `string` | `"128Mi"` | no | | [walrus\_metadata\_namespace\_name](#input\_walrus\_metadata\_namespace\_name) | Walrus metadata namespace name. | `string` | `""` | no | | [walrus\_metadata\_service\_name](#input\_walrus\_metadata\_service\_name) | Walrus metadata service name. | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| | [image](#output\_image) | Built docker image name | | [ports](#output\_ports) | Service Ports | | [service\_ip](#output\_service\_ip) | Service IP |
80
]