The page has been translated by Gen AI.

(Workload Deployment) Adding Build/Deployment

The user can create a new build pipeline in an already created DevOps Console project, build the source to create an image, and proceed with workload deployment to a Kubernetes cluster through the following procedure.

The workload added through Adding Workload will be used in Setting up Deploy to K8S Stage.

Starting Build/Deployment Addition

To start adding build/deployment, follow the procedure below.

  1. Click the Project card on the Main page. It moves to the Project Dashboard page.

Adding Code Repository (Option)

Guide
Proceed only if a new code repository is needed.

To add a code repository, follow the procedure below.

  1. Code Repository page, click the Add Code Repository button in the top right corner. It will move to the Add Code Repository page.
  2. On the Add Code Repository page, enter/set each item.
  3. Click the Connection Test button.
  4. Click the Save button.
ItemDescription
Repository TypeSelect the repository to use
  • Registered Tool: You can select and use the types of SCM Repository tools available to the user (Github, Gitlab, etc.).
  • DevOps Code: Available if you have applied for DevOps Code use in the Samsung Cloud Platform Console.
  • Unregistered Tool: You can use it by entering the domain of an unregistered tool. The unregistered tool item only appears when the App template is Environment Only (without source code).
New/Existing UsageSelect Create New Repository or Use Existing Repository
Repository InformationEnter repository information
  • When creating a new repository, the URL is composed of the project group name/project name.
Authentication InformationEnter authentication information.
Repository InformationEnter repository information
  • You can use a code repository that is not registered as a tool in the DevOps Console.
  • An additional URL check process is required.
Table. Add Code Repository Input Items

Adding Image Repository (Option)

Guide
Proceed only if a new image repository is needed.

To add an image repository, follow the procedure below.

App. Adding Image Repository

  1. Image Repository page, click the App Image Repository Addition button in the top right. Move to the App Image Repository Addition page.
  2. On the App Image Repository Addition page, enter/settings for each item.
  3. Click the Connection Test button.
  4. Click the Save button.
ItemDescription
Repository Type SelectionSelect the image repository type.
If you want to use an image repository not registered in Devops Console, select the Image Registry type.
Repository Creation SelectionChoose whether to create a new repository or use an existing one.
  • If you selected Docker hub or Image Registry type earlier, you can only select Use Existing Repository.
Registered ToolEnter repository information.
Unregistered ToolEnter repository information
  • You can register an image repository that has not been registered as a tool in DevOps Console.
  • Click the URL Check button to proceed with the verification process.
  • You can only select Use Existing Repository.
Table. App Image Repository Addition Input Items

Adding Pull-only Image Repository

  1. Image Repository page, click the Add Pull-only Image Repository button at the top right. It moves to the Add Pull-only Image Repository page.
  2. On the Add Pull-only Image Repository page, enter/set each item.
  3. Click the Connection Test button.
  4. Click the Save button.

Adding Workload

To add a workload, follow the procedure below.

  1. Main page, click the Project card. It moves to the Project Dashboard page.
  2. In the left menu, click the Build/Deploy > Kubernetes Deployment menu. It moves to the Kubernetes Deployment page.
  3. On the Kubernetes Deployment page, click the Add Workload menu. The Add Workload popup window opens.
  4. In the Add Workload popup window, enter the information and click the Save button.
  5. In the confirmation popup window, click the Confirm button to complete adding the workload.
Item
Description
Target to be retrievedOnly workloads deployed with the same image as the base image of the App template used when creating the project for the first time are displayed.
Workload already registered in the projectIt shows the workload already registered in the project.
  • Workloads already registered in the project cannot be added.
Table. Input items for adding workload

Modifying K8S Authentication Information

K8S authentication information refers to the authentication information used to verify the authority to use the K8S cluster/namespace when performing deployment in the build pipeline.

To modify the K8S authentication information, follow the procedure below.

  1. Deployment Details page, click the Edit Authentication Information icon to the right of K8S Cluster/Namespace. The Edit Authentication Information popup window will open.
  2. The authentication information is fixed to the account of the logged-in user. Click the Save button to modify it.
  3. In the confirmation popup window, click the Confirm button.
  4. The K8S authentication information will be changed to the logged-in user.

Adding Build Pipeline

To add a build pipeline, follow the procedure below.

  1. Main page, click the Project card. Move to the Project Dashboard page.
  2. Click the Build/Deployment > Build Pipeline menu in the left menu. Move to the Build Pipeline page.
  3. On the Build Pipeline page, click the Add Pipeline button at the top right. Move to the Add Pipeline page.
  4. Enter/set each item on the Add Pipeline page.
  5. Click the Next button.
ItemDescription
ClassificationSelect development or operation classification
Jenkins URLSelect Jenkins to add a build pipeline from the list.
Build AgentSelect the agent (build environment) where the build pipeline will run.
Click the Info icon to view the list of tools provided by the agent.
Build Environment OSDisplays the OS information of the environment where the build agent runs.
Folder TypeSelect the folder type.
  • Existing folder: Add a pipeline under an existing folder in Jenkins.
  • New folder: Create a new folder in Jenkins and add a pipeline under it.
FolderSelect a folder from the list or enter the name of the new folder to be created.
Pipeline NameEnter the pipeline name.
Parameter SettingSet the parameters to be used in the pipeline.
Environment Variable SettingSet the environment variables to be used in the pipeline.
Stage SettingSet the stages to be used in the pipeline.
Build Result Email Recipient SettingSet the recipient to receive the result email after the pipeline is completed (success/failure).
Table. Build Pipeline Addition Setting Items

Setting up Parameters

To set parameters to use when running a pipeline, follow these steps:

  1. Parameters card should be clicked.
  2. Add button should be clicked to add parameters.
  3. Apply button should be clicked to complete parameter settings.

Setting up Environment Variables

To set environment variables to be used in the pipeline, follow the procedure below.

  1. Environment Variables section, click. The Environment Variable Registration page opens on the right.
  2. A list of pre-registered Environment Variables appears, and select the checkbox of the environment variable to be used.
  3. Check the Selected Environment Variables and click the Apply button to complete the environment variable setting.

Setting up Build Result Email Recipients

To set up the recipient to receive the build result by email, follow the procedure below.

  1. Email Recipient area, click. The Add Email Recipient page opens on the right.
  2. In the Search area, search for and add the recipient.
  3. Click the Apply button to complete the email recipient setting.

Setting up Additional Stages

Setting up Checkout Stage

To add a Checkout stage, follow these steps:

  1. Click the New Stage area. The Stage Settings page opens on the right.
  2. On the Stage Settings page, select Checkout as the Stage Type.
  3. Enter the information and click the Apply button. (You can select the code repository added in Adding a Code Repository (Option) from the URL.)
ItemDescription
URLSelect the code repository to perform checkout.
Branch NameEnter the branch name to checkout.
Table. Checkout Stage Input Items

Setting up Build Stage

To add a Build stage, follow these steps:

  1. Click the plus icon to add a new stage.
  2. Click the new stage area. The Stage Settings page opens on the right.
  3. On the Stage Settings page, select Build as the Stage Type.
  4. On the Stage Settings page, enter the information and click the Apply button.
ItemDescription
LanguageSelect the programming language used by the application.
Build ToolSelect the Build tool used for application building.
Provides default Shell commands based on the selected Build tool.
Shell CommandEnter the command to use for application building.
All commands available in the Shell can be used.
Table. Build Stage Input Items

Setting up Docker Build Stage

To add a Docker Build stage, follow these steps:

  1. Plus icon을 클릭하여 새로운 스테이지를 추가하세요.
  2. New Stage 영역을 클릭하세요. Stage Settings 페이지가 오른쪽에 열립니다.
  3. Stage Type으로 Docker Build를 선택하세요.
  4. 정보 입력 후 Apply 버튼을 클릭하세요. (Registry URL에서 Adding Image Repository (Option)에서 추가한 이미지 저장소를 선택할 수 있습니다.)
Item
DescriptionExample
Registry URL (docker push)Select the image repository where the completed Docker build result image will be pushed.
IDID value of the account to be used in the image repository
Image Tag PatternThe Docker image tag will be automatically generated based on the selected pattern.
  • {YYYYMMDD}: year, month, day
  • {HHMMSS}: hour, minute, second
  • {BUILD_NUM}: current build pipeline execution number
  • {YYYYMMDD}.{HHMMSS}: 20200414.150938
  • {YYYYMMDD}.{BUILD_NUM}: 20220414.13
Add Base Image RepositoryThe Add Base Image Repository popup window will open.
Registry URL (docker pull)If the image repository providing the base image (Dockerfile’s FROM clause, docker pull) used in the Dockerfile and the image repository of the Registry URL (docker push) are different, select the image repository for docker pull.
Image Build ToolDisplays the image build tool.
Pre-build CommandIf there are commands that must be executed before building the Docker image, write them in Shell command format.cp target/*.jar docker/
Image Build FolderIf the Docker image build needs to be executed in a specific folder, select the checkbox and enter the folder path.docker
DockerfileEnter the Dockerfile file name.Dockerfile
Image Build OptionsIf additional options are required for the image build tool, enter them.--no-cache
Build CommandDisplays the actual image build command to be executed.
Post-build CommandIf there are commands that must be executed after building the Docker image, write them in Shell command format.rm -rf docker/*.jar
Table. Docker Build Stage Input Items

Setting up Deploy to K8S Stage

To add the Deploy to K8S stage, follow the procedure below.

  1. Click the + icon to add a new stage.
  2. Click the New Stage area. The Stage Setting page opens on the right.
  3. On the Stage Setting page, select Deploy to K8S as the Stage Type.
  4. On the Stage Setting page, enter the information and click the Apply button. (If you select the type as workload, you can select the workload added in Adding Workload.)
Item
Description
TypeSelect deployment type
  • Helm Release (Helm Chart Type)
  • Workload
  • ArgoCD
K8S ClusterSelect K8S cluster
  • Helm Release (Helm Chart Type) selection will display a list of Helm releases deployed through DevOps Console.
NamespaceSelect namespace.
Helm ReleaseSelect Helm release.
Deployment MethodSelect deployment method
  • Recreate
  • Rolling Update
Registry URLSelect the image repository where the image to be deployed to Kubernetes is docker pushed.
SecretSelect secret information input method
  • Auto Generation: Automatically generate and use the secret corresponding to the selected image repository in DevOps Console.
  • Use Existing Secret: Use a pre-created secret through K8S secret management.
Table. Deploy to K8S Stage Input Items

Checking the Final Pipeline Script

  1. Check the actual build pipeline script to be created. Modify the script directly if necessary.
  2. Click the Complete button to complete adding the pipeline.

Result of Adding Pipeline

Note
The added pipeline will not be executed automatically. If execution is required, run the pipeline directly.
(Helm Chart Deployment) Adding Build/Deployment
(VM Deployment) Adding Build/Deployment