How to apply DevOps on SAS Viya 4 for sascode ?
Hi everyone,
We are deploying a SAS Viya 4 2021.2.2 on a client using two environments on Azure:
DEV and PROD
We need to move sascode (proc sql/fedsql, proc cas.., datasteps, pythoncode..., etc) from DEV to PROD using a CI/CD pipeline as per client requirements.
Could we do that using Azure DevOps ?
Do we need configure Jenkins on Viya ?
Do you have any samples or docs to help ?
I checked these posts but they are for SAS 9.4 and Viya 4 architecture is different:
Regards,
Valim
We are using Azure DevOps with SAS 9.4, but using it via MS Visual Studio which works well with SAS Enterprise Guide. We use it for change management of SAS programs mostly and not other SAS content.
With Viya 4, SAS Studio is only user development environment but in principal I don't see any reason why DevOps wouldn't work in a similar way. Being cloud-based, most likely you could work directly with DevOps without using MS Visual Studio as well.
Edit: Did a bit more digging and found that Git is integrated into Viya 4 SAS Studio. So as I understand it, DevOps would provide the remote Git repository from which you would clone a local repository for each SAS Studio user. Once you have pushed your changes back to the remote DevOps repository, then you can create pull requests to merge those and also run DevOps pipelines to move changes into production.
Thanks for helping. I gonna check "Git is integrated into Viya 4 SAS Studio". I'm new to SAS Viya. 🙂
What do you mean specifically by "dev ops"? Are you talking about some specific product? Or is just short hand for following some type of development cycle? Perhaps using some standard operating procedure or working practice that they follow?
The "Dev Ops", I took the client point of view. He's using Azure DevOPS solutions to build data pipelines for Databricks and Azure Synapse and he requests we to add sas viya as part of solution.
So I need to understand:
Do I need install jenkins on Viya 4 or is there an built-in similar to jenkins available?
Any best practices approach to follow from SAS?
Sorry if this sounds simple but I'm new to SAS Viya and I need to draw this architecture and how it works.
Hi Valim,
You may find some ideas here:
and more specifically for SAS code here:
Yes, you can use Azure DevOps. You need a self-hosted agent (a Linux machine) that can "communicate" with SAS Viya DEV and with SAS Viya PROD.
From the Azure Pipeline, you can then pass SAS Viya CLI commands or SAS Viya REST APIs.
The SAS code can be stored in the Git repository where you have your Azure Pipeline YAML.
Bogdan
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 16. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Select SAS Training centers are offering in-person courses. View upcoming courses for: