# Part 2: Deploy

## What Will You Do

In this section you will

- Create a namespace for the workloads
- Deploy a YAML workload
- Deploy a Helm workload

---

## Step 1: Create Namespace

In this step, you will create a namespace for the workloads.

- In your project, navigate to **Infrastructure -> Namespaces**
- Click **New Namespace**
- Enter **gitops-workloads** for the name
- Select **Wizard** for the Type
- Click **Save**

- Click **Save & Go To Placement**

- Select the cluster to create the namespace on
- Click **Save & Go To Publish**

- Click **Publish**

The namespace is now published on the cluster.

- Click **Exit**

---

## Step 2: Create YAML Workload

You will now create a sample YAML workload which will contain multiple resources. The workload will be used to demonstrate the workload lifecycle management of YAML workloads through GitOps.

- In your project, navigate to **Applications -> Workloads**
- Click **New Workload -> Create New Workload**
- Enter **yaml-gitops-workload** for the workload name
- Select **K8s YAML** for the package type
- Select **Pull files from repository**
- Select the previously created **gitops-workloads** namespace
- Click **Continue**

- Select **gitops-workload-gs** for the repository
- Enter the repo branch for the revision. By default it is **master**
- Enter **/gitops-workload/YAML/yaml-workload.yaml** for the YAML file path
- Click **Save & Go To Placement**

- Select the cluster where the resources will be deployed
- Click **Save & Go To Publish**

- Click **Publish**

This will deploy the workload on the cluster selected.

- Click **Exit**

---

## Step 3: Create Helm Workload

You will now create a sample Helm workload. The workload will be used to demonstrate the workload lifecycle management of Helm workloads through GitOps.

- In your project, navigate to **Applications -> Workloads**
- Click **New Workload -> Create New Workload**
- Enter **helm-gitops-workload** for the workload name
- Select **Helm 3** for the package type
- Select **Pull files from repository**
- Select **Git** for the repository type
- Select the previously created **gitops-workloads** namespace
- Click **Continue**

- Select **gitops-workload-gs** for the repository
- Enter the repo branch for the revision. By default it is **master**
- Enter **/gitops-workload/Helm/webserver/** for the Helm chart path
- Select **Value Path**
- Click **Add Path**
- Enter **/gitops-workload/Helm/webserver/custom-values.yaml**
- Click **Save & Go To Placement**

- Select the cluster where the resources will be deployed
- Click **Save & Go To Publish**

- Click **Publish**

This will deploy the workload on the cluster selected.

- Click **Exit**

---

## Recap

At this point, you have successfully deployed a YAML and Helm workload to your cluster from a Git repository.
