Generated by All in One SEO Pro v4.9.7.2, this is an llms.txt file, used by LLMs to index the site. # Blag manicminer ## Sitemaps - [XML Sitemap](https://manicminer.io/sitemap.xml): Contains all public & indexable URLs for this website. ## Posts - [Cross-Tenant Entra-ID Authentication for Azure Function Apps](https://manicminer.io/posts/cross-tenant-entra-id-authentication-for-azure-function-apps/) - When deploying function apps in Azure, it's common to configure a trigger endpoint to invoke the function on demand. Whether this endpoint is reachable via the Internet, or only available to internal networks, it's sensible to authenticate requests to prevent nuisance triggering of your function app. In order to keep your app as lean as - [Bitwarden Review](https://manicminer.io/posts/hello-bitwarden/) - Having been an avid user of password managers for as long as I can remember, I was an entrenched premium customer of LastPass for several years. It served me well with its multi-platform support, reliable sync and support for quirky authentication schemes, however as time went on I encountered more and more issues, and eventually - [Ansible Recommended Patterns](https://manicminer.io/posts/ansible-recommended-patterns/) - It can be tricky to figure things out when structuring new projects. You might set out to make things as comprehensive as possible, to accommodate future expansion, but this raises the barrier to entry and can leave you in a quandry about where things should go. Or you might opt for the lean approach, making - [Beyond Facts: Retrieving AWS Resource IDs](https://manicminer.io/posts/ansible-beyond-facts-retrieving-aws-resource-ids/) - I’m a huge fan of Ansible and I’ve made use of it in several projects to orchstrate AWS services. Ansible is designed to be simple, with most functionality contained in modules which are callable via tasks in playbooks. This has huge benefits, but also bears the major drawback of significant boilerplate when you need to - [Terraform: Cross Account S3 Bucket Access Control](https://manicminer.io/posts/terraform-cross-account-s3-buckets/) - Whilst auditing a set of organizational AWS accounts, I wanted to consolidate operational S3 buckets into a single account and grant access as required. It might not be immediately obvious the first time you do this, so this post is a bit of a primer on cross-account S3 access control, and implementing such with Terraform. - [AWS Account Switching with Ansible](https://manicminer.io/posts/ansible-aws-account-switching/) - I recently worked on a project involving multiple AWS accounts, with different projects and environments spread through those accounts in different combinations. Having opted to use Ansible for driving deployments, I looked at built-in capabilities for account switching. It turns out you can easily inject credentials authenticating with another IAM user, but this can only - [Terraform: AWS ACM Certificates for Multiple Domains](https://manicminer.io/posts/terraform-aws-acm-certificates-for-multiple-domains/) - My life got better when AWS introduced Certificate Manager, their service for issuing validated TLS certificates for consumption directly by other AWS services. You don’t get to download certificates issued by ACM to install on your own servers, but you can use them with your EC2 Load Balancers, CloudFront and some other services, alleviating the - [Accessing AWS Services When Remoting](https://manicminer.io/posts/accessing-aws-services-when-mobile/) - Having recently moved out of my place, where I had comparitively great Internet access supplied with static IP addresses, I’m currently working mostly tethered to my phone. It turns out that good LTE service actually works pretty well for most things - even long distance SSH - but sitting on a cellular network with a - [Checking out GitHub pull requests to a local branch](https://manicminer.io/posts/checking-out-github-pull-requests-to-a-local-branch/) - After some trial and error, here’s how I check out Github pull requests to a local branch with tracking. Edit .git/config, add the following line in the section for the desired remote. fetch = +refs/pull/*/head:refs/remotes/origin/pr/* Ensure to add it before the existing line for remote branches, e.g. [remote "origin"] url = git@github.com:user/repo fetch = +refs/pull/*/head:refs/remotes/origin/pr/* - [Introduction to HashiCorp Nomad](https://manicminer.io/posts/getting-started-with-hashicorp-nomad/) - Nomad is “a simple and flexible workload orchestrator” that is capable of running not just containers, but pretty much any workload you can build. Whilst related solutions like Kubernetes focus on containerized application hosting, Nomad has a broader reach and this might be a great selling point if your environment is more heterogenous, or if you are looking for something more lightweight and with a gradual learning curve. - [Preventing Automatic Sign-out in Azure Portal](https://manicminer.io/posts/preventing-automatic-sign-out-in-azure-portal/) - When working with multiple organizations and their Azure estates, draconian application of policies dictating user behaviors can quite quickly become an annoyance. Among the first of these experienced on a new account is often the Azure Portal inactivity timer. Whilst it's entirely understandable to limit the exposure of an authorized Azure Portal browser tab for - [Migrating GitLab Projects to GitHub](https://manicminer.io/posts/migrating-gitlab-projects-to-github/) - I'm currently working on a large project in need of modernization. Amongst the various threads of technical debt, the project as inherited has its source code hosted on a self-hosted GitLab Enterprise server. The organization wishes to converge on GitHub Enterprise (cloud, not self hosted) as its source control solution, and so I was tasked ## Pages - [About](https://manicminer.io/about/) - I’m a software/ops engineer currently freelance consulting. Formerly at HashiCorp where I worked on the Terraform Azure Providers (see projects). I have spent much of my career assisting organizations and their software teams to self-organize, move faster and deliver consistently. Enjoyer of clouds, robots and rocket plumes. Tea brewer and Scotch drinker. If you’d like - [Projects](https://manicminer.io/projects/) - Some software projects of which I am either the owner or a core contributor. Terraform Azure Providers For configuring cloud and identity infrastructure in Microsoft Azure. The AzureRM provider uses the Resource Manager APIs to provision and manage Azure resources. The AzureAD provider uses the Microsoft Graph API to manage Microsoft Entra and Microsoft 365. ## Categories - [Tutorials](https://manicminer.io/posts/category/tutorials/) - [Reviews](https://manicminer.io/posts/category/reviews/) ## Tags - [ansible](https://manicminer.io/posts/tag/ansible/) - [aws](https://manicminer.io/posts/tag/aws/) - [security](https://manicminer.io/posts/tag/security/) - [github](https://manicminer.io/posts/tag/github/) - [git](https://manicminer.io/posts/tag/git/) - [nomad](https://manicminer.io/posts/tag/nomad/) - [docker](https://manicminer.io/posts/tag/docker/) - [orchestration](https://manicminer.io/posts/tag/orchestration/) - [terraform](https://manicminer.io/posts/tag/terraform/) - [bitwarden](https://manicminer.io/posts/tag/bitwarden/) - [hashicorp](https://manicminer.io/posts/tag/hashicorp/) - [acm](https://manicminer.io/posts/tag/acm/) - [certificates](https://manicminer.io/posts/tag/certificates/) - [review](https://manicminer.io/posts/tag/review/) - [s3](https://manicminer.io/posts/tag/s3/) - [azure](https://manicminer.io/posts/tag/azure/) - [azure portal](https://manicminer.io/posts/tag/azure-portal/) - [gitlab](https://manicminer.io/posts/tag/gitlab/) - [cross-tenant](https://manicminer.io/posts/tag/cross-tenant/) - [function app](https://manicminer.io/posts/tag/function-app/) - [app service](https://manicminer.io/posts/tag/app-service/) - [multi-tenant](https://manicminer.io/posts/tag/multi-tenant/) - [authentication](https://manicminer.io/posts/tag/authentication/)