2017-10-09 19 views
0

J'ai reçu la tâche de (re) déployer l'application Web sur AS wildfly via l'application http rest. La fonction fonctionne, mais il y a un problème. donc fonction:La fonction qui doit télécharger et déployer l'application Web ne fonctionne pas correctement

def upload_and_deploy(server, app): 
    try: 
     pass 
     files = {'file': open(distr_path + '/app-01.001.02-028.war', 'rb')} 
     response = requests.post('http://' + server + ':9990/management/add-content', files=files, auth=HTTPDigestAuth('login', 'password')).text 
     response_converted_to_json = json.loads(response) 
     bytes_value_from_response = response_converted_to_json["result"]["BYTES_VALUE"] 
     json_start = '{"content":[{"hash": {"BYTES_VALUE" : "' 
     json_end = '"}}], "address": [{"deployment":"'+ app + '"}], "operation":"add", "enabled":"true"}' 
     full_json_for_deploy_request = json_start+bytes_value_from_response+json_end 
     print '>>>>>>', full_json_for_deploy_request 
     response = requests.post('http://' + server + ':9990/management', auth=HTTPDigestAuth('login', 'password'), data= (full_json_for_deploy_request), headers=headers) 
     print "Start", app, "code -", response.status_code 

    except requests.exceptions.ConnectionError: 
     print 'Server - %s not run' % server 

Résultat semble bon:

>>>>>> {"content":[{"hash": {"BYTES_VALUE" : "t3W62oVUihsqyINy9rRG/T3DuI4="}}], "address": [{"deployment":"app-name"}], "operation":"add", "enabled":"true"} 
Start app-name code - 200 

AS journaux semble pas typique, mais sans erreurs:

2017-10-09 10:07:07,688 INFO [org.jboss.as.repository] (XNIO-1 task-9) WFLYDR0001: Content added at location /opt/platform/wildfly-9.0.2.Final/standalone/data/content/b7/75bada85548a1b2ac88372f6b446fd3dc3b88e/content 
2017-10-09 10:07:07,704 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4) WFLYSRV0027: Starting deployment of "app-name" (runtime-name: "app-name") 
2017-10-09 10:07:07,983 INFO [org.jboss.as.server] (XNIO-1 task-2) WFLYSRV0010: Deployed "app-name" (runtime-name : "app-name") 

donc l'application est en cours d'exécution, mais ne fonctionne pas. Quelqu'un peut-il me donner un indice, quel est le problème?

Répondre

1

Le nom de déploiement doit se terminer par une extension d'archive valide afin que le traitement approprié se produise. Dans votre cas, il devrait se terminer par .war.

Le json_end devrait ressembler à ceci.

json_end = '"}}], "address": [{"deployment":"'+ app + '.war"}],"operation":"add", "enabled":"true"}'