from github.env import get_required_env_var, write_github_env
from actions_logging.app_logging import logger

def get_vault_env_config(env_name: str) ->str:
    vault_env_config = {
        'local_tmp_path': '/tmp/int',
        'aws_sm_sub_path': 'integration',
    }
    if not env_name:
        return vault_env_config
    elif env_name.startswith(('production')):
        vault_env_config = {
            'local_tmp_path': '/tmp/prod',
            'aws_sm_sub_path': 'production',
        }
    elif env_name.startswith(('staging')):
        vault_env_config = {
        'local_tmp_path': '/tmp/stg',
        'aws_sm_sub_path': 'staging',
    }
    return vault_env_config

def main():
    env = get_required_env_var('ENV_NAME')
    logger.info(f'Getting env config for {env}')
    env_config = get_vault_env_config(env)
    logger.info_green(f'env_config: {env_config}')
    write_github_env(env_config['local_tmp_path'], 'VAULT_CERT_LOCAL_PATH')
    write_github_env(env_config['aws_sm_sub_path'], 'AWS_SM_SUB_PATH')
    write_github_env(env_config['aws_sm_sub_path'].upper(), 'AWS_SM_SUB_PATH_UPPER')

if __name__ == '__main__':
    main()
