2014-11-07 13 views
40

Sto seguendo guideline come firmare apk Android con Jenkins. Ho parametrizzato il lavoro di Jenkins con KSTOREPWD e KEYPWD. Una parte della configurazione del processo Jenkins' (Build-> Esegui shell) è quello di prendere quei parametri e memorizzarli come variabili d'ambiente:Echo off in uscita console Jenkins

export KSTOREPWD=${KSTOREPWD} 
export KEYPWD=${KEYPWD} 
... 
./gradlew assembleRelease 

Il problema è quando la compilazione è finita chiunque può accedere alla compilazione 'Uscita Console' e vedere quali password sono state inserite; parte di quella di uscita:

08:06:57 + export KSTOREPWD=secretStorePwd 
08:06:57 + KSTOREPWD=secretStorePwd 
08:06:57 + export KEYPWD=secretPwd 
08:06:57 + KEYPWD=secretPwd 

quindi mi piacerebbe per sopprimere l'eco prima uscita da export comandi e riattivare eco dopo export comandi.

risposta

80

Per impostazione predefinita, Jenkins lancia Execute Shell con set -x. Questo fa sì che tutti i comandi vengano echeggiati

È possibile digitare set +x prima di qualsiasi comando per eseguire temporaneamente l'override del comportamento. Ovviamente avrai bisogno di set -x per iniziare a mostrarli di nuovo.

è possibile ignorare questo comportamento per l'intero script inserendo il seguente nella parte superiore del passaggio di generazione:
#!/bin/bash +x

+4

Per inciso ho trovato '#!/Bin/bash' ha lavorato anche per! me. – vikingsteve

1

Nella tua situazione specifica (utilizzando Gradle e Jenkins) si potrebbe anche usare un parametro della password, utilizzando Gradle's pattern for environment variables (ORG_GRADLE_PROJECT_prop). Gradle sarà quindi impostare una proprietà prop sul progetto.

Nel tuo caso questo sarebbe simile a questa

enter image description here

E lo si può utilizzare nel vostro gradle.properties come questo

signingConfigs { 
    release { 
     storeFile file(KEYSTORE) 
     storePassword KSTOREPWD 
     keyAlias ALIAS 
     keyPassword KEYPWD 
    } 
} 

BTW - mi consiglia di utilizzare il credentials binding plugin per KEYSTORE enter image description here

Problemi correlati