khuedoan-homelab/configure.py

59 lines
1.4 KiB
Python
Executable File

#!/usr/bin/python
# WIP
# TODO clean this up
"""
Basic configure script for new users
"""
import os
import platform
import sys
editor = os.getenv('EDITOR')
seed_repo = "github.com/khuedoan/homelab"
domain = "khuedoan.com"
terraform_workspace = "khuedoan"
if sys.version_info < (3, 10, 0):
raise Exception("Must be using Python >= 3.10.0")
# confirm text editor
editor = str(input(f"Text editor ({editor}): ") or editor)
# Replace seed repo
seed_repo = str(input(f"Enter seed repo ({seed_repo}): ") or seed_repo)
os.system(f"./scripts/replace-gitops-repo {seed_repo}")
# Replace domain
domain = str(input(f"Enter your domain ({domain}): ") or domain)
os.system(f"./scripts/replace-domain {domain}")
# Change hardware info
os.system(f"{editor} 'metal/inventories/prod.yml'") # TODO use var for inventory
def replace_terraform_workspace(current, new):
filename = 'external/versions.tf'
# Read in the file
with open(filename, 'r') as file:
filedata = file.read()
# Replace the target string
filedata = filedata.replace(current, new)
# Write the file out again
with open(filename, 'w') as file:
file.write(filedata)
new_terraform_workspace = str(
input(f"Enter your Terraform Workspace ({terraform_workspace}): ")
or terraform_workspace
)
replace_terraform_workspace(terraform_workspace, new_terraform_workspace)
# TODO switch to git lib
os.system("git diff")