Hi Milan, I discovered your channel a few weeks ago and am totally enthusiastic. That's why I immediately became a Patreon member to support your excellent work - and of course to have access to your source code 😉. With your targeted and concise way you fill exactly the knowledge gaps that certainly very many of us (I mean experienced developers especially in enterprise area) currently - still - have, without going to the absolute beginner level every time. I know what I am talking about, I have been in the business for over 30 years. Above all, this saves numerous trial & error rounds and thus precious time. You get a very good foundation from which you can then go deeper. Your short videos were in many cases already much more valuable and substantial for me than many an hour-long tutorial in Pluralsight, Udemy or here in RUclips. It assumes a lot of knowledge and also practical experience. But that's what makes your content so valuable for many developers. Straight to the point, the essential knowledge, perfect! Every minute of your videos is worth its weight in gold. Your speed is no problem at all, thanks to RUclips. 😊 Please keep doing exactly what you're doing. I'm already really looking forward to what's to come. It will be a feast! Cheers, Felix.
Hi Felix, I had a rough day yesterday and saw your comment in the evening. It's an understatement to say that you cheered me up a little. 😊 I really appreciate your kind words, and promise to keep on making good videos (and improving with each one). Stay awesome!
I was just thinking to create a video on the same subject and I found yours. Now I gave up my idea as I think you created an even better from the one I could have created.
Nice Video Millan. Following the same series, how about next on CI/CD using Azure DevOps with different environments and their respective appsettings/keyvaults configurations? 😊😊
Milan, amazing work. Can you let me know if you are planning to have that video where you cover the unit tests and coverage bits as well using github actions. Again, amazing work.
What do you prefer? Publishing as "code" or a docker container? I'm sure it's easier to develop locally using docker, but does it make a difference when deploying to azure?
@@MilanJovanovicTech When would you decide to deploy an image instead of the code approach in the video? I know the advantages of docker when running locally, as well as deploying it to hosting services that don't have native .NET support, so you just spin up the container. But on azure?
@@MilanJovanovicTech Is there a way to create an azure publish profile from the yaml file directly rather than first creating it in azure and then using it in yaml?
I recorded one this week, but it won't come out until a few weeks from now :) Though I was using the ReSharper code coverage tool. You can also use SonarQube for that.
I use Resharper and DotCover for seeing that in the IDE. I wanted to be able to see it in some report on the build so therefore in the github action workflow running the tests on a PR for example. Thank you for your videos. They are simple and to the point so that you get something working and then just develop from there according to your needs.
@@MilanJovanovicTech 2K & 4K I do understand export time will be very high. If it's too much of time consuming then we don't mind 1080p, your content is more important than the resolution 🙂
Hi Milan, thanks for the great video. Just a quick clarification if you don't mind. Did you create the package path or does it exist somewhere with your working directory?
Hello friend, conrgrats for your video. I followed this one, and i get an error, such as: Error: Deployment Failed with Error: Error: No package found with specified pattern: ./publish How to know What the specifict path is? how to recognize it? I hope your answer,
@@MilanJovanovicTech Hello Milan, thanks for your quick response. I could resolved that. Milan in some part of your video, you explained about the second part of video. This part is relationed to testing project. Can you share me that video. On the other hands, you have some video about setup database? I hope your answers. Regards, Nelson
how to separate them into different jobs publish and another implement? I tried to do it but I have an Error: Deployment Failed, Error: No package found with specified pattern: ./publish
@@MilanJovanovicTech just waiting whether you will use self-hosted runner or some external action like "appleboy/ssh-action". plus please cover SSH deployment instead of azure app service
@@MilanJovanovicTech idk I try deploying with vsc and then with github actions and that's happened. And I did in that way because the GitHub actions doesn't finish as well with the .zip package
Hello Milan, i need a little help about deployment. I have a dotnet web api project which I use docker compose for deploymet. In compose file i defined my app and sql server db as containers. I wanna deploy this project on Azure via github actions. How workflow file should be defined ? Thanks
Hi Milan, great video. I am building on the solution to include github secrets to create secure app accessible environment variables for my firebase config and more. Struggling to get the variables to flow through - have you done anything similar?
What about uploading and downloading artifacts? What are they and when to use them? Actually i want to setup this for an umbraco project. And i wanna know the pest way to do this and ways for cost cutting in azure?
@@MilanJovanovicTech thank you very much this also worked for me, actually my project was deployed using ci cd as well i had an issue when browsing tha app, it showed 500 then i added some environment variable too display proper error details and eventually it was related to a project not referring properly so fixed it
@@MilanJovanovicTech Can u please make a series on azure. Your videos are simple to understand. I love them.. Infact everyone loves them. I have an umbraco project to be deployed on azure.. And i am new to all this. Wanna learn load balancing etc Cost cuts
Hello Milan, this is really a gem and I followed your video and went very close to the deployment on Azure. I watched your video very carefully and when I go to download the publish profile from my Microsoft Azure account it showed a message that "Basic Authentication is disabled.". So kindly help me out with this. Thanks
I tried to deploy using azures wizard for github. It spits out a nice pipeline on github but I just get an error that project file is not found. Do you HAVE to use a solution file with GitHub actions or should it also work with csproj files?
@@MilanJovanovicTech I have triple checked file paths, everything seems to be in order. This worked previously with a Azure Devops Git repo -> Azure with just csproj file and I havent changed any paths, so its probably a requirement from Github actions that the solution file is there. Will let you know
Hi Milan, thank you for the awesome toutrials, I almost watched all your youtube videos in a couple days I have a question on CI/CD, can I apply the same steps to publish web API project into virual machine and that app hosted on IIS? Currently, I'm publishing the app manually using visual studio, can I apply the same GitHub aciton to publish it instead of manually doing it, because visual studios uses publish profile as well to publish into VM Thank you, keep being awesome
The last step is using a GitHub action the deploy to Azure. You will need something different to deploy to IIS. Maybe this can be helpful: devopsjournal.io/blog/2020/11/24/github-actions-with-private-runner-iis
Hello guys! Am I the only one who gets an error saying "Deployment Failed, Error: Publish profile is invalid for app-name and slot-name provided." with this code? I'm pretty sure I configured everything the way Milan did. Cheers from Bosnia! ☺
@@MilanJovanovicTech I looked into the source code you kindly provided and followed your steps to a letter. I've read that the slug name plays some role in this so i added it as well ("production" seems to be the default). No amount of researching seems to help. Thank you for your response!
Hi @Milan Jovanović I would to ask if it is possible deploying multiple Service that are within one Solution. Do we use the same method that you have used here?
Want to master Clean Architecture? Go here: bit.ly/3PupkOJ
Want to unlock Modular Monoliths? Go here: bit.ly/3SXlzSt
Hi Milan, I discovered your channel a few weeks ago and am totally enthusiastic. That's why I immediately became a Patreon member to support your excellent work - and of course to have access to your source code 😉.
With your targeted and concise way you fill exactly the knowledge gaps that certainly very many of us (I mean experienced developers especially in enterprise area) currently - still - have, without going to the absolute beginner level every time. I know what I am talking about, I have been in the business for over 30 years.
Above all, this saves numerous trial & error rounds and thus precious time. You get a very good foundation from which you can then go deeper.
Your short videos were in many cases already much more valuable and substantial for me than many an hour-long tutorial in Pluralsight, Udemy or here in RUclips.
It assumes a lot of knowledge and also practical experience. But that's what makes your content so valuable for many developers. Straight to the point, the essential knowledge, perfect! Every minute of your videos is worth its weight in gold. Your speed is no problem at all, thanks to RUclips. 😊
Please keep doing exactly what you're doing. I'm already really looking forward to what's to come. It will be a feast!
Cheers, Felix.
Hi Felix,
I had a rough day yesterday and saw your comment in the evening. It's an understatement to say that you cheered me up a little. 😊
I really appreciate your kind words, and promise to keep on making good videos (and improving with each one).
Stay awesome!
odličan video Milane - kratko, jasno i efikasno. 🚀
Hvala puno! :)
the best explanation about CI/CD Pipeline using GitHub Actions! Thanks Milan 🙂
My pleasure!
I was just thinking to create a video on the same subject and I found yours. Now I gave up my idea as I think you created an even better from the one I could have created.
There's never enough videos on a topic, trust me!
Love your videos. It's great that you put the Azure topic on the table. Wait for more!
Thanks, Radek. Is Azure your primary choice?
@@MilanJovanovicTech if you think about a cloud provider - yes, Azure is my primary choice
it is a tip-top explanation, thanks a bunch Milan!
Thanks Christian!
A video about testing + code coverage report configuration in CI/CD pipeline would be delightful!
I did something with CodeCov because it was free, so might do that 🤔
I completely agree. Shall we look forward to it?
Amazing job @Milan! Very well explained at right pace.
Many thanks!
Awesome video as always. Good job
Thank you! 😁
Another comprehensive but concise tutorial - thanks
Glad you liked it 😁
Nice Video Millan. Following the same series, how about next on CI/CD using Azure DevOps with different environments and their respective appsettings/keyvaults configurations? 😊😊
I'll think about it, not a bad idea
I would welcome something similar or just general guidance on dealing with multiple environments and how this is managed within the code / config
It was very very good video. Thank you Milan !
Glad you liked it!
Definitely this will force me to move my Github projects to Azure :)
Azure is great if you're using .NET
Thank you so much Milan I need it because today I have setup Azure server for the API and was thinking how to use CI/CD pipline.
🥰
If you're using GitHub, it should be straightforward 😁
Keep up the good work man, great job ❤️❤️
Glad you like it!
Milan, amazing work. Can you let me know if you are planning to have that video where you cover the unit tests and coverage bits as well using github actions. Again, amazing work.
Thanks for reminding me about that, I'll work on something :)
What do you prefer? Publishing as "code" or a docker container? I'm sure it's easier to develop locally using docker, but does it make a difference when deploying to azure?
You can deploy an image and run it inside a container
@@MilanJovanovicTech When would you decide to deploy an image instead of the code approach in the video? I know the advantages of docker when running locally, as well as deploying it to hosting services that don't have native .NET support, so you just spin up the container. But on azure?
Awesome video!!! Clear and very easy to follow and to the point. 3 thumbs up 🙂
Thank you so much! 😊
@@MilanJovanovicTech Is there a way to create an azure publish profile from the yaml file directly rather than first creating it in azure and then using it in yaml?
hi, will love to see the step where you add the test too. thanks
Covering that in a future video
Great informative video! To the point. thanks.
You're more than welcome 😁
Very useful video. Def saved for later use, will come in handy I am sure.
Automation is very fun 😁
Awesome comprehensive video. Thanks for the information. 👏👏👏
Glad it was helpful!
I really like your enthusiasm ! thank you !
Sure thing, glad you enjoyed this one 😁
Thanks for this Video. I subscribed and liked your video. Do you have one for running tests and seeing the coverage as you mentioned in this video?
I recorded one this week, but it won't come out until a few weeks from now :) Though I was using the ReSharper code coverage tool.
You can also use SonarQube for that.
I use Resharper and DotCover for seeing that in the IDE. I wanted to be able to see it in some report on the build so therefore in the github action workflow running the tests on a PR for example.
Thank you for your videos. They are simple and to the point so that you get something working and then just develop from there according to your needs.
@@valy_berea I built something like that before with CodeCov 😁 I'll make a video about it then!
Hi Milan!
Can U video about what is your choice about implementing background task ?
Have U ever use hangfire ?
I have a video about the Outbox pattern using Quartz, check that out
Hi, is it possible to automate the step to get publish profile. Manually adding the publish profile is tedious task if we have alot of web apps
I'm not sure, to be honest. I don't know a way out of the box.
Thanks Milan!
Sure thing :)
simple explanitaion and easy to follow, but my project requires other micro services and consul like containers. How to do it with this?
Look up IaC
Exceptional videos.
Would like to request for higher resolution for future videos 🙂
What do you mean by higher resolution? 🤔
It's 1920x1080
@@MilanJovanovicTech
2K & 4K
I do understand export time will be very high.
If it's too much of time consuming then we don't mind 1080p, your content is more important than the resolution 🙂
Great explanation
Thanks!
Good one Milan.
Thank you!
Hi Milan, thanks for the great video. Just a quick clarification if you don't mind. Did you create the package path or does it exist somewhere with your working directory?
Working dir
Another banger video! You should do a Azure Repos version! nonetheless good work !
Bangers is all I produce 😂
I have to add Azure DevOps to the list it seems, it was asked more than once.
Hi milan,
You did a great video CI/CD.
and Please do video on database configurations and own domain addition for accessing deployed api.
Noted!
i like your videos , you have a great content , i consider you as my mentor
It is an honor :)
Hello friend, conrgrats for your video.
I followed this one, and i get an error, such as:
Error: Deployment Failed with Error: Error: No package found with specified pattern: ./publish
How to know What the specifict path is? how to recognize it?
I hope your answer,
Looks like something with the .yml file?
dotnet publish is expecting something in the ./publish path, but there isn't anything there.
@@MilanJovanovicTech Hello Milan, thanks for your quick response. I could resolved that.
Milan in some part of your video, you explained about the second part of video. This part is relationed to testing project.
Can you share me that video. On the other hands, you have some video about setup database?
I hope your answers.
Regards,
Nelson
how to separate them into different jobs publish and another implement? I tried to do it but I have an Error: Deployment Failed, Error: No package found with specified pattern: ./publish
What are we separating exactly?
@@MilanJovanovicTech Deployment
would love to add deployment through docker images part as well
That'd be interesting for a future video
@@MilanJovanovicTech just waiting whether you will use self-hosted runner or some external action like "appleboy/ssh-action". plus please cover SSH deployment instead of azure app service
Great 🚀🚀! Git hub code will always helpful to all .
need project using clean architecture sessions A to Z with CI/CD. 😁
Care to explain more what kind of project you want to see?
What ticketing system do you prefer?:D
Don't prefer any of them, but I've used Jira most often
Hi Milan. It builds fine, but now I get the error "Unable to resolve action actions/webapps-deploy, repository not found"
I think you have to target the latest version: azure/webapps-deploy@v2
Hi Milan is it possible to deploy a .NET core Web API built with clean architecture without using CI/CD Pipeline?
Yeah, deploy it manually
Awesome Video !! keep it up ..
Thanks, will do!
Hi @MilanJovanovicTech That is a really good video. Love to see it
Wouldn't it work exactly the same?
Thanks, your config worked
Glad I could help :)
Something were wrong with me, the azure function is deleting itself after the action is complete:(
How is that possible? 🤔
@@MilanJovanovicTech idk I try deploying with vsc and then with github actions and that's happened. And I did in that way because the GitHub actions doesn't finish as well with the .zip package
Hello Milan, i need a little help about deployment.
I have a dotnet web api project which I use docker compose for deploymet. In compose file i defined my app and sql server db as containers. I wanna deploy this project on Azure via github actions. How workflow file should be defined ? Thanks
Not really sure
Thank you so much for sharing your knowledge
Glad it was helpful!
Hi Milan, great video. I am building on the solution to include github secrets to create secure app accessible environment variables for my firebase config and more. Struggling to get the variables to flow through - have you done anything similar?
Yeah. They should be accessible via {{secrets.YOUR_SECRET_NAME}}
What about uploading and downloading artifacts? What are they and when to use them?
Actually i want to setup this for an umbraco project. And i wanna know the pest way to do this and ways for cost cutting in azure?
Well this is the base case, for a more complex scenario you'd need to customize it
@@MilanJovanovicTech thank you very much this also worked for me, actually my project was deployed using ci cd as well i had an issue when browsing tha app, it showed 500 then i added some environment variable too display proper error details and eventually it was related to a project not referring properly so fixed it
@@MilanJovanovicTech
Can u please make a series on azure. Your videos are simple to understand. I love them.. Infact everyone loves them.
I have an umbraco project to be deployed on azure.. And i am new to all this. Wanna learn load balancing etc
Cost cuts
Please how can I deploy my DDD project to azure
Did you watch the video?
Yes please i have deployed d project but i am faci g method not allowed and internal server error after
But works normal on my local pc
Hello Milan, this is really a gem and I followed your video and went very close to the deployment on Azure. I watched your video very carefully and when I go to download the publish profile from my Microsoft Azure account it showed a message that "Basic Authentication is disabled.". So kindly help me out with this. Thanks
No idea, to be honest. How is that possible if you're logged into Azure?
@@MilanJovanovicTech Yeah I figured out the issue and resolved it. Thanks for your instant reply.
I tried to deploy using azures wizard for github. It spits out a nice pipeline on github but I just get an error that project file is not found. Do you HAVE to use a solution file with GitHub actions or should it also work with csproj files?
Maybe the file paths are wrong/missing? You could also try it with a .sln file and see if it makes a difference
@@MilanJovanovicTech I have triple checked file paths, everything seems to be in order. This worked previously with a Azure Devops Git repo -> Azure with just csproj file and I havent changed any paths, so its probably a requirement from Github actions that the solution file is there. Will let you know
Awesome same as always 👍
Thanks again!
thanks for the tutorial.
You're welcome!
Didn't smash the like button but Milan got the strength to finish the video anyway
Just joking, take my like ;-)
Thanks Marcus 🤣
I had a few sips of coffee, and that got me throuhh
Hi Milan, thank you for the awesome toutrials, I almost watched all your youtube videos in a couple days
I have a question on CI/CD, can I apply the same steps to publish web API project into virual machine and that app hosted on IIS?
Currently, I'm publishing the app manually using visual studio, can I apply the same GitHub aciton to publish it instead of manually doing it, because visual studios uses publish profile as well to publish into VM
Thank you, keep being awesome
The last step is using a GitHub action the deploy to Azure.
You will need something different to deploy to IIS. Maybe this can be helpful:
devopsjournal.io/blog/2020/11/24/github-actions-with-private-runner-iis
@@MilanJovanovicTech Thank you appreciate your effort, will check it out
Thank you for this video
Glad you enjoyed it!
Great 👍👍
Thank you 👍
nice one
Thanks!
How to become a patreon member?
If you can't access the page, try using a VPN
Hi Milan,
I really like your videos, Can you do the same for AWS ec2 (linux/windows) as well?
Perhaps, I'll see how to fit it in
Hello guys! Am I the only one who gets an error saying "Deployment Failed, Error: Publish profile is invalid for app-name and slot-name provided." with this code? I'm pretty sure I configured everything the way Milan did. Cheers from Bosnia! ☺
The source code for this video is public: github.com/m-jovanovic/ci-cd-example
Did you add the publish profile as a secret?
@@MilanJovanovicTech I looked into the source code you kindly provided and followed your steps to a letter. I've read that the slug name plays some role in this so i added it as well ("production" seems to be the default). No amount of researching seems to help. Thank you for your response!
I have the same error and couldn't fix it ,can i have any help please
Thank you!!
Any time! 😁
Why not Azure DevOps CI/CD...
GitHub is my repository of choice, so it made sense to use GitHub Actions
How can I buy your packages??
I'm currently in Iran. can I buy your package with USDT??
Sadly, no
@@MilanJovanovicTech
😔
Perfect !!
Thanks!
Thank you
You're welcome
Hi @Milan Jovanović
I would to ask if it is possible deploying multiple Service that are within one Solution. Do we use the same method that you have used here?
Yes, but you'll need separate Azure App Service instance + publish profiles in the build pipeline.
I have tried this but won't work
What's not working?
@@MilanJovanovicTech when cicd runs it deploys whole code insted of its build/published items.
🚀
To the moon
thank you, save me
Sure thing :)
helpful
Glad it helped!
Deploy Your Application To Iis Using GitHub Actions
Check this? github.com/marketplace/actions/iis-deploy
Bro i had some probelms with "actions/webapps-deploy@v2". "azure/webapps-deploy@v2" works for me.
Typo
Thanks for this video Milan
Don't mention it 😁