diff --git a/dashboard/settings.py b/dashboard/settings.py index 57d5d97..01f4a25 100644 --- a/dashboard/settings.py +++ b/dashboard/settings.py @@ -27,9 +27,16 @@ def get_user_name_list(): users = ['', 'dsk-minchulahn', 'Ose-Exem', 'deukjin', 'pparkssi3'] return users -def set_git_config(username): - repo.config_writer().set_value('user', 'name', username).release() - repo.config_writer().set_value('user', 'email', 'minchulahn@ex-em.com').release() +def get_user_email(name): + if name == 'dsk-minchulahn': return 'minchulahn@ex-em.com' + elif name == 'Ose-Exem': return 'ose@ex-em.com' + elif name == 'deukjin': return 'djkim@ex-em.com' + elif name == 'pparkssi3': return 'pparkssi@ex-em.com' + else: return '' + +def set_git_config(name, email): + repo.config_writer().set_value('user', 'name', name).release() + repo.config_writer().set_value('user', 'email', email).release() def diff(): if len(repo.index.diff(repo.head.commit)) > 0: diff --git a/dashboard/sidebar.py b/dashboard/sidebar.py index 33ae467..014c537 100644 --- a/dashboard/sidebar.py +++ b/dashboard/sidebar.py @@ -35,7 +35,9 @@ def show_sidebar(df, edited_df): with st.sidebar: st.subheader('Git Push') with st.expander('Git Push'): - selected_user_name = st.selectbox('User Name', get_user_name_list()) + selected_user_name = st.selectbox('User Name', get_user_name_list(), key='git_user_name') + set_git_config(selected_user_name, get_user_email(selected_user_name)) + commit_message = st.text_input('Commit Message', value='Update version.json') extended_description = st.text_area('Extended description', value=set_extended_description(edited_df), height=200) @@ -51,7 +53,8 @@ def show_sidebar(df, edited_df): logger.warning(f'Git Push - No changes have been made | {selected_user_name}') st.warning('No changes have been made', icon='⚠️') else: - set_git_config(selected_user_name) + st.snow() + time.sleep(1) set_version_json(edited_df) git_push(commit_message, extended_description) logger.info(f'Git Push - Success | {selected_user_name}') @@ -61,7 +64,7 @@ def show_sidebar(df, edited_df): else: logger.error(f'Git Push - Updates were rejected because the tip of your current branch is behind | {selected_user_name}') st.error('Updates were rejected because the tip of your current branch is behind', icon='🚨') - + st.divider() st.subheader('Draft a new release') @@ -87,16 +90,17 @@ def show_sidebar(df, edited_df): if st.button(key='release', label='Publish release', disabled=st.session_state.release_button_disabled): if selected_tag and release_title and release_describe: + st.snow() response = publish_release(selected_tag, release_title, release_describe) if response.status_code == 201: - logger.info(f'Publish Release - Release created successfully | {selected_user_name}') + logger.info(f'Publish Release - Release created successfully') st.success('Release created successfully', icon='✅') git_pull() streamlit_js_eval(js_expressions='parent.window.location.reload()') else: logger.error(f'Publish Release - Failed to create release. Status code: {response.status_code}') - logger.error(f'Response: {response.text} | {selected_user_name}') + logger.error(f'Response: {response.text}') st.error(f'Failed to create release. Status code: {response.status_code}\n\n Response: {response.text}', icon='🚨') st.divider() \ No newline at end of file