GitHub: Automated Import/Export


Disclaimer

Your use of this download is governed by Stonebranch’s Terms of Use, which are available at https://www.stonebranch.com/integration-hub/Terms-and-Privacy/Terms-of-Use/

Introduction

This Universal Task allows you to perform server operations, such as importing/exporting Universal Automation Center objects and integrating with GitHub; for example, you could import a new Universal Template from GitHub into your Universal Controller.

It also allows you to import/export Universal Automation Center objects using the Universal Controller script library.

Version Information

Template NameVersion
GitHub: Automated Import/Export

1.1.25

Refer to Changelog for version history information.

Software Requirements

Software Requirements for Universal Agent and Universal Controller

  • Universal Agent for Linux or Windows Version 7.0.0.0 or later are required.

  • For Universal Agent 7.0.0.0, the PyGitHub python module must be installed.

Software Requirements for Universal Controller

  • Universal Controller 7.0.0.0 or later.

Software Requirements for the Application to be Scheduled

  • A GitHub Account with a GitHub token is required,

A GitHub token can be created under GitHub / Settings / Developer settings / Personal access tokens

Universal Task Details

ImportImport any Universal Controller objects such as tasks, calendar, scripts, and trigger from GitHub into Universal Controller; for example, import a new Universal Template in the Marketplace from GitHub to Universal Controller.
ImportImport any Universal Controller object such as Universal Template, tasks, calendar, scripts, and triggers from a script file into Universal Controller; for example, no Internet connection from Universal Controller to GitHub is supported.
ExportExport any Universal Controller object such as tasks, calendar, scripts, and triggers to GitHub from Universal Controller; for example, export a Universal Template to a GitHub repository.
ExportExport any Universal Controller object such as tasks, calendar, scripts, and triggers to a script object, so that the content of the script later can be used to import it on a Controller without needing the UAC import functionality.
SupportSupport Stonebranch SaaS Universal Controller and on-premise Universal Controller customers.

Import Downloadable Universal Template

To use this downloadable Universal Template, you first must perform the following steps:

  1. This Universal Task requires the Resolvable Credentials feature. Check that the Resolvable Credentials Permitted system property has been set to true.
  2. Copy or Transfer the Universal Template file to a directory that can be accessed by the Universal Controller Tomcat user.
  3. In the Universal Controller UI, select Configuration > Universal Templates to display the current list of Universal Templates.
  4. Right-click any column header on the list to display an Action menu.
  5. Select Import from the menu, enter the directory containing the Universal Template file(s) that you want to import, and click OK.

When the files have been imported successfully, the Universal Template will appear on the list.

Configure Universal Task

For the new Universal Task type, create a new task, and enter the task-specific details that were created in the Universal Template.

Field Descriptions for the GitHub Integration Universal Task

Field

Description

Universal Controller URL

Universal Controller URL; for example,

Local Universal Controller:

http://192.168.88.10:8080/uc/
Stonebranch SaaS Cloud Universal Controller:

https://superstore.stonebranchdev.cloud/

Universal Controller Credentials

Credentials of the Universal Controller Webservice API

Loglevel

Universal Task logging settings [DEBUG | INFO| WARNING | ERROR | CRITICAL]

UAC Base URL

The REST API URL for UAC.

for example, http://192.168.88.40:8080/uc

UAC REST Credentials

The REST API credentials for UAC.

Operation Type

Operation Type can be one of the following:

  • From UAC to GitHub
    This operation gets the universal object information from UAC and sends it into GitHub repository. See 66422887.
  • From GitHub to UAC
    This operation gets the universal object information from GitHub repository and sends it into UAC. It either creates these or updates the already existing ones. See 66422887.
  • UAC_to_Script
    This operation gets the universal object information from UAC and exports it into a UAC script object, so that later the content of the script can be used to import it on a Controller without needing to the UAC import functionality. See 66422887.
  • Script_to_UAC
    This operation gets the universal object information from UAC script and sends it into UAC. It either creates these or updates the already existing ones. See 66422887.

Object Type

Object Types in UAC:

[ agent | agentcluster | businessservice | calendar | customday | credential | databaseconnection | emailconnection | peoplesoftconnection | sapconnection | task | trigger | script | virtual | variable | universaltemplate ]

Object Sub Type

The type of the selected object.

Refer to Task Types in the Product Documentation; for example, For Object Type tasks: Workflow, Timer, Windows, Linux/Unix, z/OS, … 

Business Services

Comma Separated List of Business Services

GitHub Base URL

Should be filled in order to use local/own/private GitHub server. For GitHub please leave empty.

GitHub Token

Connection token for GitHub. Can be generated under GitHub / Settings / Developer settings / Personal access tokens

Repository Path

GitHub repository ; for example, stonebranch-marketplace/ut-sql-tasks

used to:

  • Export Universal Package to GitHub

  • Import Universal Package from GitHub

Branch

Branch name ; for example, main, development

Task Folder Name

Folder name of the task to be put under the Branch; for example, export

Change Message

Commit definition.

${ops_execution_user}_${ops_agent_name}_app.version_%s_${ops_launch_time}_change_ is added in front of the message; for example,

if Change Message field left empty:

nbuer_AGT_LINUX_PS4_app.version_1.3_2021-01-20 10:25:48 +0000_change_

if Change Message field = “dev”

nbuer_AGT_LINUX_PS4_app.version_1.3_2021-01-20 10:25:48 +0000_change_dev

Naming Conventions

The naming of the objects that are exported to a GitHub are as follows:

<Object Name>.<Object Type>.<Object Sub Type>.json

For example:

AWS Task.task.SAP.json

If there is no Object Sub Type, then:

AWS Task.universaltemplate.json

Examples for Universal Tasks

Export Universal Objects from UAC to GitHub

The following task exports the Universal Template SQL from Universal Controller to the main branch of the GitHub repository: stonebranch-marketplace/ut-sql-tasks; folder: export

Import Universal Objects from GitHub to UAC

The following Task imports the universal template SQL from the main branch of the GitHub repository: stonebranch-marketplace/ut-sql-tasks; folder export

Export Universal Objects from UAC to Script

This task gets the object for the Universal Template “Informatica Cloud” from UAC and exports it into a UAC script object with the same name, so that later the content of the script can be used to import it on a Controller without needing the UAC import functionality.


Import Universal Objects from Script to UAC

The following task imports the Universal Template as defined in the JSON script named SQL.

JSON Script that Defines Universal Template SQL


Changelog

ut-github-1.1.25 (2023-04-06)

Bugfix