Setting up Teamcity as CI CD on self-hosted server with reverse proxy (nginx)

As part of automating things, I have setup my CI-CD system using Jetbrains Teamcity on my self-hosted server. As the first step I am setting the CD-CI piple for my blog. I am documenting my steps for future reference. Why Teamcity? Mostly because it was the first one that worked as I wanted right on the initial try, the concepts matched my requirements of what I wanted to do with a CD server.

Google Cloud SDK Auto Updated

The script I use for keeping Google cloud SDK auto-updated:

Visual Studio Code Settings

User Setings Below are few user preferences I use that defer from the default 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 { // Controls the font family.

Laravel Mix and Path Settings

A quick refernece for myself, when setting up new asp.net core spa and VueJS based project along with laravel mix the following setting helps in translating the path resolution correctly: 1 2 mix.setResourceRoot('/dist/') .setPublicPath(path.normalize('wwwroot/dist')); so a typical laravel-mix webpack.mix.js file for asp.net core and vue js project (especially with admin-lte) would look like: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 mix.

Publishing aspnet core web app to linux

Step 1 : Publish your project to a proper directory On researching a subfolder under /var seems to be a good candidate. So, create a suitable subfolder and copy the published app files to it. For future reference lets assume we have copied the app to /var/myproject folder. Step 2: Configure reverse proxy 1 2 > sudo apt-get install nginx > sudo service nginx start update /etc/nginx/sites-available/default to

Adding Service Account in Linux

1 useradd --system [--no-create-home] <account name> from the man pages If called with one non-option argument and the –system option, adduser will add a system user. By default, system users are placed in the nogroup group. To place the new system user in an already existing group, use the –gid or –ingroup options. To place the new system user in a new group with the same ID, use the –group option.

NuFetch – Nuget package with dependency downloader

At last got some free time and got a chance to solve a problem I was having; downloading NuGet packages along with its dependencies for hosting them in an internal network NuGet server. It was a big pain to download a package along with its dependent packages till now, you have to either use Chrome/Firefox plugin or the NuGet package manager and download the depedencies one after another. To address this I spent the last week cooking up a package downloader which takes care of the dependencies along with the main package and stores them in a folder of your choice.