Git Product home page Git Product logo

dbupreboot's People

Contributors

chriswill avatar ggupta36 avatar klayantw avatar pmonnet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

dbupreboot's Issues

Migration from Microsoft.Azure.Services.AppAuthentication to Azure.Identity

First kudos for all the efforts to date to bring DbUp to a more modern stack. DbUp is a fantastic tool. :-)
Microsoft.Azure.Services.AppAuthentication is no longer recommended and Azure.Identity should be used instead per Microsoft - see https://docs.microsoft.com/en-us/dotnet/api/overview/azure/app-auth-migration. We are on an endless upgrade treadmill! ;-)

Migrating to the new library would also make it possible to enhance DbUpReboot to support user-assigned managed identities (passwordless service principals) in Azure. This provides significant security benefits as no sensitive credentials are ever used, andna managed identity can only be used from inside Azure itself.
Currently the AzureSqlConnectionManager uses AzureServiceTokenProvider which does not have a way to pass in the ClientID of a managed identity.
It would be awesome if these enhancements could be made as this would make it possible to run DbUp migrations either from an Azure Container Instance or from a job in Azure Kubernetes Service.

Azure SQL - Service Objective

DbUp currently allows the caller to specify an AzureDatabaseEdition.

Ideally, it would be good to allow finer control over this by accepting a parameter specifying the Service Objective (e.g. S0, etc).

At it's simplest, this could be an optional string argument passed to SqlDatabase() - alternatively, an enum similar to AzureDatabaseEdition might be a better DX (although would probably add maintenance overhead if MS changes SKUs).

This would ultimately mean that the DbUp command would change from:

create database [mydatabase] ( EDITION = 'standard' );

to:

create database [mydatabase] ( EDITION = 'standard', SERVICE_OBJECTIVE = 'S0' );

when a service objective parameter is supplied.

I am happy to raise a PR for this, but wanted to gauge interest / opinions first.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.