mirror of
https://github.com/khuedoan/homelab.git
synced 2025-01-07 05:51:17 +07:00
59 lines
1.4 KiB
Python
Executable File
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")
|