Thanks. Many years ago I used Jenkins but I didn't want to install it on my Azure VM so I started writing a PowerShell script on my VM to: - connect to my repo - pull code - move the built files to IIS directory Problem is I had to build my projects locally first and include them in source so I started thinking I can install MSBuild and Node on my VM and use the PowerShell to build my dotnet and Node project. Then I remembered Azure DevOps and found this... Thanks a lot. This worked first time for me.
Thanks for the video. I see that you had put the trigger to none. What would be the code for trigger if we have any check in each and every time in our code ? The build pipelines will be created each and every time dynamically and executes it ?
learn.microsoft.com/en-us/azure/devops/pipelines/process/pipeline-triggers?view=azure-devops - This has some info. You can specify which branches to trigger against.
They are set in the YAML file under the variables. There is also a place to do it in Azure DevOps which is benefical if you are inputting sensitive information that you don't want in your repo.
Okay so I followed this to the letter. The only thing I changed was the vmImage is ubuntu-latest in my case. I also updated the variables to match my .sln and .csproj files, however I am not seeing any artifacts being created. When it gets to the "Publish build artifacts" step I see an error stating ##[warning]Directory '/home/vsts/work/1/a' is empty. Nothing will be added to build artifact 'AzureTestProject'. I have been banging my head against a wall trying to get this to work every day all week now. Any tips would be super appreciated. I will buy you a beer right now
Thank you very much for your videos. All of them are very useful. I'd like to confirm if my understanding is correct as I'm very new to this if you don't mind. Most of the time, if we don't need complicated access during the build, we can use Azure Managed agent to build our app. In this case, we only need 1 self-hosted agent here which is for deployment in the app server. Is this correct?
Yes if you can use an Azure managed agent I would use always use that. You can easily install supported .NET SDK's onto them through pipeline tasks. If you are deploying to IIS then you'll need a way of deploying your code and the best way is to use it as the agent.
Hi kubritish, The publish task builds the app before publishing it, so there is no need to add a separate build task. If the build fails, the publish task fails. Hope that answers your question.
Hi Being Random, Publish goes ahead and publishes the .NET application. Whereas, Publish Build Artifacts publishes the files to an Azure Artifacts file that can be used later on for deployment.
Hi there, I've been trying to recreate and run this pipeline but am facing errors. The one error I keep getting is: Dotnet command failed with non-zero exit code on the following projects : D:\a\1\s\RoundTheCode.AzureTestProject.sln. This error pops up in the Test task. I've emulated what you've done and also referred to the updated changes on Github. Are you able to help?
Yes, the solution filepath is incorrect. It should be this if you are using my example as it is: D:\a\1\s\RoundTheCode.AzureTestProject\RoundTheCode.AzureTestProject.csproj. When running the tests, check that inputs:projects is referencing the correct solution path.
Amazing. Can you also do the same for Golang, Python, nodejs applications nobody did those by one TH-camr if you can awaiting and useful content. Thank a lot Sir
@@RoundTheCode can you show us a Yaml pipeline from scratch for building a .net app and delivery of the app Yaml pipeline. And using docker file to build the image and push to acr
my problem with pipelines is the stages and tasks , there is no stable rules , everyone reference to projects like they want , put them in variables or references to everything that contains .csproj for example , i will say that the problem is more with configurations standards than understanding what are pipelines used for , i hope some of you will get what i’m saying , btw thank you your courses are incredible
Thanks. Many years ago I used Jenkins but I didn't want to install it on my Azure VM so I started writing a PowerShell script on my VM to:
- connect to my repo
- pull code
- move the built files to IIS directory
Problem is I had to build my projects locally first and include them in source so I started thinking I can install MSBuild and Node on my VM and use the PowerShell to build my dotnet and Node project.
Then I remembered Azure DevOps and found this...
Thanks a lot. This worked first time for me.
Good to hear Andy.
You are incredibly helpful. My employer and I thank you!!
Thanks Austin.
Thanks very much. Very helpful and straight to the point
Thanks for the comment.
Thanks for the video. I see that you had put the trigger to none. What would be the code for trigger if we have any check in each and every time in our code ? The build pipelines will be created each and every time dynamically and executes it ?
learn.microsoft.com/en-us/azure/devops/pipelines/process/pipeline-triggers?view=azure-devops - This has some info. You can specify which branches to trigger against.
I love your presentation. Thanks for this. New subscriber here
Thanks Godwin Yoh.
thank you very much man!
You're welcome!
You have a new subscriber! Thank you for your video
Awesome, thank you!
Thanks a lot
where i can find the variables values?
They are set in the YAML file under the variables.
There is also a place to do it in Azure DevOps which is benefical if you are inputting sensitive information that you don't want in your repo.
Doubt please , Did we use same YAML file tasks for .NET and .NET Core , Is they are same or different .
You can't use the DotNetCoreCLI@2 for .NET Framework tasks. That's specific to .NET Core. I think you can use VSBuild@1 for .NET Framework tasks.
So easy explained, thank you!
Thanks Luifa. Glad you found it useful.
Hi can you give me the .net sample code repo for practice CI CD
it would be helpful to me
You can download the code example here:
www.roundthecode.com/dotnet-code-examples/azure-devops-pipeline-example-dotnet-project-ci-cd
Okay so I followed this to the letter. The only thing I changed was the vmImage is ubuntu-latest in my case. I also updated the variables to match my .sln and .csproj files, however I am not seeing any artifacts being created. When it gets to the "Publish build artifacts" step I see an error stating
##[warning]Directory '/home/vsts/work/1/a' is empty. Nothing will be added to build artifact 'AzureTestProject'.
I have been banging my head against a wall trying to get this to work every day all week now. Any tips would be super appreciated. I will buy you a beer right now
If you want to share your YAML file, I might be able to help.
Thank you very much for your videos. All of them are very useful. I'd like to confirm if my understanding is correct as I'm very new to this if you don't mind. Most of the time, if we don't need complicated access during the build, we can use Azure Managed agent to build our app. In this case, we only need 1 self-hosted agent here which is for deployment in the app server. Is this correct?
Yes if you can use an Azure managed agent I would use always use that. You can easily install supported .NET SDK's onto them through pipeline tasks. If you are deploying to IIS then you'll need a way of deploying your code and the best way is to use it as the agent.
Very helpful. Thank you!
Glad it was helpful!
The best video, that's all I can say
Thanks for the comment.
Is this works on .net framework project
This demo only works with .NET Core as a number of tasks in the YAML file are specific to .NET Core.
Were you not supposed to add the build task aswell ?
Hi kubritish,
The publish task builds the app before publishing it, so there is no need to add a separate build task.
If the build fails, the publish task fails.
Hope that answers your question.
@@RoundTheCode Thank it for clarifying
What's the difference between Publish vs Publish Build Artifacts task?
Hi Being Random,
Publish goes ahead and publishes the .NET application.
Whereas, Publish Build Artifacts publishes the files to an Azure Artifacts file that can be used later on for deployment.
Hi there, I've been trying to recreate and run this pipeline but am facing errors. The one error I keep getting is: Dotnet command failed with non-zero exit code on the following projects : D:\a\1\s\RoundTheCode.AzureTestProject.sln. This error pops up in the Test task. I've emulated what you've done and also referred to the updated changes on Github. Are you able to help?
Yes, the solution filepath is incorrect. It should be this if you are using my example as it is: D:\a\1\s\RoundTheCode.AzureTestProject\RoundTheCode.AzureTestProject.csproj.
When running the tests, check that inputs:projects is referencing the correct solution path.
@@RoundTheCode so how to correct it?
God bless you
Thanks this is great
Thanks Casey
Amazing. Can you also do the same for Golang, Python, nodejs applications nobody did those by one TH-camr if you can awaiting and useful content. Thank a lot Sir
Glad you like the content. Unfortunately, I know very little about these technologies so it's not something I can do.
@@RoundTheCode can you show us a Yaml pipeline from scratch for building a .net app and delivery of the app Yaml pipeline. And using docker file to build the image and push to acr
Thank you😊
You're welcome 😊
Excellent thank you
Thanks Satori.
nice..thanks
Thanks for the comment.
my problem with pipelines is the stages and tasks , there is no stable rules , everyone reference to projects like they want , put them in variables or references to everything that contains .csproj for example , i will say that the problem is more with configurations standards than understanding what are pipelines used for , i hope some of you will get what i’m saying , btw thank you your courses are incredible
Yes I think you have to set standards about how apps and pipelines are configured as there is often more than one way of doing things.
@@RoundTheCode thank you for the hint , as a junior i surely need to be more flexible and try more and more
cool vids thank you
Thanks Zerglrisk.
i feel your face in full screen very intrusive, please stop doing that, but thanks for the rest ! :)
Thanks for your comment. It has been noted.
Hi sir i need your LinkedIn id . I need your help please provide me i will ping you. Just some doubts to clarify
Go to www.roundthecode.com/linkedin which will redirect you to my LinkedIn page.