Tuesday, November 22, 2022

Enabling Clean Deployment with zipDeploy in Azure App Service Deploy Task

Azure App Service deploy task capable of doing several deployments such as web deploy, and zip deploy. Web deploy method supports clean deployments to the Azure app service app, but zip deploy doesn't have option to do a clean deployment. But we may want to use zipDeploy specially with Linux hosted agents as described in the post here

To enable clean deployment with zipdeploy, we need to add cleanup step to deployment pipeline before doing the deployment with Azure app service deploy task.  This blog has a PowerShell script which can be used to cleanup wwwroot folder of the app service before new deployment. We can modify the script in that blog, to work with multiple slots in Azure app services and use as a task in Linux agents.

Monday, November 14, 2022

Resolve "Error: Publish using webdeploy options are supported only when using Windows agent"

This blog explains how to resolve "Error: Publish using web deploy options are supported only when using Windows agent", in Azure App Service deploy task, with web deploy as deployment type and Linux as release agent.

Error: 

"Publish using webdeploy options are supported only when using Windows agent"

Wednesday, November 9, 2022

Enable Debug Logging in GitHub Actions

Trouble shooting automation pipelines are getting easier when we have enough details of the steps in the logs. In GitHub workflows, we can enable step debug logs to get detailed logs for job. This blog explains how to enable step debug logging in GitHub workflows.

Before enable step loggings, you will get less logs as shown in below image.

Monday, October 24, 2022

Deploy AKS Cluster with GitHub Actions

GitHub actions facilitate automation of software workflows to enable continuous delivery and deployment. It has facility to customize your own workflows or utilize built-in workflows. This blog explains how to deploy Azure Kubernetes Cluster with Microsoft Create AKS Cluster action in GitHub Marketplace.

Pre-requisites:

  • GitHub repository
  • Basic knowledge on YAML build pipelines.

Let's get started.

Sunday, October 23, 2022

Find Network Adapter Status with PowerShell

This blog explains how to verify network adapter is enabled or disabled in Windows machine using a PowerShell script.

Following is the look up values for net connection status for Disconnected and Connected.

Disconnected

 0

Connected

 2


Thursday, October 20, 2022

GitHub Actions Secrets

Continuous integration and continuous deployment are well-known process in today's Software world which supported by several software workflow automation tools. No matter which tool you use, the secrets such as passwords should be hidden and secured. 

GitHub actions is a feature available in GitHub which can be utilized to create CI CD pipelines for the software products. This blog explains how to manage secrets in GitHub Action pipelines.

Pre-requisites: GitHub Repository 

Monday, September 19, 2022

Hiding Outputs of PowerShell

There might be situations where you want to hide outputs from PowerShell scripts. This blog explains how to achieve that.

Following code sample is used to connect with azure portal and show the resource group details. To avoid output values visible in the logs, we can add | Out-Null as shown in the following sample. You can learn more about Out-Null from here.

Wednesday, September 14, 2022

Resolve "maximum shards open; [type=validation_exception]" in Chef Automate Dashboard

This blog explains how to fix Chef dashboard compliance failure due to exceeding shards limit, which may give you an error similar to below.

Issue: Chef automate compliance node connection failing with following error message.

invalid output Report processing error: rpc error: code = Internal desc = InsertInspecReport: elastic: Error 400 (Bad Request): Validation Failed: 1: this action would add [10] total shards, but this cluster currently has [998]/[1000] maximum shards open; [type=validation_exception]