Skip to content

Build and deploy a container image from source code.

Notifications You must be signed in to change notification settings

walrus-catalog/deploy-source-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 0.0.2

Providers

Name Version
kaniko 0.0.2

Modules

No modules.

Resources

Name Type
kaniko_image.image resource

Inputs

Name Description Type Default Required
dockerfile Path to the Dockerfile. string "Dockerfile" no
git_auth @label "Authentication" @group "Source" bool false no
git_branch Branch of the repository to clone. string "main" no
git_password Password for cloning the git repository. string null no
git_path Path to the source code. string null no
git_url URL to the source code repository. string n/a yes
git_username Username for cloning the git repository. string null no
image Name of the image to be built and deployed. string n/a yes
registry_auth @label "Registry Authentication" @group "Build" bool false no
registry_password Password for the image registry. string null no
registry_username Username for the image registry. string null no

Outputs

Name Description
image Built docker image name

Requirements

Name Version
kaniko 0.0.2

Providers

Name Version
kaniko 0.0.2
kubernetes n/a

Modules

Name Source Version
deployment terraform-iaac/deployment/kubernetes 1.4.2
service terraform-iaac/service/kubernetes 1.0.4

Resources

Name Type
kaniko_image.image resource
kubernetes_service.service data source

Inputs

Name Description Type Default Required
dockerfile Path to the Dockerfile. string "Dockerfile" no
env Name and value pairs to set as the environment variables map(string) {} no
git_auth @label "Git Authentication" @group "Build" bool false no
git_branch Branch of the repository to clone. string "main" no
git_password Password for cloning the git repository. string null no
git_path Path to the source code. string null no
git_url URL to the source code repository. string n/a yes
git_username Username for cloning the git repository. string null no
image Name of the image to be built and deployed. string n/a yes
limit_cpu CPU limit. e.g. 0.5, 1, 2 string "" no
limit_memory Memory limit. e.g. 128Mi, 512Mi, 1Gi, 2Gi, 4Gi string "" no
name Name of the deployment resource. Auto-generated if empty. string "" no
namespace Namespace to deploy. Auto-generated if empty. string "" no
ports Service ports to expose list(number)
[
80
]
no
registry_auth @label "Registry Authentication" @group "Build" bool false no
registry_password Password for the image registry. string null no
registry_username Username for the image registry. string null no
replicas Count of pods number 1 no
request_cpu CPU request. e.g. 0.5, 1, 2 string "0.1" no
request_memory Memory request. e.g. 128Mi, 512Mi, 1Gi, 2Gi, 4Gi string "128Mi" no
walrus_metadata_namespace_name Walrus metadata namespace name. string "" no
walrus_metadata_service_name Walrus metadata service name. string "" no

Outputs

Name Description
image Built docker image name
ports Service Ports
service_ip Service IP