Compare commits
187 Commits
dsk-23.03.
...
dsk-23.03.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3d36675945 | ||
|
|
09af2eb556 | ||
|
|
c559608613 | ||
|
|
376ff6325f | ||
|
|
0a5b70a2f3 | ||
|
|
7d20ca8eb9 | ||
|
|
a5f6285009 | ||
|
|
aeadef126e | ||
|
|
cc21fec950 | ||
|
|
43ac36cc86 | ||
|
|
3d0858a58d | ||
|
|
a08b9e4234 | ||
|
|
da43bba760 | ||
|
|
b3b9162917 | ||
|
|
b9291e7b0d | ||
|
|
ef9ba63dce | ||
|
|
6e63ea30e8 | ||
|
|
363aa11c17 | ||
|
|
1117356ae3 | ||
|
|
d699ab960b | ||
|
|
865a40658e | ||
|
|
74a20cc99c | ||
|
|
142e9a3daa | ||
|
|
3ee05b4178 | ||
|
|
75d91dffc2 | ||
|
|
905a80f6ee | ||
|
|
d0c1fe0640 | ||
|
|
9a0a7bdcd5 | ||
|
|
17d366acf6 | ||
|
|
2b81e55db9 | ||
|
|
9dbf77d9b0 | ||
|
|
fbcda51c5c | ||
|
|
780fd0298b | ||
|
|
8b96450943 | ||
|
|
a75ff943e1 | ||
|
|
ad87d7ee00 | ||
|
|
9784c2c8bb | ||
|
|
3af648b517 | ||
|
|
a0010aec02 | ||
|
|
2eccb5d8c1 | ||
|
|
82d774f426 | ||
|
|
b1a132ecf3 | ||
|
|
48fc95c9dd | ||
|
|
0d9b0aef7a | ||
|
|
0e1de510aa | ||
|
|
91e962236b | ||
|
|
423114316e | ||
|
|
697750dfd1 | ||
|
|
dc5122b5f3 | ||
|
|
08d5c56825 | ||
|
|
53cc823df2 | ||
|
|
ba4e629cf2 | ||
|
|
0e0587aabc | ||
|
|
6eae7b4ecd | ||
|
|
ed425b59cb | ||
|
|
f31fe04d7d | ||
|
|
325443ad28 | ||
|
|
a8dfdcc115 | ||
|
|
22a689f557 | ||
|
|
8e3f7880f8 | ||
|
|
4e1d73f328 | ||
|
|
28eeeef27f | ||
|
|
4957458c3d | ||
|
|
9ec0ec12f3 | ||
|
|
8fae003772 | ||
|
|
ccff713ebc | ||
|
|
e6af664b19 | ||
|
|
9ebbd951d6 | ||
|
|
d999d338f3 | ||
|
|
00ae7b5a40 | ||
|
|
072cdda4ca | ||
|
|
9249348a97 | ||
|
|
8fad2d953c | ||
|
|
ed657d728a | ||
|
|
6309dcf2df | ||
|
|
e3f1734f31 | ||
|
|
060b525155 | ||
|
|
2ab8ae8133 | ||
|
|
a61d446944 | ||
|
|
bd8bfee30a | ||
|
|
2efcf6ebaf | ||
|
|
d47c5d241e | ||
|
|
cdeef86535 | ||
|
|
bc3ff87f8e | ||
|
|
fb178fd297 | ||
|
|
de6001dce3 | ||
|
|
6992b6574e | ||
|
|
d080e9ccff | ||
|
|
f842252939 | ||
|
|
42638c8905 | ||
|
|
b6d3d2a0af | ||
|
|
1528f21beb | ||
|
|
ca5dacf06f | ||
|
|
2cc4bab16a | ||
|
|
4cdb204377 | ||
|
|
abe0f1951d | ||
|
|
65e37217ef | ||
|
|
c90e90b614 | ||
|
|
4f2b226504 | ||
|
|
f36c0fbf74 | ||
|
|
854a7b2a70 | ||
|
|
f81113e7ee | ||
|
|
ef7657a7d8 | ||
|
|
fb7b9e6f78 | ||
|
|
aadbfef0d4 | ||
|
|
b51d0c6823 | ||
|
|
c4c9498e56 | ||
|
|
935439909e | ||
|
|
ac859019c5 | ||
|
|
c3cccd136a | ||
|
|
2174b7b76f | ||
|
|
34b1b2aab2 | ||
|
|
46fe51bc6f | ||
|
|
2dca0a6261 | ||
|
|
2f9e4b2fbd | ||
|
|
1f2bdd9323 | ||
|
|
44216710f7 | ||
|
|
a86d0a685e | ||
|
|
f63270166c | ||
|
|
a85931f6d5 | ||
|
|
26f793de59 | ||
|
|
c105249df6 | ||
|
|
6dfec1cccd | ||
|
|
cad101ac40 | ||
|
|
2a787369c1 | ||
|
|
24928daf28 | ||
|
|
5d7d3746ef | ||
|
|
392f2ab4a0 | ||
|
|
144485ddb7 | ||
|
|
ee6352148e | ||
|
|
b9d07eba82 | ||
|
|
cb6c3578f6 | ||
|
|
e57590d5f9 | ||
|
|
b0a5fc93c4 | ||
|
|
58cf477006 | ||
|
|
91313e312b | ||
|
|
bf76bea1f0 | ||
|
|
7e8bcabfab | ||
|
|
2658a24aaf | ||
|
|
d6c28c7211 | ||
|
|
b50d46400e | ||
|
|
e260f3b2a9 | ||
|
|
004273c8c7 | ||
|
|
9157709a4a | ||
|
|
f1e6d17f9e | ||
|
|
49a11eb68d | ||
|
|
f4796ace99 | ||
|
|
b82dc439d0 | ||
|
|
0b02d25e3c | ||
|
|
d2a829c141 | ||
|
|
85bacb2d6b | ||
|
|
d173a9ee2b | ||
|
|
0b51ff896d | ||
|
|
0bcb19e466 | ||
|
|
53bcc8581a | ||
|
|
eaab76c411 | ||
|
|
9d113bb375 | ||
|
|
8fb6dc7a7c | ||
|
|
bd03a6c8fe | ||
|
|
e0f146b937 | ||
|
|
0ab399946d | ||
|
|
ae30f7c317 | ||
|
|
b74ec8f463 | ||
|
|
47c2eb2f17 | ||
|
|
23d373a903 | ||
|
|
90022851c1 | ||
|
|
7e1636868c | ||
|
|
8608743c7f | ||
|
|
f6768361f0 | ||
|
|
275cf81d7a | ||
|
|
79f66bcf3b | ||
|
|
72287e3a71 | ||
|
|
10e2275519 | ||
|
|
9dd21a44d1 | ||
|
|
1604c8b79f | ||
|
|
1887c2c9e8 | ||
|
|
c6825dc188 | ||
|
|
6b58c73fb6 | ||
|
|
e216ef55f1 | ||
|
|
7eafc8745a | ||
|
|
fa61146d81 | ||
|
|
db8ed75e6d | ||
|
|
808df5dd05 | ||
|
|
f146f7b8e8 | ||
|
|
1e58e08a5e | ||
|
|
418d03f692 | ||
|
|
a003214416 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
__pycache__
|
__pycache__
|
||||||
|
dashboard/version-management.log
|
||||||
32
README.md
32
README.md
@@ -1,34 +1,34 @@
|
|||||||
# DataSaker
|
# DataSaker
|
||||||
### dsk-23.03.12
|
### dsk-23.03.16
|
||||||
|
|
||||||
# Service Version
|
# Service Version
|
||||||
| Type | Name | Candidate Version | Release Version | Product Version |
|
| Type | Name | Candidate Version | Release Version | Product Version |
|
||||||
|:--------:|:------------------------------|:-------------------:|:-----------------:|:-----------------:|
|
|:--------:|:------------------------------|:-------------------:|:-----------------:|:-----------------:|
|
||||||
| front | dsk-ui | release-0.2.22 | release-0.2.22 | release-0.2.22 |
|
| front | dsk-ui | release-0.2.50 | release-0.2.50 | release-0.2.30 |
|
||||||
| api | dsk-agent-api | release-0.1.14 | release-0.1.14 | release-0.1.14 |
|
| api | dsk-agent-api | release-0.1.15 | release-0.1.15 | release-0.1.15 |
|
||||||
| api | dsk-agentmanager-api | release-0.1.6 | release-0.1.6 | release-0.1.6 |
|
| api | dsk-agentmanager-api | release-0.1.6 | release-0.1.6 | release-0.1.6 |
|
||||||
| api | dsk-alert-api | release-0.1.17 | release-0.1.17 | release-0.1.17 |
|
| api | dsk-alert-api | release-0.1.20 | release-0.1.20 | release-0.1.19 |
|
||||||
| api | dsk-apm-api | release-0.1.15 | release-0.1.15 | release-0.1.15 |
|
| api | dsk-apm-api | release-0.1.15 | release-0.1.15 | release-0.1.15 |
|
||||||
| api | dsk-chart-api | release-0.2.8 | release-0.2.8 | release-0.2.8 |
|
| api | dsk-chart-api | | release-0.2.12 | release-0.2.11 |
|
||||||
| api | dsk-dashboard-api | release-0.1.16 | release-0.1.16 | release-0.1.16 |
|
| api | dsk-dashboard-api | release-0.1.16 | release-0.1.16 | release-0.1.16 |
|
||||||
| api | dsk-database-api | release-0.1.22 | release-0.1.22 | release-0.1.22 |
|
| api | dsk-database-api | release-0.1.35 | release-0.1.35 | release-0.1.27 |
|
||||||
| api | dsk-infrastructure-api | release-0.1.15 | release-0.1.15 | release-0.1.15 |
|
| api | dsk-infrastructure-api | release-0.1.15 | release-0.1.15 | release-0.1.15 |
|
||||||
| api | dsk-log-api | release-0.1.11 | release-0.1.11 | release-0.1.11 |
|
| api | dsk-log-api | release-0.1.13 | release-0.1.13 | release-0.1.12 |
|
||||||
| api | dsk-notification-api | release-0.2.6 | release-0.2.6 | release-0.2.6 |
|
| api | dsk-notification-api | | release-0.2.9 | release-0.2.9 |
|
||||||
| api | dsk-usergate-api | release-0.1.13 | release-0.1.13 | release-0.1.13 |
|
| api | dsk-usergate-api | release-0.1.13 | release-0.1.13 | release-0.1.13 |
|
||||||
| api | dsk-app-sender | release-0.2.0 | release-0.2.0 | release-0.2.0 |
|
| api | dsk-app-sender | release-0.2.1 | release-0.2.1 | release-0.2.1 |
|
||||||
| api | dsk-backoffice | | | |
|
| api | dsk-backoffice | | | |
|
||||||
| api | dsk-metering-batch | | release-0.0.3 | |
|
| api | dsk-metering-batch | release-0.0.5 | release-0.0.4 | |
|
||||||
| api | dsk-metering-blocking-batch | | | |
|
| api | dsk-metering-blocking-batch | | | |
|
||||||
| api | dsk-live-api | | | |
|
| api | dsk-live-api | | | |
|
||||||
| api | dsk-billing-api | release-0.1.2 | release-0.1.2 | release-0.1.2 |
|
| api | dsk-billing-api | release-0.1.3 | release-0.1.2 | release-0.1.2 |
|
||||||
| stream | dsk-database-plan-stream | release-0.1.1 | release-0.1.1 | |
|
| stream | dsk-database-plan-stream | release-0.1.1 | release-0.1.1 | |
|
||||||
| stream | dsk-metric-base-agg-stream | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
| stream | dsk-metric-base-agg-stream | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
||||||
| stream | dsk-metric-base-flat-stream | release-0.1.6 | release-0.1.6 | release-0.1.6 |
|
| stream | dsk-metric-base-flat-stream | release-0.1.10 | release-0.1.10 | release-0.1.6 |
|
||||||
| stream | dsk-trace-stream | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
| stream | dsk-trace-stream | release-0.2.0 | release-0.2.0 | release-0.1.3 |
|
||||||
| stream | dsk-metric-custom-flat-stream | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
| stream | dsk-metric-custom-flat-stream | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
||||||
| stream | dsk-tagging-connector | release-0.1.10 | release-0.1.10 | release-0.1.10 |
|
| stream | dsk-tagging-connector | | release-0.1.10 | release-0.1.10 |
|
||||||
| stream | dsk-kafka2storage | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
| stream | dsk-kafka2storage | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
||||||
| stream | dsk-log-connector | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
| stream | dsk-log-connector | release-0.1.3 | release-0.1.3 | release-0.1.3 |
|
||||||
| datagate | dsk-datagate | release-0.1.6 | release-0.1.6 | release-0.1.6 |
|
| datagate | dsk-datagate | release-0.1.7 | release-0.1.7 | release-0.1.6 |
|
||||||
| datagate | dsk-loggate | release-0.1.4 | release-0.1.3 | release-0.1.3 |
|
| datagate | dsk-loggate | release-0.1.5 | release-0.1.5 | release-0.1.5 |
|
||||||
28
dashboard/logger.py
Normal file
28
dashboard/logger.py
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
import os, logging
|
||||||
|
|
||||||
|
host = os.environ.get('VERSION_MANAGEMENT_SERVICE_HOST', default='10.10.43.240')
|
||||||
|
service = os.environ.get('VERSION_MANAGEMENT_SERVICE_PORT', default=31090)
|
||||||
|
|
||||||
|
class PrintHandler(logging.Handler):
|
||||||
|
def emit(self, record):
|
||||||
|
msg = self.format(record)
|
||||||
|
print(msg)
|
||||||
|
|
||||||
|
def setup_logger():
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
logger.setLevel(logging.INFO)
|
||||||
|
log_file='dashboard/version-management.log'
|
||||||
|
formatter = logging.Formatter(f'%(asctime)s %(levelname)s : %(message)s')
|
||||||
|
|
||||||
|
file_handler = logging.FileHandler(log_file)
|
||||||
|
file_handler.setFormatter(formatter)
|
||||||
|
|
||||||
|
print_handler = PrintHandler()
|
||||||
|
print_handler.setFormatter(formatter)
|
||||||
|
|
||||||
|
logger.addHandler(file_handler)
|
||||||
|
logger.addHandler(print_handler)
|
||||||
|
|
||||||
|
return logger
|
||||||
|
|
||||||
|
logger = setup_logger()
|
||||||
@@ -15,7 +15,7 @@ if __name__=='__main__':
|
|||||||
layout='wide'
|
layout='wide'
|
||||||
)
|
)
|
||||||
|
|
||||||
tab1, tab2 = st.tabs(["Deploy DataSaker", "Release Info"])
|
tab1, tab2 = st.tabs(["DataSaker", "Releases"])
|
||||||
|
|
||||||
with tab1:
|
with tab1:
|
||||||
st.header('DataSaker')
|
st.header('DataSaker')
|
||||||
@@ -24,7 +24,6 @@ if __name__=='__main__':
|
|||||||
col1, col2 = st.columns([7, 3])
|
col1, col2 = st.columns([7, 3])
|
||||||
with col1:
|
with col1:
|
||||||
st.subheader('Service')
|
st.subheader('Service')
|
||||||
|
|
||||||
if st.button('Data Reload'):
|
if st.button('Data Reload'):
|
||||||
git_pull()
|
git_pull()
|
||||||
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
||||||
@@ -41,7 +40,8 @@ if __name__=='__main__':
|
|||||||
'candidate_version': st.column_config.TextColumn('Candidate Version', validate=regex),
|
'candidate_version': st.column_config.TextColumn('Candidate Version', validate=regex),
|
||||||
'release_version': st.column_config.TextColumn('Release Version', validate=regex),
|
'release_version': st.column_config.TextColumn('Release Version', validate=regex),
|
||||||
'product_version': st.column_config.TextColumn('Product Version', validate=regex)
|
'product_version': st.column_config.TextColumn('Product Version', validate=regex)
|
||||||
}
|
},
|
||||||
|
height=800
|
||||||
)
|
)
|
||||||
with col2:
|
with col2:
|
||||||
st.text('Edited Rows')
|
st.text('Edited Rows')
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import json, requests, os
|
import os, json, requests, subprocess
|
||||||
from git import Repo
|
from git import Repo
|
||||||
|
|
||||||
repo = Repo('.')
|
repo = Repo('.')
|
||||||
file_path = './version.json'
|
file_path = './version.json'
|
||||||
repo.config_writer().set_value('user', 'name', 'dsk-minchulahn').release()
|
api_url = 'https://api.github.com/repos/cloudmoa/dsk-version-management/releases'
|
||||||
repo.config_writer().set_value('user', 'email', 'minchulahn@ex-em.com').release()
|
github_token = os.environ.get('GITHUB_TOKEN')
|
||||||
|
|
||||||
def get_datasaker():
|
def get_datasaker():
|
||||||
return json.load(open(file_path, 'r'))['datasaker']
|
return json.load(open(file_path, 'r'))['datasaker']
|
||||||
@@ -16,15 +16,29 @@ def get_commit_id():
|
|||||||
return repo.head.commit
|
return repo.head.commit
|
||||||
|
|
||||||
def get_tags():
|
def get_tags():
|
||||||
return repo.tags
|
latest_tags = sorted(repo.tags, key=lambda t: t.commit.committed_date, reverse=True)
|
||||||
|
return latest_tags
|
||||||
|
|
||||||
def get_github_releases():
|
def get_github_releases():
|
||||||
api_url = 'https://api.github.com/repos/cloudmoa/dsk-version-management/releases'
|
|
||||||
github_token = os.environ.get('GITHUB_TOKEN')
|
|
||||||
headers = {'Authorization': f'Bearer {github_token}', 'Accept': 'application/vnd.github.v3+json'}
|
headers = {'Authorization': f'Bearer {github_token}', 'Accept': 'application/vnd.github.v3+json'}
|
||||||
releases = requests.get(api_url, headers=headers).json()
|
releases = requests.get(api_url, headers=headers).json()
|
||||||
return releases
|
return releases
|
||||||
|
|
||||||
|
def get_user_name_list():
|
||||||
|
users = ['', 'dsk-minchulahn', 'Ose-Exem', 'deukjin', 'pparkssi3']
|
||||||
|
return users
|
||||||
|
|
||||||
|
def get_user_email(username):
|
||||||
|
if username == 'dsk-minchulahn': return 'minchulahn@ex-em.com'
|
||||||
|
elif username == 'Ose-Exem': return 'ose@ex-em.com'
|
||||||
|
elif username == 'deukjin': return 'djkim@ex-em.com'
|
||||||
|
elif username == 'pparkssi3': return 'pparkssi@ex-em.com'
|
||||||
|
else: return ''
|
||||||
|
|
||||||
|
def set_git_config(username, email):
|
||||||
|
subprocess.run(["git", "config", "--global", "user.name", username], check=True)
|
||||||
|
subprocess.run(["git", "config", "--global", "user.email", email], check=True)
|
||||||
|
|
||||||
def diff():
|
def diff():
|
||||||
if len(repo.index.diff(repo.head.commit)) > 0:
|
if len(repo.index.diff(repo.head.commit)) > 0:
|
||||||
return True
|
return True
|
||||||
@@ -51,8 +65,6 @@ def git_push(commit_message, extended_description):
|
|||||||
repo.git.push(force=False)
|
repo.git.push(force=False)
|
||||||
|
|
||||||
def publish_release(selected_tag, release_title, release_describe):
|
def publish_release(selected_tag, release_title, release_describe):
|
||||||
api_url = 'https://api.github.com/repos/cloudmoa/sample-app/releases'
|
|
||||||
github_token = os.environ.get('GITHUB_TOKEN')
|
|
||||||
headers = {'Authorization': f'Bearer {github_token}', 'Accept': 'application/vnd.github.v3+json'}
|
headers = {'Authorization': f'Bearer {github_token}', 'Accept': 'application/vnd.github.v3+json'}
|
||||||
release_data = {
|
release_data = {
|
||||||
'tag_name': selected_tag,
|
'tag_name': selected_tag,
|
||||||
|
|||||||
@@ -2,6 +2,12 @@ import json, time
|
|||||||
import streamlit as st
|
import streamlit as st
|
||||||
from streamlit_js_eval import streamlit_js_eval
|
from streamlit_js_eval import streamlit_js_eval
|
||||||
from settings import *
|
from settings import *
|
||||||
|
from logger import logger
|
||||||
|
|
||||||
|
if 'push_button_disabled' not in st.session_state:
|
||||||
|
st.session_state.push_button_disabled = True
|
||||||
|
if 'release_button_disabled' not in st.session_state:
|
||||||
|
st.session_state.release_button_disabled = True
|
||||||
|
|
||||||
def set_extended_description(edited_df):
|
def set_extended_description(edited_df):
|
||||||
json_edited_df = json.loads(edited_df.to_json(orient='records'))
|
json_edited_df = json.loads(edited_df.to_json(orient='records'))
|
||||||
@@ -29,21 +35,34 @@ def show_sidebar(df, edited_df):
|
|||||||
with st.sidebar:
|
with st.sidebar:
|
||||||
st.subheader('Git Push')
|
st.subheader('Git Push')
|
||||||
with st.expander('Git Push'):
|
with st.expander('Git Push'):
|
||||||
|
selected_user_name = st.selectbox('User Name', get_user_name_list(), key='git_user_name')
|
||||||
|
|
||||||
|
if selected_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')
|
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)
|
extended_description = st.text_area('Extended description', value=set_extended_description(edited_df), height=200)
|
||||||
|
|
||||||
if st.button(key='push', label='Commit changes'):
|
if selected_user_name and commit_message:
|
||||||
if commit_message:
|
st.session_state.push_button_disabled = False
|
||||||
|
else:
|
||||||
|
st.session_state.push_button_disabled = True
|
||||||
|
|
||||||
|
if st.button(key='push', label='Commit changes', disabled=st.session_state.push_button_disabled):
|
||||||
|
if selected_user_name and commit_message:
|
||||||
if diff_remote_head():
|
if diff_remote_head():
|
||||||
if df.equals(edited_df):
|
if df.equals(edited_df):
|
||||||
|
logger.warning(f'Git Push - No changes have been made | {selected_user_name}')
|
||||||
st.warning('No changes have been made', icon='⚠️')
|
st.warning('No changes have been made', icon='⚠️')
|
||||||
else:
|
else:
|
||||||
set_version_json(edited_df)
|
set_version_json(edited_df)
|
||||||
git_push(commit_message, extended_description)
|
git_push(commit_message, extended_description)
|
||||||
|
logger.info(f'Git Push - Success | {selected_user_name}')
|
||||||
st.success('Success', icon='✅')
|
st.success('Success', icon='✅')
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
||||||
else:
|
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.error('Updates were rejected because the tip of your current branch is behind', icon='🚨')
|
||||||
|
|
||||||
st.divider()
|
st.divider()
|
||||||
@@ -51,7 +70,7 @@ def show_sidebar(df, edited_df):
|
|||||||
st.subheader('Draft a new release')
|
st.subheader('Draft a new release')
|
||||||
with st.expander('Draft a new release'):
|
with st.expander('Draft a new release'):
|
||||||
tags = [tag.name for tag in get_tags()]
|
tags = [tag.name for tag in get_tags()]
|
||||||
tags.insert(0, "")
|
tags.insert(0, '')
|
||||||
new_tag = st.text_input('Create a new tag')
|
new_tag = st.text_input('Create a new tag')
|
||||||
|
|
||||||
if new_tag:
|
if new_tag:
|
||||||
@@ -64,15 +83,23 @@ def show_sidebar(df, edited_df):
|
|||||||
release_title = st.text_input('Release title', value=selected_tag)
|
release_title = st.text_input('Release title', value=selected_tag)
|
||||||
release_describe = st.text_area('Describe this release', value='## Production에 변경된 Version')
|
release_describe = st.text_area('Describe this release', value='## Production에 변경된 Version')
|
||||||
|
|
||||||
if st.button(key='release', label='Publish release'):
|
if selected_tag and release_title and release_describe:
|
||||||
|
st.session_state.release_button_disabled = False
|
||||||
|
else:
|
||||||
|
st.session_state.release_button_disabled = True
|
||||||
|
|
||||||
|
if st.button(key='release', label='Publish release', disabled=st.session_state.release_button_disabled):
|
||||||
|
if selected_tag and release_title and release_describe:
|
||||||
response = publish_release(selected_tag, release_title, release_describe)
|
response = publish_release(selected_tag, release_title, release_describe)
|
||||||
|
|
||||||
if response.status_code == 201:
|
if response.status_code == 201:
|
||||||
|
logger.info(f'Publish Release - Release created successfully')
|
||||||
st.success('Release created successfully', icon='✅')
|
st.success('Release created successfully', icon='✅')
|
||||||
git_pull()
|
git_pull()
|
||||||
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
streamlit_js_eval(js_expressions='parent.window.location.reload()')
|
||||||
else:
|
else:
|
||||||
st.error(f'Failed to create release. Status code: {response.status_code}', icon='🚨')
|
logger.error(f'Publish Release - Failed to create release. Status code: {response.status_code}')
|
||||||
st.error(f'Response: {response.text}', icon='🚨')
|
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()
|
st.divider()
|
||||||
106
version.json
106
version.json
@@ -1,21 +1,21 @@
|
|||||||
{
|
{
|
||||||
"datasaker": "dsk-23.03.12",
|
"datasaker": "dsk-23.03.16",
|
||||||
"service": [
|
"service": [
|
||||||
{
|
{
|
||||||
"type": "front",
|
"type": "front",
|
||||||
"name": "dsk-ui",
|
"name": "dsk-ui",
|
||||||
"latest_candidate_version": "release-0.2.22",
|
"latest_candidate_version": "release-0.2.50",
|
||||||
"candidate_version": "release-0.2.22",
|
"candidate_version": "release-0.2.50",
|
||||||
"release_version": "release-0.2.22",
|
"release_version": "release-0.2.50",
|
||||||
"product_version": "release-0.2.22"
|
"product_version": "release-0.2.30"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-agent-api",
|
"name": "dsk-agent-api",
|
||||||
"latest_candidate_version": "release-0.1.14",
|
"latest_candidate_version": "release-0.1.15",
|
||||||
"candidate_version": "release-0.1.14",
|
"candidate_version": "release-0.1.15",
|
||||||
"release_version": "release-0.1.14",
|
"release_version": "release-0.1.15",
|
||||||
"product_version": "release-0.1.14"
|
"product_version": "release-0.1.15"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -28,10 +28,10 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-alert-api",
|
"name": "dsk-alert-api",
|
||||||
"latest_candidate_version": "release-0.1.17",
|
"latest_candidate_version": "release-0.1.20",
|
||||||
"candidate_version": "release-0.1.17",
|
"candidate_version": "release-0.1.20",
|
||||||
"release_version": "release-0.1.17",
|
"release_version": "release-0.1.20",
|
||||||
"product_version": "release-0.1.17"
|
"product_version": "release-0.1.19"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -44,10 +44,10 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-chart-api",
|
"name": "dsk-chart-api",
|
||||||
"latest_candidate_version": "release-0.2.8",
|
"latest_candidate_version": "release-0.2.12",
|
||||||
"candidate_version": "release-0.2.8",
|
"candidate_version": "",
|
||||||
"release_version": "release-0.2.8",
|
"release_version": "release-0.2.12",
|
||||||
"product_version": "release-0.2.8"
|
"product_version": "release-0.2.11"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -60,10 +60,10 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-database-api",
|
"name": "dsk-database-api",
|
||||||
"latest_candidate_version": "release-0.1.22",
|
"latest_candidate_version": "release-0.1.35",
|
||||||
"candidate_version": "release-0.1.22",
|
"candidate_version": "release-0.1.35",
|
||||||
"release_version": "release-0.1.22",
|
"release_version": "release-0.1.35",
|
||||||
"product_version": "release-0.1.22"
|
"product_version": "release-0.1.27"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -76,18 +76,18 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-log-api",
|
"name": "dsk-log-api",
|
||||||
"latest_candidate_version": "release-0.1.11",
|
"latest_candidate_version": "release-0.1.13",
|
||||||
"candidate_version": "release-0.1.11",
|
"candidate_version": "release-0.1.13",
|
||||||
"release_version": "release-0.1.11",
|
"release_version": "release-0.1.13",
|
||||||
"product_version": "release-0.1.11"
|
"product_version": "release-0.1.12"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-notification-api",
|
"name": "dsk-notification-api",
|
||||||
"latest_candidate_version": "release-0.2.6",
|
"latest_candidate_version": "release-0.2.9",
|
||||||
"candidate_version": "release-0.2.6",
|
"candidate_version": "",
|
||||||
"release_version": "release-0.2.6",
|
"release_version": "release-0.2.9",
|
||||||
"product_version": "release-0.2.6"
|
"product_version": "release-0.2.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -100,10 +100,10 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-app-sender",
|
"name": "dsk-app-sender",
|
||||||
"latest_candidate_version": "release-0.2.0",
|
"latest_candidate_version": "release-0.2.1",
|
||||||
"candidate_version": "release-0.2.0",
|
"candidate_version": "release-0.2.1",
|
||||||
"release_version": "release-0.2.0",
|
"release_version": "release-0.2.1",
|
||||||
"product_version": "release-0.2.0"
|
"product_version": "release-0.2.1"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
@@ -116,9 +116,9 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-metering-batch",
|
"name": "dsk-metering-batch",
|
||||||
"latest_candidate_version": "release-0.0.3",
|
"latest_candidate_version": "release-0.0.5",
|
||||||
"candidate_version": "",
|
"candidate_version": "release-0.0.5",
|
||||||
"release_version": "release-0.0.3",
|
"release_version": "release-0.0.4",
|
||||||
"product_version": ""
|
"product_version": ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -140,8 +140,8 @@
|
|||||||
{
|
{
|
||||||
"type": "api",
|
"type": "api",
|
||||||
"name": "dsk-billing-api",
|
"name": "dsk-billing-api",
|
||||||
"latest_candidate_version": "release-0.1.2",
|
"latest_candidate_version": "release-0.1.3",
|
||||||
"candidate_version": "release-0.1.2",
|
"candidate_version": "release-0.1.3",
|
||||||
"release_version": "release-0.1.2",
|
"release_version": "release-0.1.2",
|
||||||
"product_version": "release-0.1.2"
|
"product_version": "release-0.1.2"
|
||||||
},
|
},
|
||||||
@@ -164,17 +164,17 @@
|
|||||||
{
|
{
|
||||||
"type": "stream",
|
"type": "stream",
|
||||||
"name": "dsk-metric-base-flat-stream",
|
"name": "dsk-metric-base-flat-stream",
|
||||||
"latest_candidate_version": "release-0.1.6",
|
"latest_candidate_version": "release-0.1.10",
|
||||||
"candidate_version": "release-0.1.6",
|
"candidate_version": "release-0.1.10",
|
||||||
"release_version": "release-0.1.6",
|
"release_version": "release-0.1.10",
|
||||||
"product_version": "release-0.1.6"
|
"product_version": "release-0.1.10"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "stream",
|
"type": "stream",
|
||||||
"name": "dsk-trace-stream",
|
"name": "dsk-trace-stream",
|
||||||
"latest_candidate_version": "release-0.1.3",
|
"latest_candidate_version": "release-0.2.0",
|
||||||
"candidate_version": "release-0.1.3",
|
"candidate_version": "release-0.2.0",
|
||||||
"release_version": "release-0.1.3",
|
"release_version": "release-0.2.0",
|
||||||
"product_version": "release-0.1.3"
|
"product_version": "release-0.1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -188,8 +188,8 @@
|
|||||||
{
|
{
|
||||||
"type": "stream",
|
"type": "stream",
|
||||||
"name": "dsk-tagging-connector",
|
"name": "dsk-tagging-connector",
|
||||||
"latest_candidate_version": "release-0.1.10",
|
"latest_candidate_version": "release-0.1.11",
|
||||||
"candidate_version": "release-0.1.10",
|
"candidate_version": "",
|
||||||
"release_version": "release-0.1.10",
|
"release_version": "release-0.1.10",
|
||||||
"product_version": "release-0.1.10"
|
"product_version": "release-0.1.10"
|
||||||
},
|
},
|
||||||
@@ -212,18 +212,18 @@
|
|||||||
{
|
{
|
||||||
"type": "datagate",
|
"type": "datagate",
|
||||||
"name": "dsk-datagate",
|
"name": "dsk-datagate",
|
||||||
"latest_candidate_version": "release-0.1.6",
|
"latest_candidate_version": "release-0.1.7",
|
||||||
"candidate_version": "release-0.1.6",
|
"candidate_version": "release-0.1.7",
|
||||||
"release_version": "release-0.1.6",
|
"release_version": "release-0.1.7",
|
||||||
"product_version": "release-0.1.6"
|
"product_version": "release-0.1.6"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "datagate",
|
"type": "datagate",
|
||||||
"name": "dsk-loggate",
|
"name": "dsk-loggate",
|
||||||
"latest_candidate_version": "release-0.1.5",
|
"latest_candidate_version": "release-0.1.5",
|
||||||
"candidate_version": "release-0.1.4",
|
"candidate_version": "release-0.1.5",
|
||||||
"release_version": "release-0.1.3",
|
"release_version": "release-0.1.5",
|
||||||
"product_version": "release-0.1.3"
|
"product_version": "release-0.1.5"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user