3.2 Agents

1. Agents

2. Getting into the Agents panel

3. Viewing & Editing Agents

4. Deleting Agents

5. Assigning custom Agent

6. Working with Agent

7. How to work with files on agents

1. Agents

Kaholo pipelines are executed either on Kaholo cloud agents or you can self-host as many of your own agents as needed prepackaged with all your necessary dependencies. You also have the option of having Kaholo’s Agent run your customized Docker image which would be based off of the Kaholo Agent image.

The power of the machines that Agents run on determines the types of pipelines that can be run on that Agent. For larger workloads, please reach out to us and we can set up more powerful Agents for you.

By default, Kaholo assigns an agent that will be used for executing your pipeline. The Kaholo Agent used for executing pipelines has a public image and you can find it by accessing this page on Github.

2. Getting into the Agents panel

In this section, you will learn how to access the Agents panel.

  1. Ensure that you are already logged in to your Kaholo account.
  2. On the Main Menu, click the Manage icon. By default, you will be directed to the Plugins page.

3. Viewing & Editing Agents

In this article, you will learn how to update/edit agent details.

  1. Click the Agents icon to go to the Agents page.
  2. Find the agent that you want to edit in the agent list and click its Edit icon.
  3. The Edit agent window will appear. In this window, you can edit the agent’s name and add a tag.
  4. After editing the selected agent, click Save to apply the changes.

4. Deleting Agents

In this article, you will learn how to delete existing agents from your Kaholo account.

  1. While on the Agents List, find the agent that you want to delete in the agent list and click its Delete icon.
  2. Press “Yes” on a confirmation pop-up and watch the agent disappearing from the list.

 

5. Assigning custom Agent

If you would like to assign your own custom agent, follow the steps below.

  1. Go to the Properties tab of your newly created project.
  2. Select an Agent from the dropdown menu or use the default one.

Kaholo pipelines are executed either on Kaholo cloud agents or you can self-host as many of your own agents as needed, prepackaged with all your necessary dependencies. You also have the option of having Kaholo’s Agent run your customized Docker image which would be based off of the Kaholo Agent image.

 

6. Working with Agent

Highlights:

  • Default size on agent is 5 GB
  • Agent can be Linux or Windows based
  • You can use any bash or powershell command
  • You can install any dependency and use filesystem as you need
  • On web hosted Kaholo version default agent is Amazon Linux
  • Warning: There is nothing guaranteed to be persistent on the Agent, so your pipeline should cover installing needed dependencies/creating files for pipeline specific actions.

To interact directly with agent best way is to use CommandLine plugin. Using this plugin and shell commands you may perform any action you need. On the example below there is a command “apt-get update”. Note, that you don’t need to write “sudo” at the beginning as you have root privileges.

Linux based Kaholo Agent has caching (Linux Page Cache). It is that certain amount of system memory that the kernel reserves for caching the file system disk accesses. This is to make overall performance faster. During Linux read system calls, the kernel checks if the cache contains the requested blocks of data. If it does, then that would be a successful cache hit. The cache returns this data without doing any I/O to the disk system.

Path. Relative/Absolute

You need to be aware of location where you currently are. All plugins has the same default path where they executed, anyway It is better to use absolute path than relative to be sure that each time you are reffering to the correct location. If you are not sure where you are you may always use “PWD” command that prints current directory where you located

 

 

7. How to work with files on Agents

Highlights:

  • You cannot upload directly files on agent
  • You can upload content of the files using TextEditor plugin
  • You can upload files by connecting with your git repository

 

a) Creating new file with TextEditor plugin

  1. To create new file on the agent start typing in actions search box: “text” or just find on the list in the Core category
  2. Drag and drop action on the Canvas
  3. Choose the method “Create New File”
  4. Fill up file path. Note: file path on Linux is with frontslash /, on Windows with backslash \.
  5. Fill up file content. You can copy-paste filecontent directly to the field. You can also use Custom JS field to pass content returned from JavaScript function
  6. Run pipeline. Your file will be created on the agent

 

b) Uploading files on the agent from the git repository

To upload your files on the agent from the git repository:

  1. Choose action Github and drag and drop it on the canvas
  2. Choose method Get Repository
  3. Fill up repository address and path where it should be clonned
  4. If your repository is private you need to also fill authentication Token created on your Github account
  5. Save and run the pipeline.