Onion Architecture – Multiple Apps

Onion Architecture talks about separating the UI, Service, and Data Layers. All the samples usually given for this involve a single deployment model of the application. For example in .net most of the samples are

Web – MVC app
Core/Domain – Simple class library
Data – Entity Framework

What happens if my application has multiple deployment flavors? For example Azure resources versus On premise SQL Server. Does the solution break down into shareable projects? What happens when pieces of the infrastructure are shared?

Host – On-Premise – has the Program.cs and Startup class only, wires up all the dependencies. Also has logic to do migration/setup for infrastructure
Host – Azure – same as above

Web – Controllers, View, Models – but it class library not an app
Core/Domain – Doesn’t change
Infrastructure – SQL
Infrastructure – Azure
Infrastructure – X

Is this correct thinking? should the “App Hosts” be as minimal as possible and wire everything up? Should infrastructures be separated by the infrastructure they are utilizing or the deployment style (On premise vs Azure)? Is it strange to have an infrastructure layer not implement all the repositories defined in domain layer?

Generate new .onion address for bitcoind over tor

Been following this guide just to tinker around with bitcoind over tor. According to the guide, when bitcoind controls the tor daemon using controlport=9051 whenever you restart bitcoind tor should generate a new .onion address. This is not happening. If I restart bitcoind, tor or both, it always uses the same old .onion address. A fully system restart doesn’t work either.

how do I generate a new .onion address?

Note: I am NOT using /blah/var/hidden_service and cannot just delete the private key in that folder. When using controlport there doesn’t seem to be a private key anywhere. Or is there?