RPA UiPath Query

Hi Guys, I am a beginner. Could you please help me understand what is the need for code repositories and versioning systems like TFS and Github when we have the Orchestrator in the cloud?

When starting out with UiPath, it’s important to understand that UiPath Orchestrator and code repositories like TFS (Team Foundation Server) or GitHub serve very different roles in the automation development and deployment lifecycle. Here’s a breakdown of their distinct purposes:

1. Code Repositories and Versioning Systems (TFS, GitHub, etc.):

Source Code Management & History: These systems are designed to store your automation project’s source code. They keep a detailed history of all the changes made over time, allowing you to roll back to previous versions if needed.

Collaboration & Branching: When working with a team, version control solutions enable multiple developers to work on the same project simultaneously. They support branching and merging, making it easier to manage parallel development efforts and integrate contributions without conflicts.

Code Review & Quality Assurance: Tools like GitHub and TFS often integrate with continuous integration/continuous deployment (CI/CD) pipelines and offer features for code reviews, automated testing, and quality controls. This helps ensure that the code is reliable before it’s deployed to production.

2. UiPath Orchestrator (Cloud or On-Premises):

Deployment & Management: Orchestrator is primarily focused on managing your automation workflows and robots. Once you’ve developed and tested your process locally (using version control), you publish it to the Orchestrator.

Scheduling & Monitoring: It allows you to schedule, run, and monitor your automations in a production environment, managing resources and handling exceptions or errors during execution.

Centralized Control: Orchestrator provides a centralized dashboard to track process performance, view logs, and manage licenses which is ideal for production environments.

Why Both Are Needed:
Despite the convenience of a cloud-based Orchestrator, version control systems address a fundamentally different layer of the development process:

Development vs. Deployment: Version control systems are all about managing the source code and development lifecycle, while Orchestrator is about deploying and running that tested code on robots.

Collaboration and Change Management: Even when your automation is in production through Orchestrator, you still need rigorous versioning and collaboration processes (maintained in GitHub or TFS) to ensure that any changes are systematically managed, tested, and reviewed before deployment.

Risk Management: With version control, you have a safety net; any erroneous changes can be tracked, audited, and rolled back if necessary without impacting the live production environment managed by Orchestrator.

In summary, while Orchestrator is excellent for managing, deploying, and monitoring your operational processes in the cloud, code repositories and versioning systems are indispensable for managing the development process, ensuring quality, and facilitating team collaboration.

This separation of concerns is a best practice in modern software and automation development, ensuring both reliability in production and efficiency during development.

LLM helped me to write this but it’s validated by me

Thanks alot Ashok Karale for your instant help😊!!

1 Like

Glad to hear that @mail4bobbysam.

Do let me know if any additional question on this.

If no more questions, kindly close the thread by marking my answer as solution so it will be helpful to other community members as well.

Cheers!!

@mail4bobbysam

In simple terms…orchestrator is not to host the code but to host the packages and run the process

generally you would use different tenants to run process and code would be same and needs to be migrated from one to another..all of the migration and code repositiories come into picture here as code would be same but the tenants for dev,QA and prod differ where only apckages would be present and run

cheers