Pagina 1 di 2
[WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 20 maggio 2019 - 14:23
di upperm
Buongiorno,
Sto creando un pacchetto per installare Oracle 11.
Ho riscontrato un problema durante il processo di installazione. Per un'installazione silenziosa, è necessario eseguire setup.exe con un file
.rspFinora nessun problema. Il problema è che setup.exe esegue il processo oui.exe, che esegue l'installazione (e quindi setup.exe si chiude immediatamente). Di conseguenza, WAPT riscontra un errore e termina la procedura, generando errori nel processo.
Quindi, è possibile far sì che WAPT attenda prima di procedere con il resto dell'installazione mentre il processo oui.exe è in esecuzione?
setup.py
Codice: Seleziona tutto
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
def install():
print ('Installation clef registre')
registry_setstring(HKEY_LOCAL_MACHINE, "SOFTWARE\\Oracle",'ImagePath',makepath(programfiles32,'Oracle\Inventory'), type=REG_EXPAND_SZ)
print('installing far-oracle')
filecopyto('client.rsp','C:\Windows\Temp')
run(r'setup.exe -silent -responseFile C:\Windows\Temp\client.rsp')
filecopyto('Tnsnames.ora','C:\Oracle11\product\11.2.0\client_1\network\admin')
print ('Installation des drivers ODBC')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name MELODIE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name ARPEGE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name REQUIEM -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
def uninstall():
print('uninstalling far-oracle11')
run('C:\Oracle11\product\11.2.0\client_1\deinstall\deinstall.bat')
Registri:
Codice: Seleziona tutto
Ligne de Commande : install "c:\waptdev\far-oracle-wapt\WAPT\.."
Installing WAPT files c:\waptdev\far-oracle-wapt
Installation clef registre
installing far-oracle
2019-05-20 14:09:40,101 CRITICAL Fatal error in install script: IOError: [Errno 2] No such file or directory: 'C:\\Oracle11\\product\t.2.0\\client_1\network\x07dmin':
Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\common.py", line 3512, in install_wapt
exitstatus = setup.install()
File "c:\waptdev\far-oracle-wapt\setup.py", line 12, in install
filecopyto('Tnsnames.ora','C:\Oracle11\product\11.2.0\client_1\network\admin')
File "C:\Program Files (x86)\wapt\setuphelpers.py", line 682, in filecopyto
shutil.copy(filename,target)
File "C:\Program Files (x86)\wapt\lib\shutil.py", line 133, in copy
copyfile(src, dst)
File "C:\Program Files (x86)\wapt\lib\shutil.py", line 97, in copyfile
with open(dst, 'wb') as fdst:
IOError: [Errno 2] No such file or directory: 'C:\\Oracle11\\product\t.2.0\\client_1\network\x07dmin'
FATAL ERROR : IOError: [Errno 2] No such file or directory: 'C:\\Oracle11\\product\t.2.0\\client_1\network\x07dmin'
Exit code: 3
Grazie in anticipo !
Matteo.
Re: [WAPT 1.6.2][RISOLTO] Creazione di un pacchetto Oracle 11
Pubblicato: 20 maggio 2019 - 20:08
di upperm
Problema "risolto"!
Sto usando un file .bat, che evita di restituire un errore. Probabilmente non è il metodo migliore, ma funziona.
Sono riuscito anche a gestire la disinstallazione.
Quindi, se qualcuno volesse implementare Oracle 11 (32 bit), ecco cosa ho fatto:
Struttura del pacchetto:
La cartella Oracle contiene i file di installazione, nonché i file per l'installazione e la disinstallazione.
Il file
installazione.rsp
Codice: Seleziona tutto
###############################################################################
## Copyright(c) Oracle Corporation 1998, 2013. All rights reserved. ##
## ##
## Specify values for the variables listed below to customize ##
## your installation. ##
## ##
## Each variable is associated with a comment. The comment ##
## can help to populate the variables with the appropriate ##
## values. ##
## ##
###############################################################################
#-------------------------------------------------------------------------------
# Do not change the following system generated value.
#-------------------------------------------------------------------------------
oracle.install.responseFileVersion=http://www.oracle.com/2007/install/rspfmt_clientinstall_response_schema_v11_2_0
#-------------------------------------------------------------------------------
# This variable holds the hostname of the system as set by the user.
# It can be used to force the installation to use an alternative
# hostname rather than using the first hostname found on the system
# (e.g., for systems with multiple hostnames and network interfaces).
ORACLE_HOSTNAME=computer.mshome.net
#-------------------------------------------------------------------------------
# Unix group to be set for the inventory directory.
UNIX_GROUP_NAME=
#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.
#
# en : English ja : Japanese
# fr : French ko : Korean
# ar : Arabic es : Latin American Spanish
# bn : Bengali lv : Latvian
# pt_BR: Brazilian Portuguese lt : Lithuanian
# bg : Bulgarian ms : Malay
# fr_CA: Canadian French es_MX: Mexican Spanish
# ca : Catalan no : Norwegian
# hr : Croatian pl : Polish
# cs : Czech pt : Portuguese
# da : Danish ro : Romanian
# nl : Dutch ru : Russian
# ar_EG: Egyptian zh_CN: Simplified Chinese
# en_GB: English (Great Britain) sk : Slovak
# et : Estonian sl : Slovenian
# fi : Finnish es_ES: Spanish
# de : German sv : Swedish
# el : Greek th : Thai
# iw : Hebrew zh_TW: Traditional Chinese
# hu : Hungarian tr : Turkish
# is : Icelandic uk : Ukrainian
# in : Indonesian vi : Vietnamese
# it : Italian
#
# all_langs : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs
SELECTED_LANGUAGES=en,fr,fr_CA
#-------------------------------------------------------------------------------
# Complete path of the Oracle Home
ORACLE_HOME=C:\Oracle11\product\11.2.0\client_1
#-------------------------------------------------------------------------------
# Complete path of the Oracle Base.
ORACLE_BASE=C:\Oracle11
#------------------------------------------------------------------------------
#Name : INSTALL_TYPE
#Datatype : String
#Description: Installation type of the component.
#
# The following choices are available. The value should contain
# only one of these choices.
# - InstantClient
# - Administrator
# - Runtime
# - Custom
#
#Example : INSTALL_TYPE = Administrator
#------------------------------------------------------------------------------
oracle.install.client.installType=Administrator
#------------------------------------------------------------------------------
#Name : oracle.install.client.upgrading
#Datatype : boolean
#Description: whether or not this is an upgrade installation
#
# The following choices are available. The value should contain
# only one of these choices.
# - true
# - false
#
#Example : oracle.install.client.upgrading=true
#------------------------------------------------------------------------------
oracle.install.client.upgrading=false
#-------------------------------------------------------------------------------
# Name : oracle.install.client.customComponents
# Datatype : StringList
#
# This property is considered only if INSTALL_TYPE is set to "Custom"
#
# Description: List of Client Components you would like to install
#
# The following choices are available. You may specify any
# combination of these choices. The components you choose should
# be specified in the form "internal-component-name:version"
# Below is a list of components you may specify to install.
#
# oracle.sqlj:11.2.0.4.0 -- "Oracle SQLJ"
# oracle.rdbms.util:11.2.0.4.0 -- "Oracle Database Utilities"
# oracle.javavm.client:11.2.0.4.0 -- "Oracle Java Client"
# oracle.sqlplus:11.2.0.4.0 -- "SQL*Plus"
# oracle.dbjava.jdbc:11.2.0.4.0 -- "Oracle JDBC/THIN Interfaces"
# oracle.ldap.client:11.2.0.4.0 -- "Oracle Internet Directory Client"
# oracle.rdbms.oci:11.2.0.4.0 -- "Oracle Call Interface (OCI)"
# oracle.precomp:11.2.0.4.0 -- "Oracle Programmer"
# oracle.xdk:11.2.0.4.0 -- "Oracle XML Development Kit"
# oracle.network.aso:11.2.0.4.0 -- "Oracle Advanced Security"
# oracle.oraolap.mgmt:11.2.0.4.0 -- "OLAP Analytic Workspace Manager and Worksheet"
# oracle.network.client:11.2.0.4.0 -- "Oracle Net"
# oracle.network.cman:11.2.0.4.0 -- "Oracle Connection Manager"
# oracle.network.listener:11.2.0.4.0 -- "Oracle Net Listener"
# oracle.ordim.client:11.2.0.4.0 -- "Oracle Multimedia Client Option"
# oracle.odbc:11.2.0.4.0 -- "Oracle ODBC Driver"
# oracle.has.client:11.2.0.4.0 -- "Oracle Clusterware High Availability API"
# oracle.dbdev:11.2.0.4.0 -- "Oracle SQL Developer"
# oracle.rdbms.scheduler:11.2.0.4.0 -- "Oracle Scheduler Agent"
# oracle.ntoramts:11.2.0.4.0 -- "Oracle Services For Microsoft Transaction Server"
# oracle.ntrdbms.admin:11.2.0.4.0 -- "Oracle Administration Assistant for Windows"
# oracle.ntoledb:11.2.0.4.0 -- "Oracle Provider for OLE DB"
# oracle.ntoledb.odp_net_2:11.2.0.4.0 -- "Oracle Data Provider for .NET"
# oracle.aspnet_2:11.2.0.4.0 -- "Oracle Providers for ASP.NET"
# oracle.ntrdbms.perfmon:11.2.0.4.0 -- "Oracle Counters for Windows Performance Monitor"
# oracle.oo4o:11.2.0.4.0 -- "Oracle Objects for OLE"
#
#
# Example : oracle.install.client.customComponents="oracle.precomp:11.2.0.4.0","oracle.oraolap.mgmt:11.2.0.4.0","oracle.rdbms.scheduler:11.2.0.4.0"
#-------------------------------------------------------------------------------
oracle.install.client.customComponents=
#-------------------------------------------------------------------------------
# Host name to be used for by the Oracle Scheduler Agent.
# This needs to be entered in case oracle.rdbms.scheduler is selected in the
# list of custom components during custom install
#
# Example : oracle.install.client.schedulerAgentHostName = acme.domain.com
#------------------------------------------------------------------------------
oracle.install.client.schedulerAgentHostName=
#------------------------------------------------------------------------------
# Port number to be used for by the Oracle Scheduler Agent.
# This needs to be entered in case oracle.rdbms.scheduler is selected in the
# list of custom components during custom install
#
# Example: oracle.install.client.schedulerAgentPortNumber = 1500
#------------------------------------------------------------------------------
oracle.install.client.schedulerAgentPortNumber=
#------------------------------------------------------------------------------
# Specify the auto-updates option. It can be one of the following:
# - MYORACLESUPPORT_DOWNLOAD
# - OFFLINE_UPDATES
# - SKIP_UPDATES
#------------------------------------------------------------------------------
oracle.installer.autoupdates.option=SKIP_UPDATES
#------------------------------------------------------------------------------
# In case MYORACLESUPPORT_DOWNLOAD option is chosen, specify the location where
# the updates are to be downloaded.
# In case OFFLINE_UPDATES option is chosen, specify the location where the updates
# are present.
oracle.installer.autoupdates.downloadUpdatesLoc=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username which has the patches download privileges
# to be used for software updates.
# Example : AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password which has the patches download privileges
# to be used for software updates.
#
# Example : AUTOUPDATES_MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example : PROXY_HOST=proxy.domain.com
#------------------------------------------------------------------------------
PROXY_HOST=
#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=0
#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=
#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=
#------------------------------------------------------------------------------
# Specify the proxy realm.
#
# Example : PROXY_REALM=metalink
#------------------------------------------------------------------------------
PROXY_REALM=
Il file
rimuovere.rsp
Codice: Seleziona tutto
[ENGINE]
#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0
[GENERIC]
#
OH_HOME_DEINSTALL=false
#
DOMAIN_MANAGED_ASINSTANCE_DEINSTALL=true
#
UNMANAGED_ASINSTANCE_DEINSTALL=false
#
DEINSTALL_IN_ASINSTANCE_MODE=true
#
DEINSTALL INSTANCE LIST=
[SYSTEM]
[APPLICATIONS]
[RELATIONSHIPS]
#
MIDDLEWARE_HOME=
#
WEBLOGIC_HOME=
#
DOMAIN_HOST_NAME=
#
DOMAIN_PORT_NO=7001
#
DOMAIN_USER_NAME=weblogic
#
DOMAIN_USER_PASSWORD=
#
MANAGED_INSTANCE_LIST=
Il file
install_oracle.bat
Codice: Seleziona tutto
start /wait Oracle/install/oui.exe -responseFile C:\Windows\Temp\install.rsp -silent -nowait
Il file
setup.py
Codice: Seleziona tutto
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
ORACLE_HOME = 'C:\Oracle11\product\\11.2.0\client_1'
def install():
print ('Installation clef registre')
registry_setstring(HKEY_LOCAL_MACHINE, "SOFTWARE\\Oracle",'ImagePath',makepath(programfiles32,'Oracle\Inventory'), type=REG_EXPAND_SZ)
print('Installing wapt-oracle')
filecopyto('Oracle\\install.rsp','C:\Windows\Temp')
run('install_oracle.bat')
# Exemple pour ajouter une base ODBC. Pensez à modifier "-Name YOUR_APPS" et "Server=XXXXXXXX"
# print ('Installation des drivers ODBC')
# run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name YOUR_APPS -Platform 32-bit -SetPropertyValue "Server=XXXXXXXX"')
# Copie du fichier TNS Name si besoin
# filecopyto('Oracle\\tnsnames.ora',makepath(ORACLE_HOME,'network\\admin'))
filecopyto('Oracle\\remove.rsp',makepath(ORACLE_HOME,'deinstall'))
def uninstall():
print('Uninstalling wapt-oracle11')
if isfile(makepath(ORACLE_HOME,'deinstall\\deinstall.bat')):
run(r'{}\\deinstall/deinstall -silent -paramFile remove.rsp'.format(ORACLE_HOME))
print('Check if folder still persit and delete')
if isdir(makepath(ORACLE_HOME)):
remove_tree(makepath(ORACLE_HOME))
if isdir(makepath(programfiles32,'Oracle\Inventory')):
remove_tree(makepath(programfiles32,'Oracle\Inventory'))
if registry_readstring(HKEY_LOCAL_MACHINE, "SOFTWARE\\WOW6432Node", 'oracle') :
run('reg delete HKLM\SOFTWARE\WOW6432Node\oracle /f')
if registry_readstring(HKEY_LOCAL_MACHINE, "SOFTWARE", 'oracle') :
run('reg delete HKLM\SOFTWARE\oracle /f')
Matteo.
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 20 maggio 2019 - 21:50
di htouvet
Normalmente, il comando "run" di wapt attende il completamento del processo chiamato.
Nel tuo codice, il problema principale è l'assenza di 'r' nelle stringhe quando contengono "\" (un carattere che, se combinato con quello che segue, viene interpretato in Python in un modo speciale, a meno che non mettiamo una 'r' all'inizio della stringa per indicare 'raw', una stringa "raw").
Questo spiega gli strani errori "IOError: [Errno 2] Nessun file o directory: 'C:\\Oracle11\\product\t.2.0\\client_1\network\x07dmin'"
Codice: Seleziona tutto
def install():
print ('Installation clef registre')
registry_setstring(HKEY_LOCAL_MACHINE, "SOFTWARE\\Oracle",'ImagePath',makepath(programfiles32,'Oracler','Inventory'), type=REG_EXPAND_SZ)
print('installing far-oracle')
filecopyto('client.rsp',r'C:\Windows\Temp')
run(r'setup.exe -silent -responseFile C:\Windows\Temp\client.rsp')
filecopyto('Tnsnames.ora',r'C:\Oracle11\product\11.2.0\client_1\network\admin')
print ('Installation des drivers ODBC')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name MELODIE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name ARPEGE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name REQUIEM -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
def uninstall():
print('uninstalling far-oracle11')
run(r'C:\Oracle11\product\11.2.0\client_1\deinstall\deinstall.bat')
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 21 maggio 2019 - 11:40
di upperm
Sì, grazie, me ne sono accorto dopo!
Tuttavia, l'installazione non funziona se avviata con wapt. Sospetto che il problema sia dovuto all'account di sistema, perché quando avvio l'installazione da PyScripter, tutto funziona correttamente.
Oracle mi mostra un errore di autorizzazione:
Codice: Seleziona tutto
SEVERE: [FATAL] [INS-30131] Echec de la configuration initiale requise pour l'exécution des validations du programme d'installation.
CAUSE: Echec de l'accès à l'emplacement temporaire.
ACTION: Assurez-vous que l'utilisateur en cours détient les autorisations nécessaires pour accéder à l'emplacement temporaire.
Anche quando si cambia la directory di base (%tmp% utente) in un'altra (C:\Temp, C:\Windows\Temp) si verifica l'errore.
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 21 maggio 2019 - 15:28
di htouvet
Forse il mio errore di battitura (Oracle) nel percorso è errato...?
def install():
print('Installazione della chiave di registro')
registry_setstring(HKEY_LOCAL_MACHINE, "SOFTWARE\\Oracle", 'ImagePath', makepath(programfiles32, 'Oracle', 'Inventory'), type=REG_EXPAND_SZ)
...
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 22 maggio 2019 - 15:15
di upperm
Ho continuato i miei test e l'installazione ora funziona correttamente, senza più problemi. Tuttavia, sembra che riceva un errore quando WAPT cerca di terminare il processo:
Accesso negato: psutil.AccessDenied (pid=6328)
Ecco il file setup.py aggiornato
Codice: Seleziona tutto
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
ORACLE_HOME = r'C:\Oracle11\product\11.2.0\client_1'
RegInventory = r'SOFTWARE\Oracle'
RegOracle = r'SOFTWARE\WOW6432Node\Oracle'
def install():
print ('Installation clef registre')
registry_setstring(HKEY_LOCAL_MACHINE, RegInventory,'ImagePath',makepath(programfiles32,'Oracle\Inventory'), type=REG_EXPAND_SZ)
print('Installing far-oracle')
filecopyto('Oracle\\install.rsp','C:\Windows\Temp')
run(r'Oracle\install\oui.exe -responseFile C:\Windows\Temp\install.rsp -silent -nowait',timeout=60*60)
print ('Installation des drivers ODBC')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name MELODIE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name ARPEGE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Oracle dans OraClient11g_home1_32bit" -DsnType System -Name REQUIEM -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
filecopyto('Oracle\\tnsnames.ora',makepath(ORACLE_HOME,'network\\admin'))
filecopyto('Oracle\\remove.rsp',makepath(ORACLE_HOME,'deinstall'))
def uninstall():
print('Uninstalling far-oracle11')
if isfile(makepath(ORACLE_HOME,'deinstall\\deinstall.bat')):
run(r'{}\\deinstall/deinstall -silent -paramFile remove.rsp'.format(ORACLE_HOME))
if reg_key_exists(HKEY_LOCAL_MACHINE,RegOracle):
run('reg delete HKLM\{} /f'.format(RegOracle))
if reg_key_exists(HKEY_LOCAL_MACHINE,RegInventory):
run('reg delete HKLM\{} /f'.format(RegInventory))
# if service_installed('OracleRemExecService'):
# if service_is_running('OracleRemExecService'):
# service_stop('OracleRemExecService')
if isdir(makepath(ORACLE_HOME)):
remove_tree(r'C:\\Oracle11')
if isdir(makepath(programfiles32,'Oracle')):
remove_tree(makepath(programfiles32,'Oracle'))
Ecco i registri:
Codice: Seleziona tutto
Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\waptservice\service.py", line 1374, in run
self.running_task.run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 515, in run
self._run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 960, in _run
self.result.get('errors',[])))
Exception: Erreur lors de l'installation de [u'far-oracle']: erreurs dans les paquets [[u'far-oracle', PackageEntry(u'far-oracle',u'1.0.5') , u'Traceback (most recent call last):\n File "C:\\Program Files (x86)\\wapt\\common.py", line 4372, in install\n force=force\n File "C:\\Program Files (x86)\\wapt\\common.py", line 3591, in install_wapt\n raise e\nAccessDenied: psutil.AccessDenied (pid=6328)\n']]
Exception: Erreur lors de l'installation de [u'far-oracle']: erreurs dans les paquets [[u'far-oracle', PackageEntry(u'far-oracle',u'1.0.5') , u'Traceback (most recent call last):\n File "C:\\Program Files (x86)\\wapt\\common.py", line 4372, in install\n force=force\n File "C:\\Program Files (x86)\\wapt\\common.py", line 3591, in install_wapt\n raise e\nAccessDenied: psutil.AccessDenied (pid=6328)\n']]
Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\waptservice\service.py", line 1374, in run
self.running_task.run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 515, in run
self._run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 1041, in _run
self.result = self.wapt.audit(self.packagename,force = self.force)
File "C:\Program Files (x86)\wapt\common.py", line 5654, in audit
raise Exception('Package %s is not installed' % package)
Exception: Package far-oracle is not installed
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 24 ottobre 2019 - 09:59
di Ado
Stavo iniziando a disperare, grazie per la condivisione,
upperm!
Ho fatto come hai fatto tu, eseguendo direttamente oui.exe, e funziona correttamente. Tuttavia, non capisco perché non esegua il file .rsp direttamente dalla cartella WAPT, anche se posso copiare il file tnsnames...
Una domanda veloce: alla fine dell'installazione (o disinstallazione), ti chiede di premere Invio per chiudere il prompt dei comandi. Come si fa a evitare questo? Perché mi sembra che finché non lo si fa, l'installazione rimanga attiva.
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 24 ottobre 2019 - 10:19
di upperm
CIAO !
Personalmente non ho problemi a questo proposito.
File di installazione
Codice: Seleziona tutto
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
ORACLE_HOME = r'C:\Oracle11\product\11.2.0\client_1'
RegInventory = r'SOFTWARE\Oracle'
RegOracle = r'SOFTWARE\WOW6432Node\Oracle'
def install():
if not isfile(makepath(ORACLE_HOME,'bin\oraclient11.dll')):
print (r'Installation clef registre')
registry_setstring(HKEY_LOCAL_MACHINE, RegInventory,'ImagePath',makepath(programfiles32,'Oracle\Inventory'), type=REG_EXPAND_SZ)
filecopyto('Oracle\\install.rsp','C:\Windows\Temp')
print(r'Installation Oracle 11')
run(r'Oracle\install\oui.exe -responseFile C:\Windows\Temp\install.rsp -silent -nowait')
else:
print(r'Oracle 11 est deja installe')
if isfile(makepath(ORACLE_HOME,'bin\oraclient11.dll')):
print(r'Installation du fichier TnsName')
filecopyto('Oracle\\tnsnames.ora',makepath(ORACLE_HOME,'network\\admin'))
filecopyto('Oracle\\remove.rsp',makepath(ORACLE_HOME,'deinstall'))
print (r'Installation des drivers ODBC')
run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name MELODIE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name ARPEGE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name REQUIEM -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name MAESTRO -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
def uninstall():
if isfile(makepath(ORACLE_HOME,'deinstall\\deinstall.bat')):
print(r'Desinstallation Oracle 11')
run(r'{}\\deinstall/deinstall -silent -paramFile remove.rsp'.format(ORACLE_HOME))
if reg_key_exists(HKEY_LOCAL_MACHINE,RegOracle):
print(r'Suppression clef registre Oracle')
run('reg delete HKLM\{} /f'.format(RegOracle))
if reg_key_exists(HKEY_LOCAL_MACHINE,RegInventory):
print(r'Suppression clef registre Oracle Inventory')
run('reg delete HKLM\{} /f'.format(RegInventory))
# if service_installed('OracleRemExecService'):
# if service_is_running('OracleRemExecService'):
# service_stop('OracleRemExecService')
if isdir(makepath(ORACLE_HOME)):
print(r'Suppression du répertoire Oracle')
remove_tree(r'C:\\Oracle11')
if isdir(makepath(programfiles32,'Oracle')):
print(r'Suppression du répertoire Oracle Inventory')
remove_tree(makepath(programfiles32,'Oracle'))
File di risposta per l'installazione (install.rsp)
Codice: Seleziona tutto
###############################################################################
## Copyright(c) Oracle Corporation 1998, 2013. All rights reserved. ##
## ##
## Specify values for the variables listed below to customize ##
## your installation. ##
## ##
## Each variable is associated with a comment. The comment ##
## can help to populate the variables with the appropriate ##
## values. ##
## ##
###############################################################################
#-------------------------------------------------------------------------------
# Do not change the following system generated value.
#-------------------------------------------------------------------------------
oracle.install.responseFileVersion=http://www.oracle.com/2007/install/rspfmt_clientinstall_response_schema_v11_2_0
#-------------------------------------------------------------------------------
# This variable holds the hostname of the system as set by the user.
# It can be used to force the installation to use an alternative
# hostname rather than using the first hostname found on the system
# (e.g., for systems with multiple hostnames and network interfaces).
ORACLE_HOSTNAME=computer.mshome.net
#-------------------------------------------------------------------------------
# Unix group to be set for the inventory directory.
UNIX_GROUP_NAME=
#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.
#
# en : English ja : Japanese
# fr : French ko : Korean
# ar : Arabic es : Latin American Spanish
# bn : Bengali lv : Latvian
# pt_BR: Brazilian Portuguese lt : Lithuanian
# bg : Bulgarian ms : Malay
# fr_CA: Canadian French es_MX: Mexican Spanish
# ca : Catalan no : Norwegian
# hr : Croatian pl : Polish
# cs : Czech pt : Portuguese
# da : Danish ro : Romanian
# nl : Dutch ru : Russian
# ar_EG: Egyptian zh_CN: Simplified Chinese
# en_GB: English (Great Britain) sk : Slovak
# et : Estonian sl : Slovenian
# fi : Finnish es_ES: Spanish
# de : German sv : Swedish
# el : Greek th : Thai
# iw : Hebrew zh_TW: Traditional Chinese
# hu : Hungarian tr : Turkish
# is : Icelandic uk : Ukrainian
# in : Indonesian vi : Vietnamese
# it : Italian
#
# all_langs : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs
SELECTED_LANGUAGES=en,fr,fr_CA
#-------------------------------------------------------------------------------
# Complete path of the Oracle Home
ORACLE_HOME=C:\Oracle11\product\11.2.0\client_1
#-------------------------------------------------------------------------------
# Complete path of the Oracle Base.
ORACLE_BASE=C:\Oracle11
#------------------------------------------------------------------------------
#Name : INSTALL_TYPE
#Datatype : String
#Description: Installation type of the component.
#
# The following choices are available. The value should contain
# only one of these choices.
# - InstantClient
# - Administrator
# - Runtime
# - Custom
#
#Example : INSTALL_TYPE = Administrator
#------------------------------------------------------------------------------
oracle.install.client.installType=Runtime
#------------------------------------------------------------------------------
#Name : oracle.install.client.upgrading
#Datatype : boolean
#Description: whether or not this is an upgrade installation
#
# The following choices are available. The value should contain
# only one of these choices.
# - true
# - false
#
#Example : oracle.install.client.upgrading=true
#------------------------------------------------------------------------------
oracle.install.client.upgrading=false
#-------------------------------------------------------------------------------
# Name : oracle.install.client.customComponents
# Datatype : StringList
#
# This property is considered only if INSTALL_TYPE is set to "Custom"
#
# Description: List of Client Components you would like to install
#
# The following choices are available. You may specify any
# combination of these choices. The components you choose should
# be specified in the form "internal-component-name:version"
# Below is a list of components you may specify to install.
#
# oracle.sqlj:11.2.0.4.0 -- "Oracle SQLJ"
# oracle.rdbms.util:11.2.0.4.0 -- "Oracle Database Utilities"
# oracle.javavm.client:11.2.0.4.0 -- "Oracle Java Client"
# oracle.sqlplus:11.2.0.4.0 -- "SQL*Plus"
# oracle.dbjava.jdbc:11.2.0.4.0 -- "Oracle JDBC/THIN Interfaces"
# oracle.ldap.client:11.2.0.4.0 -- "Oracle Internet Directory Client"
# oracle.rdbms.oci:11.2.0.4.0 -- "Oracle Call Interface (OCI)"
# oracle.precomp:11.2.0.4.0 -- "Oracle Programmer"
# oracle.xdk:11.2.0.4.0 -- "Oracle XML Development Kit"
# oracle.network.aso:11.2.0.4.0 -- "Oracle Advanced Security"
# oracle.oraolap.mgmt:11.2.0.4.0 -- "OLAP Analytic Workspace Manager and Worksheet"
# oracle.network.client:11.2.0.4.0 -- "Oracle Net"
# oracle.network.cman:11.2.0.4.0 -- "Oracle Connection Manager"
# oracle.network.listener:11.2.0.4.0 -- "Oracle Net Listener"
# oracle.ordim.client:11.2.0.4.0 -- "Oracle Multimedia Client Option"
# oracle.odbc:11.2.0.4.0 -- "Oracle ODBC Driver"
# oracle.has.client:11.2.0.4.0 -- "Oracle Clusterware High Availability API"
# oracle.dbdev:11.2.0.4.0 -- "Oracle SQL Developer"
# oracle.rdbms.scheduler:11.2.0.4.0 -- "Oracle Scheduler Agent"
# oracle.ntoramts:11.2.0.4.0 -- "Oracle Services For Microsoft Transaction Server"
# oracle.ntrdbms.admin:11.2.0.4.0 -- "Oracle Administration Assistant for Windows"
# oracle.ntoledb:11.2.0.4.0 -- "Oracle Provider for OLE DB"
# oracle.ntoledb.odp_net_2:11.2.0.4.0 -- "Oracle Data Provider for .NET"
# oracle.aspnet_2:11.2.0.4.0 -- "Oracle Providers for ASP.NET"
# oracle.ntrdbms.perfmon:11.2.0.4.0 -- "Oracle Counters for Windows Performance Monitor"
# oracle.oo4o:11.2.0.4.0 -- "Oracle Objects for OLE"
#
#
# Example : oracle.install.client.customComponents="oracle.precomp:11.2.0.4.0","oracle.oraolap.mgmt:11.2.0.4.0","oracle.rdbms.scheduler:11.2.0.4.0"
#-------------------------------------------------------------------------------
oracle.install.client.customComponents=
#-------------------------------------------------------------------------------
# Host name to be used for by the Oracle Scheduler Agent.
# This needs to be entered in case oracle.rdbms.scheduler is selected in the
# list of custom components during custom install
#
# Example : oracle.install.client.schedulerAgentHostName = acme.domain.com
#------------------------------------------------------------------------------
oracle.install.client.schedulerAgentHostName=
#------------------------------------------------------------------------------
# Port number to be used for by the Oracle Scheduler Agent.
# This needs to be entered in case oracle.rdbms.scheduler is selected in the
# list of custom components during custom install
#
# Example: oracle.install.client.schedulerAgentPortNumber = 1500
#------------------------------------------------------------------------------
oracle.install.client.schedulerAgentPortNumber=
#------------------------------------------------------------------------------
# Specify the auto-updates option. It can be one of the following:
# - MYORACLESUPPORT_DOWNLOAD
# - OFFLINE_UPDATES
# - SKIP_UPDATES
#------------------------------------------------------------------------------
oracle.installer.autoupdates.option=SKIP_UPDATES
#------------------------------------------------------------------------------
# In case MYORACLESUPPORT_DOWNLOAD option is chosen, specify the location where
# the updates are to be downloaded.
# In case OFFLINE_UPDATES option is chosen, specify the location where the updates
# are present.
oracle.installer.autoupdates.downloadUpdatesLoc=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username which has the patches download privileges
# to be used for software updates.
# Example : AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password which has the patches download privileges
# to be used for software updates.
#
# Example : AUTOUPDATES_MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example : PROXY_HOST=proxy.domain.com
#------------------------------------------------------------------------------
PROXY_HOST=
#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=0
#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=
#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=
#------------------------------------------------------------------------------
# Specify the proxy realm.
#
# Example : PROXY_REALM=metalink
#------------------------------------------------------------------------------
PROXY_REALM=
File di risposta alla disinstallazione (remove.rsp)
Codice: Seleziona tutto
[ENGINE]
#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0
[GENERIC]
#
OH_HOME_DEINSTALL=false
#
DOMAIN_MANAGED_ASINSTANCE_DEINSTALL=true
#
UNMANAGED_ASINSTANCE_DEINSTALL=false
#
DEINSTALL_IN_ASINSTANCE_MODE=true
#
DEINSTALL INSTANCE LIST=
[SYSTEM]
[APPLICATIONS]
[RELATIONSHIPS]
#
MIDDLEWARE_HOME=
#
WEBLOGIC_HOME=
#
DOMAIN_HOST_NAME=
#
DOMAIN_PORT_NO=7001
#
DOMAIN_USER_NAME=weblogic
#
DOMAIN_USER_PASSWORD=
#
MANAGED_INSTANCE_LIST=
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 24 ottobre 2019 - 11:43
di Ado
Credo di aver parlato troppo presto...
Tramite PyScripter, l'installazione è andata a buon fine ora che eseguo oui.exe direttamente.
Tuttavia, quando eseguo il pacchetto nel modo usuale, ottengo lo stesso errore che hai tu: AccessDenied: psutil.AccessDenied (pid=11056)
MODIFICA: Nonostante l'errore che ho menzionato sopra, l'installazione si completa correttamente... Ho provato con un timeout più lungo o anche con accept_returncodes=[0,1601,3] (perché ho un codice di uscita: 3) ma non è cambiato nulla... MODIFICA
2: Sono riuscito a risolvere questo problema avviando il programma di installazione tramite un prompt dei comandi.
Re: [WAPT 1.6.2][Errore] Creazione di un pacchetto Oracle 11
Pubblicato: 2 aprile 2020 - 11:30
di jlatieule
Buongiorno,
Dopo il test, il codice restituito non è 3 ma -4
Provalo con accept_returncodes=[0,-4]
Ado ha scritto: ↑24 ott 2019 - 11:43
Penso di aver parlato troppo presto...
Tramite PyScripter, l'installazione è andata liscia ora che eseguo oui.exe direttamente.
Tuttavia, quando eseguo il pacchetto nel modo usuale, ottengo lo stesso errore che hai tu: AccessDenied: psutil.AccessDenied (pid=11056)
MODIFICA: Nonostante l'errore che ho menzionato sopra, l'installazione si completa correttamente... Ho provato con un timeout più lungo o anche con accept_returncodes=[0,1601,3] (perché ho un codice di uscita: 3) ma non è cambiato nulla...
MODIFICA 2: Sono riuscito a risolvere questo problema avviando il programma di installazione tramite un prompt dei comandi