Sign in

Marc Rufer

@rufer.be
375 followers 222 following 67 posts

Software Engineer 👨‍💻 | Microsoft MVP 🇨🇭 | Sonar Navigator 🧭 | Darts enthusiast 🎯 | Father of two 👦 blog.rufer.be #devops #devsecops #appsecurity #webdev #azure #dotnet

PostsRepliesMedia
Marc Rufer @rufer.be · 24/08/2026
Blogged: [HOWTO] Using Path.Combine correctly to ensure cross-platform compatibility
blog.rufer.be
[HOWTO] Using Path.Combine correctly to ensure cross-platform compatibility
I guess every .NET developer is familiar with the Path.Combine method. But, is every .NET developer using it correctly to ensure its result is cross-platform compatible? I guess no as I was one of these developers who didn't use it correctly. Did you ever see something like this? var arbitraryPath = Path.GetFullPath( Path.Combine( AppContext.BaseDirectory, @"..\..\..\..\ArbitraryDirectory" ) ); This works flawlessly on Windows.
000
Marc Rufer @rufer.be · 20/08/2026
Blogged: [HOWTO] Successfully migrate a .NET 10 test project from VSTest to Microsoft.Testing.Platform (MTP)
blog.rufer.be
[HOWTO] Successfully migrate a .NET 10 test project from VSTest to Microsoft.Testing.Platform (MTP)
The author migrated a .NET 10 test project from VSTest to Microsoft.Testing.Platform due to CI/CD pipeline failures after a NuGet package update. The post details the migration process, highlighting necessary changes in the Azure DevOps pipeline and .csproj file to resolve errors and achieve successful test runs in both Visual Studio and the Azure DevOps YAML pipeline.
000
Marc Rufer @rufer.be · 08/07/2026
Blogged: [HOWTO] Get Azure Function key and set it as value of a not managed key vault secret using Terraform and AzAPI provider
blog.rufer.be
[HOWTO] Get Azure Function key and set it as value of a not managed key vault secret using Terraform and AzAPI provider
The blog post details implementing Azure Function key retrieval and storage in a Key Vault secret using AzAPI provider, highlighting the configuration process and solution achieved.
000
Marc Rufer @rufer.be · 12/05/2026
Blogged: [HOWTO] Delete Azure DevOps users with principalName starting with OIDCONFLICT_UpnReuse_ #azuredevops #ado #graph #powershell #posh
blog.rufer.be
[HOWTO] Delete Azure DevOps users with principalName starting with OIDCONFLICT_UpnReuse_
In Azure DevOps organizations that are connected to Microsoft Entra, you may spot (duplicated) users with email prefixed with OIDCONFLICT_UpnReuse_{OID_HERE} (i.e. when trying to give them access or when mentioning them): Such users are neither visible in the Azure DevOps Web UI under Organization settings > General > Users nor when querying all users via graph or via the Azure DevOps CLI.
011
Marc Rufer @rufer.be · 13/02/2026
Blogged: [HOWTO] Delete users created by bots in Azure AD B2C #azureadb2c #powershell #posh #msftgraph
blog.rufer.be
[HOWTO] Delete users created by bots in Azure AD B2C
Multifactor authentication via SMS is vulnerable to bot attacks, potentially leading to high costs from automated account creations. To mitigate risks, it's recommended to disable SMS MFA, implement stronger bot protection, or disable sign-ups. If attacked, quickly identify and delete bot-created accounts using Azure portal and PowerShell scripts to manage user identities.
000
Marc Rufer @rufer.be · 29/12/2025
Blogged: [HOWTO] Implement Audit Logging in a .NET Core application using Entity Framework Core and Audit.NET #dotnet #dotnetcore #efcore #auditdotnet #auditing #auditlog #audittrail #traceability
blog.rufer.be
[HOWTO] Implement Audit Logging in a .NET Core application using Entity Framework Core and Audit.NET
This blog post outlines the implementation of audit logging using Audit.NET in .NET Core applications with Entity Framework Core. It discusses the purpose of audit logs, which enhance traceability and compliance, and details the setup process, including modifying the DbContext, creating tracking properties, and configuring audit data storage in a dedicated entity.
022
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 20/12/2025
Blogged: Digital Authentication and Identity validation damienbod.com/2025/12/20/d... #oidc #identity #iam #swiyu #eid #oauth #dpop #openid #security #ecollecting #authentication #loa #loi #vc #oauth2 #swiss #ch #cybersecurity
https://damienbod.com/2025/12/20/digital-authentication-and-identity-validation/
052
Marc Rufer @rufer.be · 11/12/2025
Blogged: [Headache Prevention] Workaround for the error "Could not authenticate user with requested resource" when accessing the Aspire dashboard #azure #dotnet #aspire #dashboard
blog.rufer.be
[Headache Prevention] Workaround for the error “Could not authenticate user with requested resource” when accessing the Aspire dashboard
Recently, I deployed a .NET Aspire solution to Azure Container Apps (via Azure Container registry). The Azure Container Apps resource is running within my personal Azure tenant. In my personal tenant, my user is assigned as Owner of the corresponding resource group and therefore also Owner (by inheritance) of the Container Apps Environment which resides within the same resource group. Furthermore, my user has Azure built-in role…
011
Marc Rufer @rufer.be · 09/12/2025
Blogged: [HOWTO] Restore credentials of Work or School account(s) in Microsoft Authenticator App #microsoft #authenticator #mfa #restore #workorschoolaccount
blog.rufer.be
[HOWTO] Restore credentials of Work or School account(s) in Microsoft Authenticator App
Switching Android smartphones complicates restoring Work or School account credentials, requiring re-signing into accounts and possibly resetting MFA.
010
Marc Rufer @rufer.be · 05/12/2025
This week @damienbod.com and me attended the @owasp.org BeNeLux Days 2025 in Mechelen, Belgium 🇧🇪 There were some super interesting talks we were able to listen to and after the conference we enjoyed the Belgian beer culture 😉 Thanks to Sonar for the invitation! #owasp #security #conference
021
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 17/11/2025
Blogged: Implement forgot your password using swiyu, ASP.NET Core Identity and Aspire damienbod.com/2025/11/17/i... #swiyu #aspire #aspnetcore #duende #identity #iam #eid #swiss #identity #dotnet
damienbod.com
Implement forgot your password using swiyu, ASP.NET Core Identity and Aspire
This post show to implement a “Forgot your password” flow using the Swiss Digital identity and trust infrastructure, (swiyu) in an ASP.NET Core web application using ASP.NET Core Identi…
011
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 31/10/2025
Production ready web application with full automation and recommended application security @rufer.be @renegadexx.bsky.social github.com/secure-web-a... #aspnetcore #aspire #sonarqube #sonar #github #angular #terraform #sast #authentication #entra #identity #dotnet #sast
github.com
GitHub - secure-web-apps/EndToEndSecurityWeb: Secure Web application using ASP.NET Core, Angular, SonarQube and terraform. This repository hosts the source code for our .NET User Group Switzerland tou...
Secure Web application using ASP.NET Core, Angular, SonarQube and terraform. This repository hosts the source code for our .NET User Group Switzerland tour. - secure-web-apps/EndToEndSecurityWeb
031
Marc Rufer @rufer.be · 28/10/2025
Worth reading!
020
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 28/10/2025
Join us tomorrow in Bern www.meetup.com/net-user-gro... End-to-End Secure Web Development with .NET Aspire, JavaScript, E-ID Really looking for to this. @rufer.be @renegadexx.bsky.social #swiyu #sonar #aspnetcore #aspire #dotnet #identity
meetup.com
End-to-End Secure Web Development with .NET Aspire, JavaScript, E-ID, Wed, Oct 29, 2025, 6:00 PM | Meetup
Hello Berner .NET friends The e-ID was approved by a narrow majority in the referendum. Let's take this opportunity to look at security and the integration of e-ID into ou
021
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 27/10/2025
Blogged: Use swiyu, the Swiss E-ID to authenticate users with Duende and .NET Aspire damienbod.com/2025/10/27/u... #swiyu #eid #identity #duende #aspnetcore #dotnet #aspire #openid #openidconnect #oauth #vdc #iam
damienbod.com
Use swiyu, the Swiss E-ID to authenticate users with Duende and .NET Aspire
This post shows how to authenticate users using Duende IdentityServer and ASP.NET Core Identity which verifies identities (verifiable digital credentials) using the Swiss Digital identity and trust…
032
Marc Rufer @rufer.be · 24/10/2025
Blogged: Software Composition Analysis in SonarQube Advanced Security for SonarQube Cloud #sca #sonarqube #sonarqubecloud #security #sbom #licensecompliance
blog.rufer.be
Software Composition Analysis in SonarQube Advanced Security for SonarQube Cloud
On the 15th of September, 2025, Sonar finally released the long-awaited Software Composition Analysis (SCA) to SonarQube Advanced Security for SonarQube Cloud! Software Composition Analysis (SCA) is an ideally automated process that analyzes software codebases to identify or detect embedded open-source software/components. The identified/detected dependencies form the basis for the following features that SCA tools typically offer. Detection of known security vulnerabilities based on data from…
000
Marc Rufer @rufer.be · 21/10/2025
Blogged: [HOWTO] Configure a custom domain and App Service Managed Certificate with Terraform #azure #appservice #iac #terraform #customdomain #managedcertificate
blog.rufer.be
[HOWTO] Configure a custom domain and App Service Managed Certificate with Terraform
Configuring a custom domain for an Azure App Service including a App Service Managed Certificate is the kind of task where I constantly have to look up the details. For this reason, and because a colleague asked me to blog about it, I decided to briefly document the process here.
000
Marc Rufer @rufer.be · 20/10/2025
Blogged: [HOWTO] Enable and configure Defender for Storage at the storage account level by using Terraform #iac #terraform #azurestorage #defenderforstorage
blog.rufer.be
[HOWTO] Enable and configure Defender for Storage at the storage account level by using Terraform
The author aimed to enable Defender for Storage on a dedicated storage account using Terraform, updating the existing configuration. Although the Terraform apply succeeded, the feature was not enabled. After research, the issue was resolved by adjusting user roles, allowing a subsequent Terraform apply to produce the desired outcome.
021
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 17/10/2025
Really looking forward to this event: End-to-End Secure Web Development with .NET Aspire, JavaScript Implementing Swiyu E-ID using Aspire @rufer.be @renegadexx.bsky.social www.meetup.com/net-user-gro... #dotnet #aspire #js #webdev #eID #devops #devsecops #security #swiyu #swiss #identity
meetup.com
End-to-End Secure Web Development with .NET Aspire, JavaScript, E-ID, Wed, Oct 29, 2025, 6:00 PM | Meetup
Hello Berner .NET friends The e-ID was approved by a narrow majority in the referendum. Let's take this opportunity to look at security and the integration of e-ID into ou
131
Marc Rufer @rufer.be · 06/10/2025
Really looking forward to talk about "End-to-End Secure Web Development with .NET Aspire, JavaScript, E-ID" together with my friend @damienbod.com www.meetup.com/net-user-gro... #dotnet #aspire #js #webdev #eID #devops #devsecops #security
meetup.com
End-to-End Secure Web Development with .NET Aspire, JavaScript, E-ID, Wed, Oct 29, 2025, 6:00 PM | Meetup
Hello Berner .NET friends The e-ID was approved by a narrow majority in the referendum. Let's take this opportunity to look at security and the integration of e-ID into ou
041
Marc Rufer @rufer.be · 27/08/2025
.NET Day Switzerland 2025 was a blast! In addition to inspiring sessions, there was the opportunity to meet old friends and make new ones! Looking forward to the 2026 edition 🤗 Thanks to Manu, Fabian and Thomas for organizing this great community event! #dotnetdayswitzerland #dotnet #community
061
Marc Rufer @rufer.be · 10/07/2025
First renewal ☑️🥳 #mvpbuzz
040
Marc Rufer @rufer.be · 07/07/2025
Blogged: Six interesting use cases for Azure DevOps MCP Server for the daily work of a developer #mcp #mcpserver #azuredevops #ado #githubcopilot
blog.rufer.be
Six interesting use cases for Azure DevOps MCP Server for the daily work of a developer
While preparing my session for DWX 2025, in which I demonstrated a simple use case for Azure DevOps MCP Server (creating a user story from within the IDE), I came up with some other interesting use cases for the daily work of a developer. Now that I have tested them, I will outline the use cases I have discovered in this blog post.
141
Marc Rufer @rufer.be · 02/07/2025
On my way to Mannheim 🚄 #DWX25 is calling! See you there and for the German-speaking participants who are interested in GitHub Copilot, you may consider attending my session 😊 Looking forward to interesting sessions and chats #DWX25 #github #githubcopilot #conference #leavingmycomfortzone
010
Marc Rufer @rufer.be · 26/06/2025
Blogged: [HOWTO] Upload files to an Azure storage account using Terraform #iac #terraform #azurestorage
blog.rufer.be
[HOWTO] Upload files to an Azure storage account using Terraform
This blog post describes how to automate the upload of files to an Azure storage account using Terraform.
010
Marc Rufer @rufer.be · 20/06/2025
Blogged: [Best Practice] Make Application Configuration of ASP.NET Core applications obvious #dotnet #aspnetcore #configuration #bestpractice
blog.rufer.be
[Best Practice] Make Application Configuration of ASP.NET Core applications obvious
In my work as a software developer, I have already been involved in numerous existing .NET software projects. Nearly all of these existing code bases had at least one thing in common: application configuration was not obvious. But why? Especially in the .NET ecosystem everything required to make it obvious is there. In this blog post I share my personal best practice to counteract this situation.
152
Marc Rufer @rufer.be · 18/06/2025
Blogged: [HOWTO] Fix TF400813 error response when using Azure DevOps MCP Server #azuredevops #mcp #mcpserver #githubcopilot
blog.rufer.be
[HOWTO] Fix TF400813 error response when using Azure DevOps MCP Server
While testing the local Azure DevOps MCP Server public preview, TF400813 error occurred due to wrongly selected default Azure subscription. Re-running az login to and selecting the correct subscription resolved the problem, allowing the server to function properly.
010
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 19/05/2025
Blogged: Using multiple external identity providers from ASP.NET Core Identity and Duende IdentityServer damienbod.com/2025/05/19/u... #aspnetcore #dotnet #identity #duende #oidc #oauth #profile #auth0
damienbod.com
Using multiple external identity providers from ASP.NET Core Identity and Duende IdentityServer
This blog post shows how an ASP.NET Core Identity application can integrate and implement multiple external identity providers. An OIDC client UI uses the solution and is implemented using Duende I…
032
Marc Rufer @rufer.be · 02/05/2025
Blogged: [HOWTO] Send emails via SMTP in PowerShell #PowerShell #email #o365
blog.rufer.be
[HOWTO] Send emails via SMTP in PowerShell
This week, I tested Office 365 SMTP credentials using PowerShell. I created a script that defines sender and receiver email addresses, subject, and message, and sets up an SMTP client with secure credentials. The server is smtp.office365.com, using SSL on port 587 to send the email successfully.
021
Reposted by Marc Rufer
David Fowler @davidfowl.com · 04/04/2025
The Aspire Compiler medium.com/@davidfowl/t... #dotnet #aspire
medium.com
The Aspire Compiler
At the heart of Aspire is a resource model. It defines the shape of your application — its services, dependencies, configuration, and how…
0379
Marc Rufer @rufer.be · 28/03/2025
Today's NHL game was a great end to a wonderful week in Seattle 🇺🇸 Thanks to @isolutions.ch for sponsoring this! Besides inspiring sessions I had the chance to meet lots of cool people 🤩 Special thanks to @damienbod.com @tmaestrini.bsky.social @fiddi.ch @cepacode.bsky.social #MVPSummit #mvpbuzz
061
Marc Rufer @rufer.be · 20/03/2025
I'm really looking forward to next week, when I can attend the MVP Summit in Redmond for the first time 🥳 Let's listen, discuss, connect, exchange 🚀 @isolutions.ch travel group 😃🇺🇸✈️ @damienbod.com @fiddi.ch @tmaestrini.bsky.social @cepacode.bsky.social #mvpsummit #mvpbuzz
041
Marc Rufer @rufer.be · 06/03/2025
Blogged: [NoBrainer] Create git tag in a Azure DevOps YAML pipeline based on AssemblyVersion of a specific .csproj file #azuredevops #ado #git #dotnet #gittag
blog.rufer.be
[NoBrainer] Create git tag in a Azure DevOps YAML pipeline based on AssemblyVersion of a specific .csproj file
The content describes a process for creating a git tag in Azure DevOps after each production deployment, using the assembly version from a .NET project. It outlines a pipeline job that retrieves the version, formats it, then creates and pushes a git tag, requiring specific permissions for the build service user.
000
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 03/03/2025
Blogged: Implement Phone verification, 2FA using ASP.NET Core Identity damienbod.com/2025/03/03/i... #aspnetcore #dotnet #identity #2fa #mfa #sms #phone #iam #authentication
damienbod.com
Implement Phone verification, 2FA using ASP.NET Core Identity
This post shows how to implement phone (SMS) verification and two-factor authentication (2FA) using ASP.NET Core Identity. The solution integrates phone-based verification and 2FA mechanisms. The i…
043
Reposted by Marc Rufer
linusdata.bsky.social @linusdata.bsky.social · 28/02/2025
🚀 New Blog Post: Shortcuts in Microsoft Fabric! Access external data without duplication! Learn what Shortcuts are, why they matter, and how to create one. #MicrosoftFabric #DataEngineering #DataAnalytics #Shortcuts
linusdata.blog
Benefits of Shortcuts in Microsoft Fabric Explained
Introduction What Are Shortcuts in Microsoft Fabric? Authorization Why Use Shortcuts? Step-by-Step Guide: How to Create a Shortcut in Microsoft Fabric Prerequisites Conclusion Introduction Microsoft Fabric introduces a powerful feature called Shortcuts, enabling seamless access to data across different sources without duplication. Shortcuts make data more accessible, reduce storage costs, and streamline data engineering workflows. In this post, we will cover:
011
Marc Rufer @rufer.be · 27/02/2025
Blogged: [HOWTO] Fix "Server identity does not have Azure Active Directory Readers permission" error when using terraform local-exec provisioner to create SQL database users from external provider in a Az DevOps YAML pipeline #azuresql #azure #azuredevops #msftentraauthentication #iac #terraform
blog.rufer.be
[HOWTO] Fix “Server identity does not have Azure Active Directory Readers permission” error when using terraform local-exec provisioner to create SQL database users from external provider in a Az DevOps YAML pipeline
The author describes troubleshooting an Azure DevOps YAML pipeline error related to a local-exec provisioner in terraform, which failed to grant necessary permissions due to a missing Azure Active Directory Readers permission. They detail the root causes, error findings, and ultimately the adjustments made to resolve the issue, focusing on least privilege principles.
000
Marc Rufer @rufer.be · 20/02/2025
Blogged: [HOWTO] Identify and remind inactive GitHub Copilot users #github #githubcopilot #githubapi #githubactions
blog.rufer.be
[HOWTO] Identify and remind inactive GitHub Copilot users
The author sought a method to identify inactive GitHub Copilot Business license users. After troubleshooting errors, they successfully implemented a reminder workflow and contributed improvements.
021
Reposted by Marc Rufer
ASP.NET Core News @aspnetcore.news · 03/02/2025
Multiple client sign-in customizations using Duende identity provider by @damienbod.com buff.ly/4hy0kBk #aspnetcore
022
Marc Rufer @rufer.be · 03/02/2025
Blogged: [HOWTO] Set Minimum TLS Cipher Suite of Azure App Service using Terraform #Azure #AzureAppService #IaC #terraform #security #tls #ciphersuite
blog.rufer.be
[HOWTO] Set Minimum TLS Cipher Suite of Azure App Service using Terraform
An application’s pentest revealed weak SSL/TLS cipher suites in Azure App Services. To enhance security, non-forward-secrecy cipher suites must be disabled. Utilizing Terraform and the azapi provider, a workaround was implemented to configure the Minimum TLS Cipher Suite, enforcing modern cryptographic standards.
021
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 30/01/2025
Mehr Sicherheit für Schüler-Logins – ohne zusätzliche Geräte! 🔐 Zusammen mit dem Service informatique de l'entité neuchâteloise (SIEN) haben wir eine innovative Multi-Faktor-Authentifizierung (MFA) für Schulen entwickelt: easyauth.ch.
easyauth.ch
easyauth.ch
easyauth.ch
121
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 29/01/2025
.NET User Group Bern Really enjoyed the .NET User Group Bern event: Triple impact: knowledge, security, action Thanks to all the awesome speakers: Marc Rufer and Raffael Nussbaumer, Andres Bohren and Peter Schnidrig, Laurent Christen and Regina Traber Thanks René for organizing.
041
Marc Rufer @rufer.be · 26/01/2025
Blogged: [NoBrainer] Restart Azure App Service in Az DevOps YAML pipeline #AzureDevOps #AzDevOps #YAMLPipeline #AzureAppService #restart
blog.rufer.be
[NoBrainer] Restart Azure App Service in Az DevOps YAML pipeline
This post discusses restarting an Azure App Service in an Azure DevOps YAML pipeline after applying IaC config to update Azure Key Vault secrets during deployments.
010
Reposted by Marc Rufer
Damien Bowden @damienbod.com · 03/01/2025
Updated Microsoft Entra ID client examples in ASP.NET Core github.com/damienbod/Mi... #dotnet #aspnetcore #net9 #entra #identity #iam #openidconnect #oauth #security #microsoftidentity #bootstrap5
github.com
GitHub - damienbod/MicrosoftEntraIDAuthMicrosoftIdentityWeb: Microsoft Entra ID (Azure AD) flows using ASP.NET Core and Microsoft.Identity.Web
Microsoft Entra ID (Azure AD) flows using ASP.NET Core and Microsoft.Identity.Web - damienbod/MicrosoftEntraIDAuthMicrosoftIdentityWeb
074
Marc Rufer @rufer.be · 05/12/2024
Just got my hobby project up and running 🎉🤩 I never ever thought that I once will use a set square after school 😄 #autodarts #darts #hobby
040
Marc Rufer @rufer.be · 03/12/2024
Woohoo! 🎉 Just got my #Microsoft MVP label provided by @bluesky.ms 😍 Absolutely amazing #community contribution by @merill.net - Big thank you! Subscribe to @bluesky.ms to see labels of verified Microsoft employees, Microsoft MVPs and Microsoft RDs #mvpbuzz #community #Microsoft
1293
Marc Rufer @rufer.be · 26/11/2024
Blogged: [HOWTO] Run ASP.NET Core integration tests in a Az DevOps YAML pipeline when subject under test uses DefaultAzureCredential #azdevops #devops #yaml #pipeline #integrationtesting #defaultazurecredential #azurecli #workloadidentityfederation
blog.rufer.be
[HOWTO] Run ASP.NET Core integration tests in a Az DevOps YAML pipeline when subject under test uses DefaultAzureCredential
Last week I struggled (again) running ASP.NET Core integration tests for an ASP.NET Core Web API that uses DefaultAzureCredential in a Azure DevOps YAML pipeline. To avoid having to struggle again, I am writing down my findings here. The initial situation There was an existing ASP.NET Core (.NET 8) Web API project that uses DefaultAzureCredential to connect to an Azure Key Vault.
141
Marc Rufer @rufer.be · 19/11/2024
I just created a bluesky starter pack with Microsoft MVPs from Switzerland. Let me know if someone is missing. go.bsky.app/BksPrpM #mvpbuzz #mvp #switzerland
030
Marc Rufer @rufer.be · 13/11/2024
Anyone else had troubles after updating VS2022? All the #dotnet SDKs installed before were gone, except .NET 9 SDK #visualstudio #dotnet
000
Marc Rufer @rufer.be · 11/11/2024
Blogged: [HOWTO] Deploy an ASP.NET Core Web API to an Azure App Service using a GitHub Actions Workflow #github #githubactions #azure #oidc #azureappservice #devops
blog.rufer.be
[HOWTO] Deploy an ASP.NET Core Web API to an Azure App Service using a GitHub Actions Workflow
This week, I faced challenges deploying an ASP.NET Core Web API to an Azure App Service using GitHub Actions and OpenID Connect. Initial attempts with azure/webapps-deploy@v3 failed due to missing credentials. A later try with azure/cli@v2 failed because the deployment file wasn't a valid zip. Properly zipping the files led to successful deployment.
041
Marc Rufer @rufer.be · 08/11/2024
Blogged: [HOWTO] Rotate Azure Key Vault secrets used by an ASP.NET Core Web API with Terraform on every deployment #dotnet #dotnetcore #webapi #azure #keyvault… blog.rufer.be/2024/11/08/howto-rota…
171