bazel/upload_package.py (48 lines of code) (raw):
#!/usr/bin/env python
import datetime
import sys
import os
import time
package_name = '{pkg_prefix}' + datetime.datetime.now().strftime('%Y-%m-%d-%H-%M') + '.tar.gz'
pangu_root = 'dfs://ea119dfssearch1--cn-shanghai/rtp_pkg/'
dest_root = pangu_root + package_name + '/' # for madrox status
oss_root = 'oss://search-ad/{oss_prefix}/'
oss_http_root = 'http://search-ad.oss-cn-hangzhou-zmf.aliyuncs.com/{oss_prefix}/'
package_json = [
{
"type": "ARCHIVE",
"packageURI": "hdfs://et2prod1/rtp/pkg/hadoop_2.8.0_adp2_3_13-nositexml.tar",
},
{
"type": "ARCHIVE",
"packageURI": "hdfs://et2prod1/rtp/pkg/search-hdfs-site-2020-08-07-16-50.tar",
},
{
"packageURI": "reg.docker.alibaba-inc.com/isearch/hippo_alios7u2_gcc83_rtp_prod:0.4.9",
"type": "IMAGE"
},
{
#"packageURI": dest_root + package_name,
"packageURI": oss_http_root + package_name,
"type": "ARCHIVE"
},
]
entity_json = {'package_name': package_name,
'package_json': package_json}
cmd = 'rm pkgname tmp.tar.gz; cp -L pkg.tar tmp.tar && echo %(pkg_name)s > pkgname && chmod +w tmp.tar && tar -rf tmp.tar pkgname && pigz -p8 tmp.tar && osscmd mp --thread_num=20 tmp.tar.gz oss://search-ad/{oss_prefix}/%(pkg_name)s && rm pkgname tmp.tar.gz' % {'pkg_name':package_name}
print(os.getcwd())
print(cmd)
ret = os.system(cmd)
if ret != 0:
raise Exception('upload failed')
oss_credentials = open('/home/%s/.osscredentials' % os.environ['USER']).readlines()
accessid = None
accesskey = None
endpoint = None
for line in oss_credentials:
tokens = [token.strip() for token in line.split('=')]
if tokens[0] == 'accessid':
accessid = tokens[1]
if tokens[0] == 'accesskey':
accesskey = tokens[1]
if tokens[0] == 'host':
endpoint = tokens[1]
print('upload package %s done' % package_name)