Automazione silenziosa di build-upload?

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Bloccato
olaplanche
Messaggi: 178
Registrazione: 26 gennaio 2017 - 11:11

17 dicembre 2018 - 16:18

- Versione WAPT installata: 1.6.2.7
- Sistema operativo del server: Debian Stretch
- Sistema operativo della macchina di amministrazione/creazione pacchetti: Windows 10

Salve,

vorrei sapere se è possibile automatizzare in modo silenzioso la creazione e il caricamento di un pacchetto tramite script.
La mia idea è di automatizzare completamente gli aggiornamenti dei pacchetti, se possibile...

Quando utilizzo il seguente comando: wapt-get.exe build-upload mypackagepath, mi viene richiesta la password della mia chiave privata. Sospetto che questo comportamento sia intenzionale, ma esiste un altro modo per farlo?

Grazie
- Versione WAPT installata: 2.6.0.16795 Enterprise
- Sistema operativo del server: Linux / Debian Bookworm
- Sistema operativo della macchina per l'amministrazione/creazione dei pacchetti: Windows 10
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

17 dicembre 2018 - 22:27

Codice di esempio che modifica un pacchetto, esegue l'aggiornamento del pacchetto e quindi ricostruisce il pacchetto fino alla scadenza VALIDITY-WAIT

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *
from waptpackage import *
from common import *

devrep = makepath('c:','waptdev')
packagename='smp-firefox-esr'
repcomplet=makepath(devrep,packagename)
myWapt = Wapt(config_filename=makepath(r'C:\Users\Administrateur\AppData\Local\waptconsole\waptconsole.ini'))
if isdir(repcomplet):
    remove_tree(repcomplet)
myWapt.edit_package(packagename,target_directory=repcomplet)
thepackage = PackageEntry(waptfile=repcomplet)
thepackage.call_setup_hook('update_package',wapt_context=myWapt)
myWapt.build_upload(repcomplet,private_key_passwd=ur'passwordkey',wapt_server_user='admin',wapt_server_passwd=ur'passwordserver',set_maturity='VALIDITY-WAIT')
olaplanche
Messaggi: 178
Registrazione: 26 gennaio 2017 - 11:11

18 dicembre 2018 - 11:48

Vorrei commentare il codice per assicurarmi di averlo capito correttamente:

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *
from waptpackage import *
from common import *

# Défini la variable devrep avec le chemin "c:\waptdev"
devrep = makepath('c:','waptdev')
# Défini la variable packagname avec le nom du paquet "smp-firefox-esr"
packagename='smp-firefox-esr'
# Défini la variable repcomplet avec la concaténation des variables devrep et packagename
repcomplet=makepath(devrep,packagename)
# Défini la variable myWapt avec le chemin du fichier de conf local de ma console
myWapt = Wapt(config_filename=makepath(r'C:\Users\Administrateur\AppData\Local\waptconsole\waptconsole.ini'))
# Supprimer le dossier local du package si il existe
if isdir(repcomplet):
    remove_tree(repcomplet)
# Télécharger et extraire le package depuis le repository wapt dans le dossier "repcomlet"
myWapt.edit_package(packagename,target_directory=repcomplet)
# Défini la variable thepackage avec les infos récupérées depuis le dossier local du package
thepackage = PackageEntry(waptfile=repcomplet)
# Appel de la fonction update_package du paquet en question
thepackage.call_setup_hook('update_package',wapt_context=myWapt)
# build et upload du paquet mis à jour sur le repository wapt
myWapt.build_upload(repcomplet,private_key_passwd=ur'passwordkey',wapt_server_user='admin',wapt_server_passwd=ur'passwordserver',set_maturity='VALIDITY-WAIT')
Se non sbaglio, è necessario aggiungere la funzione update_package al pacchetto desiderato, quindi salvare lo script Python personalizzato di cui sopra per il pacchetto desiderato ed eseguirlo in un'attività pianificata, ad esempio?!

GRAZIE
- Versione WAPT installata: 2.6.0.16795 Enterprise
- Sistema operativo del server: Linux / Debian Bookworm
- Sistema operativo della macchina per l'amministrazione/creazione dei pacchetti: Windows 10
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

18 dicembre 2018 - 13:38

Questo è tutto
olaplanche
Messaggi: 178
Registrazione: 26 gennaio 2017 - 11:11

19 dicembre 2018 - 14:54

Buongiorno,

Quando eseguo il mio script Python ricevo il seguente errore:

Codice: Seleziona tutto

wapt-wAdministratif_8.4-64_all.wapt[================================] 26555304/26555304 - 00:00:00
No handlers could be found for logger "root"
Traceback (most recent call last):
  File "e:\update_package_wapt-wAdministratif.py", line 23, in <module>
    myWapt.edit_package(packagename,target_directory=repcomplet)
  File "C:\wapt\common.py", line 6228, in edit_package
    raise Exception(u'Unable to unzip package in %s' % target_directory)
Exception: Unable to unzip package in c:\waptdev\wapt-wAdministratif
Lo sto eseguendo come amministratore, ma sembra che non riesca a decomprimere il pacchetto...

Avete qualche idea?

Modifica: in realtà non scarica affatto il pacchetto e non riesco ad accedervi tramite la console quando clicco su "modifica pacchetto"...

GRAZIE
- Versione WAPT installata: 2.6.0.16795 Enterprise
- Sistema operativo del server: Linux / Debian Bookworm
- Sistema operativo della macchina per l'amministrazione/creazione dei pacchetti: Windows 10
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

22 dicembre 2018 - 11:34

Esiste waptdev?
olaplanche
Messaggi: 178
Registrazione: 26 gennaio 2017 - 11:11

8 gennaio 2019 - 09:17

Ciao,

sì, la cartella c:\waptdev esiste.

PS: Auguro a tutto il team un felicissimo 2019 e vi ringrazio ancora per questo fantastico strumento!
- Versione WAPT installata: 2.6.0.16795 Enterprise
- Sistema operativo del server: Linux / Debian Bookworm
- Sistema operativo della macchina per l'amministrazione/creazione dei pacchetti: Windows 10
olaplanche
Messaggi: 178
Registrazione: 26 gennaio 2017 - 11:11

15 gennaio 2019 - 14:42

Ho appena rivisto questo problema e non riesco a riprodurre l'errore menzionato in precedenza...
Invece, sto notando un nuovo, strano comportamento:

nella mia cartella waptdev, la cartella del mio pacchetto si chiama "wapt-wAdministratif-wapt", e il nome del pacchetto nel suo file di controllo e nella console è "wapt-wAdministratif". Quando eseguo lo script Python di cui sopra, la cartella wapt-wAdministratif viene creata nella mia cartella waptdev...
ok, questo ha senso, questo lo capisco. Attualmente, lo script si blocca sulla funzione di aggiornamento del pacchetto.
La cosa più strana è che quando modifico il mio pacchetto c:\waptdev\wapt-wAdministratif-wapt (per modificare la funzione di aggiornamento, ad esempio) e poi eseguo un build-upload, il mio pacchetto viene generato e caricato correttamente sul server. Ho eliminato quello vecchio dalla console e ho eseguito di nuovo lo script Python di cui sopra. Il pacchetto wapt-wAdministratif è stato scaricato nella cartella c:\waptdev\wapt-wAdministratif, ma il contenuto non corrisponde all'ultima versione del pacchetto che ho modificato, generato e caricato in precedenza. Sembra che sul server sia presente una sola versione del pacchetto, quindi non capisco come sia possibile.

Continuerò a cercare, ma se qualcuno ha qualche idea, per favore me lo faccia sapere!

Grazie
- Versione WAPT installata: 2.6.0.16795 Enterprise
- Sistema operativo del server: Linux / Debian Bookworm
- Sistema operativo della macchina per l'amministrazione/creazione dei pacchetti: Windows 10
Bloccato