Mageia Bugzilla – Attachment 9720 Details for
Bug 5229
doc-test.mageia.org with (s)ftp upload
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
New Account
|
Forgot Password
Non working script
update_publications.py (text/plain), 4.01 KB, created by
papoteur
on 2017-10-12 08:35:15 CEST
(
hide
)
Description:
Non working script
Filename:
MIME Type:
Creator:
papoteur
Created:
2017-10-12 08:35:15 CEST
Size:
4.01 KB
patch
obsolete
>import requests, json >from requests.auth import HTTPBasicAuth >import os.path as path >import time > >def list_pubs(manual): > pub_params={} > headers = {'content-type': 'application/json'} > if manual != '': > pub_params['file'] = manual > pub_params['input']= '/workspaces/Documentation/publications' > print("Wait to get the list of publications...\n") > resp = requests.get('http://mageia.calenco.com:8284/workspaces/Documentation/publications', > auth=HTTPBasicAuth('papoteur@mageia.org', '*****'), > data=json.dumps(pub_params)) > if int(resp.status_code) != 200: > # This means something went wrong. > print('GET /workspaces/ {}'.format(resp.status_code)) > exit() > print("Writing liste.csv") > with open("liste.csv",'w') as f: > f.write("Name\thref\tInput\tOutput\tupdated\tStatus\tAutomatic\n") > for item in resp.json(): > if item['output']['method'] in ('FTP','SFTP'): > serv=item['output']['storsrv'] > else: > serv='' > f.write("{name}\t{href}\t{input}\t{output}\t{updated}\t{status}\t{automatic}\t{server}\n".format(name=item["name"],href=item["href"],updated=item["updated"], > output=item['output']['name'],status=item["status"],automatic=item["automatic"], input=item['input']['href'], server = serv)) > # Set a new storage server > for item in resp.json(): > pub_params = {} > # Point to prestored server > pub_params['strsrv']= '/workspaces/Documentation/storageservers/STORa3bfd572ba09215167ea796f5f613336' > try: > pub_params['automatic'] = item['automatic'] > except: > pass > try: > pub_params['tparams'] = item['toolchain'] > except: > pass > try: > pub_params['xsl'] = item['xsl']['path'] > except: > pass > #try: > p = [] > for param in item['xsl']['params']: > p.append('{}={}'.format(param['name'], param['value']) ) > pub_params['xslparams'] = p > #except: > #pass > try: > r, e = path.splitext(item['output']['name']) > pub_params['outname'] = r > except: > pass > try: > pub_params['method'] = item['output']['method'] > except: > pass > try: > pub_params['rs-path'] = item['outpath']['path'] > except: > pass > try: > if item['output']['zip'] == False: > pub_params['rs-multifile'] = 'multifile' > except: > pass > print(pub_params) > resp2 = requests.put('http://mageia.calenco.com:8284/workspaces/Documentation/publications/{name}'.format(name=item['name']), > auth=HTTPBasicAuth('papoteur@mageia.org', '******'), > data=json.dumps(pub_params), > headers=headers) > if int(resp2.status_code) != 200: > # This means something went wrong. > print('PUT /workspaces/ {}: {}'.format(resp2.status_code, resp2.text)) > exit() > exit() > # renew each publication > for item in resp.json(): > if item['name'].find('WebHelp') != -1: > pub_params = {} > pub_params['name']= item['name'] > print(item['name'], pub_params) > resp2 = requests.post('http://mageia.calenco.com:8284/workspaces/Documentation/pubsqueue', > auth=HTTPBasicAuth('papoteur@mageia.org', 'jazzab'), > data=json.dumps(pub_params), > headers=headers) > if int(resp2.status_code) != 202: > # This means something went wrong. > print('GET /workspaces/ {}'.format(resp2.status_code)) > exit() > # Add delay of 30 seconds between each publication > time.sleep(30) > >list_pubs('')
import requests, json from requests.auth import HTTPBasicAuth import os.path as path import time def list_pubs(manual): pub_params={} headers = {'content-type': 'application/json'} if manual != '': pub_params['file'] = manual pub_params['input']= '/workspaces/Documentation/publications' print("Wait to get the list of publications...\n") resp = requests.get('http://mageia.calenco.com:8284/workspaces/Documentation/publications', auth=HTTPBasicAuth('papoteur@mageia.org', '*****'), data=json.dumps(pub_params)) if int(resp.status_code) != 200: # This means something went wrong. print('GET /workspaces/ {}'.format(resp.status_code)) exit() print("Writing liste.csv") with open("liste.csv",'w') as f: f.write("Name\thref\tInput\tOutput\tupdated\tStatus\tAutomatic\n") for item in resp.json(): if item['output']['method'] in ('FTP','SFTP'): serv=item['output']['storsrv'] else: serv='' f.write("{name}\t{href}\t{input}\t{output}\t{updated}\t{status}\t{automatic}\t{server}\n".format(name=item["name"],href=item["href"],updated=item["updated"], output=item['output']['name'],status=item["status"],automatic=item["automatic"], input=item['input']['href'], server = serv)) # Set a new storage server for item in resp.json(): pub_params = {} # Point to prestored server pub_params['strsrv']= '/workspaces/Documentation/storageservers/STORa3bfd572ba09215167ea796f5f613336' try: pub_params['automatic'] = item['automatic'] except: pass try: pub_params['tparams'] = item['toolchain'] except: pass try: pub_params['xsl'] = item['xsl']['path'] except: pass #try: p = [] for param in item['xsl']['params']: p.append('{}={}'.format(param['name'], param['value']) ) pub_params['xslparams'] = p #except: #pass try: r, e = path.splitext(item['output']['name']) pub_params['outname'] = r except: pass try: pub_params['method'] = item['output']['method'] except: pass try: pub_params['rs-path'] = item['outpath']['path'] except: pass try: if item['output']['zip'] == False: pub_params['rs-multifile'] = 'multifile' except: pass print(pub_params) resp2 = requests.put('http://mageia.calenco.com:8284/workspaces/Documentation/publications/{name}'.format(name=item['name']), auth=HTTPBasicAuth('papoteur@mageia.org', '******'), data=json.dumps(pub_params), headers=headers) if int(resp2.status_code) != 200: # This means something went wrong. print('PUT /workspaces/ {}: {}'.format(resp2.status_code, resp2.text)) exit() exit() # renew each publication for item in resp.json(): if item['name'].find('WebHelp') != -1: pub_params = {} pub_params['name']= item['name'] print(item['name'], pub_params) resp2 = requests.post('http://mageia.calenco.com:8284/workspaces/Documentation/pubsqueue', auth=HTTPBasicAuth('papoteur@mageia.org', 'jazzab'), data=json.dumps(pub_params), headers=headers) if int(resp2.status_code) != 202: # This means something went wrong. print('GET /workspaces/ {}'.format(resp2.status_code)) exit() # Add delay of 30 seconds between each publication time.sleep(30) list_pubs('')
View Attachment As Raw
Actions:
View
Attachments on
bug 5229
: 9720