Updated/fixed init script.
This commit is contained in:
@@ -64,6 +64,11 @@ def update_spp() -> None:
|
||||
_logger.info('Changes in SCons++ detected, creating commit.')
|
||||
_exec_checked(['git', 'commit', '-m', 'Updated Scons++', 'external/scons-plus-plus'])
|
||||
|
||||
def verify_unchanged() -> None:
|
||||
output = _exec_get_output(['git', 'status', '--porcelain'])
|
||||
if output != '':
|
||||
raise RuntimeError('There are uncommitted changes. Commit, stash or revert them before running this script.')
|
||||
|
||||
def _replace_in_file(file: Path, **replacements) -> None:
|
||||
_logger.debug('Patching file "%s"...', file)
|
||||
bakfile = file.with_suffix(f'{file.suffix}.bak')
|
||||
@@ -107,19 +112,36 @@ def setup_project() -> None:
|
||||
template_folder = _root / 'private/spp_template'
|
||||
module_folder = _root / 'private' / module_folder_name
|
||||
_logger.debug(f'Moving {template_folder} to {module_folder}.')
|
||||
shutil.move(template_folder, module_folder)
|
||||
|
||||
_logger.info('Creating a git commit for the setup.')
|
||||
_exec_checked(['git', 'commit', '-m', 'Project setup', 'SConstruct', 'private'])
|
||||
_exec_checked(['git', 'add', '.'])
|
||||
_exec_checked(['git', 'commit', '-m', 'Project setup'])
|
||||
|
||||
def setup_git_remote() -> None:
|
||||
current_url = _exec_get_output(['git', 'remote', 'get-url', 'origin'])
|
||||
if 'spp_template' not in current_url:
|
||||
_logger.debug('Remote already set up.')
|
||||
return
|
||||
|
||||
remote_url = ''
|
||||
while remote_url == '':
|
||||
print('Please enter a new URL for your git remote.')
|
||||
remote_url = _prompt().strip()
|
||||
_exec_checked(['git', 'remote', 'set-url', 'origin', remote_url])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
logging.basicConfig(level=logging.DEBUG, format='%(message)s')
|
||||
_root = Path(__file__).parent.parent
|
||||
os.chdir(_root)
|
||||
#try:
|
||||
verify_tools()
|
||||
download_spp()
|
||||
update_spp()
|
||||
setup_project()
|
||||
#except Exception as e:
|
||||
# _logger.error('There was an error running the script: %s.', e)
|
||||
# sys.exit(1)
|
||||
try:
|
||||
verify_tools()
|
||||
download_spp()
|
||||
update_spp()
|
||||
verify_unchanged()
|
||||
setup_project()
|
||||
setup_git_remote()
|
||||
except Exception as e:
|
||||
_logger.error('There was an error running the script: %s', e)
|
||||
sys.exit(1)
|
||||
|
||||
Reference in New Issue
Block a user