GithubHelp home page GithubHelp logo

isabella232 / terraform-spotinst-azure-connect Goto Github PK

View Code? Open in Web Editor NEW

This project forked from spotinst/terraform-spotinst-azure-connect

0.0 0.0 0.0 20 KB

A Terraform module to connect an Azure Subscription to Spot.io.

License: Apache License 2.0

Shell 1.06% Python 26.10% Makefile 1.22% HCL 71.62%

terraform-spotinst-azure-connect's Introduction

Connect Azure Subscription To Spot.io Terraform Module

Introduction

A Terraform module to connect an Azure Subscription to Spot.io

Details

The module will aid in automatically connecting your Azure Subscription to Spot via terraform. Permissions will be managed by Azure Active Directory with a custom role that will be assigned to the Application. The Terraform module will leverage Spot APIs called via a script to complete the connection to the Spot platform.

Example

# One or more subscriptions can be added.
provider "azurerm" {
  subscription_id = "redacted"
  features {}
}
provider "azuread" {
  tenant_id = "redacted"
}
#Call the spot module to create a Spot account and link to the first Azure subscription
module "azure-connect" {
  source          = "spotinst/azure-connect/spotinst"
  spotinst_token  = "redacted"
}
output "spot_account_id" {
  value = module.azure-connect.spot_account_id
}

Pre-Reqs

  • Spot Organization Admin API token.
  • python3 installed
  • pip3 installed
  • Subscription ID/s
  • Azure Active Directory ID
  • Azure CLI access with permissions to perform the following actions on each subscription:
    • For Apply:
      • Microsoft.Authorization/roleDefinitions/write
      • Microsoft.Authorization/roleAssignments/write
    • For Destroy:
      • Microsoft.Authorization/roleDefinitions/delete
      • Microsoft.Authorization/roleAssignments/delete

Apply

The terraform module will do the following:

On Apply:

  • Create an App Registration
  • Create an App Secret
  • Create a Custom Role
  • Create a Service Principal
  • Assign Role to Application on Subscription
  • Create New Spot Account using the subscription display name
  • Provide and link newly created application credentials to Spot account.

terraform-spotinst-azure-connect's People

Contributors

lironrad avatar ohad360 avatar stevenfeltner avatar

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.