A partire dalla versione 2.0 di Gestore componenti aggiuntivi , ora puoi distribuire l'aggiornamento automatico JMP componenti aggiuntivi per i tuoi utenti con un solo clic. Add-In Manager consente di eseguire la distribuzione in posizioni di test e produzione. La distribuzione, ai fini di Gestione componenti aggiuntivi, è il processo di spostamento (o push) di un componente aggiuntivo per gli utenti.
È possibile definire posizioni di distribuzione predefinite per TEST e PROD con le preferenze di Add-In Manager. È inoltre possibile impostare le posizioni TEST e PROD in modo diverso per ciascun componente aggiuntivo nella sezione Posizioni cartella nella scheda Informazioni generali.Esiste un file di script "customMetadata.jsl" creato all'interno del componente aggiuntivo con un array associativo contenente diverse informazioni. Una chiave nell'array associativo è chiamata "state", che contiene la posizione della build corrente, DEV, TEST o PROD. Puoi trovare ulteriori informazioni sull'aggiunta dei tuoi metadati personalizzati nel mio prossimo post sul blog, Gestione componenti aggiuntivi, parte 3: personalizzazione avanzata .
Crea componente aggiuntivo nella posizione DEV
Un percorso di distribuzione è un percorso di cartella che punta a una particolare area di gestione temporanea. In Gestione componenti aggiuntivi sono presenti tre aree di gestione temporanea (denominate posizioni di distribuzione): DEV, TEST e PROD. La posizione DEV è la posizione in cui vengono inizialmente creati i componenti aggiuntivi. Questa posizione è un ottimo posto per te, lo sviluppatore, per testare il tuo componente aggiuntivo e provarlo. Per informazioni su come creare un componente aggiuntivo in questa posizione DEV, controlla il mio blog precedente, Gestore componenti aggiuntivi, parte 1: definizione e creazione di un componente aggiuntivo JMP .
Distribuisci il componente aggiuntivo nella posizione TEST
Se hai bisogno di uno o più utenti per testare una particolare build del tuo componente aggiuntivo, ma non sei ancora pronto per distribuirlo a tutti, puoi distribuire il tuo componente aggiuntivo nella posizione di distribuzione TEST e fornire il percorso per installare questo componente aggiuntivo per gli utenti.
Prima di distribuire un componente aggiuntivo in una posizione TEST, assicurarsi di disporre di una posizione di distribuzione TEST definita nella scheda TEST della sezione Posizioni cartelle.
Fare clic sul pulsante a discesa Distribuisci e selezionare "Distribuisci TEST" per copiare il componente aggiuntivo nella cartella di distribuzione TEST. Il componente aggiuntivo TEST verrà sovrascritto ogni volta che viene distribuito nella cartella di distribuzione TEST.
Distribuisci il componente aggiuntivo nella posizione PROD
Una volta completati tutti i test per una nuova versione di un componente aggiuntivo pronta per essere rilasciata, puoi distribuire il tuo componente aggiuntivo
Prima di distribuire un componente aggiuntivo in una posizione PROD, assicurarsi di disporre di una posizione di distribuzione PROD definita nella scheda PROD della sezione Percorsi delle cartelle. Se utilizzi lo script di controllo degli aggiornamenti, assicurati che la cartella dei metadati PROD utilizzi un percorso del server poiché gli utenti dovranno essere in grado di accedere a questo percorso durante il controllo degli aggiornamenti.
Fare clic sul pulsante a discesa Distribuisci e selezionare "Distribuisci PROD" per copiare il componente aggiuntivo nella cartella di distribuzione PROD con uno stato impostato su "PROD". Il precedente componente aggiuntivo PROD verrà archiviato nella cartella PROD Archive e il nuovo componente aggiuntivo PROD prenderà il suo posto.

Durante la distribuzione in PROD, lo script dell'array associativo "publicedAddins.jsl" nella cartella dei metadati PROD verrà aggiornato con la data di creazione del componente aggiuntivo distribuito. Queste informazioni possono essere interrogate utilizzando lo script updateCheck, che può essere attivato nelle Preferenze di distribuzione.
Di seguito è riportato un esempio di file di script "publicedAddins.jsl" con due componenti aggiuntivi pubblicati. Non dovresti mai aver bisogno di guardare o modificare questo file, ma potrebbe essere utile sapere come funziona dietro le quinte.
Associative Array(
List(
List( "com.jmp.juchil.myjmpaddin1",
Associative Array(
List(
List( "filename", "My First JMP Add-In.jmpaddin" ),
List( "folder", "\\server\share\Add-In Depot\Production\" ),
List( "pubDate", 3594027166 )
)
)
),
List( "com.jmp.juchil.myjmpaddin2",
Associative Array(
List(
List( "filename", "My Second JMP Add-In.jmpaddin" ),
List( "folder", "\\server\share\Add-In Depot\Production\" ),
List( "pubDate", 3594026242 )
)
)
)
)
)
Aggiorna script di controllo
Affinché i componenti aggiuntivi si aggiornino automaticamente, è necessario che sia attivata la preferenza "Includi script di controllo aggiornamento". Con questa preferenza attivata, uno script denominato "updateCheck.jsl" verrà incluso nella cartella di primo livello del componente aggiuntivo. È possibile modificare lo script predefinito modificando il file "updateCheck.jsl" nella directory "Template Scripts" all'interno della home directory di Add-In Manager. Assicurati di fare una copia di questo file prima di modificarlo.
Il file "updateCheck.jsl" esistente controlla l'array associativo dei metadati PROD discusso nella sezione precedente. Utilizza la chiave "buildDate" del file di metadati personalizzati per verificare se la versione installata è precedente a una versione pubblicata disponibile. Poiché lo script di aggiornamento si basa sul file di metadati personalizzato, è importante mantenere attivato "Crea file di metadati" se si utilizzano le funzionalità di distribuzione.
È possibile utilizzare questo script utilizzando l'istruzione Include di seguito. Sarà necessario modificare l'ID in modo che corrisponda all'ID del componente aggiuntivo. Puoi utilizzare questo controllo degli aggiornamenti all'inizio dello script del tuo comando o in uno script ButtonBox per verificare la presenza di una nuova versione. Tuttavia, a partire da JMP 13, l'utilizzo di questo script all'interno di uno script addinLoad.jsl non funzionerà.
Include( "$ADDIN_HOME(com.jmp.myaddin)\updateCheck.jsl" );
com.jmp.juchil.addinmanager:checkForUpdate();
È possibile modificare lo script "updateCheck.jsl" all'interno della cartella di origine dopo che è stato copiato oppure è possibile modificare la copia originale utilizzata dalla cartella Template Scripts all'interno della cartella principale di Add-In Manager.
Il concetto che utilizza un array associativo per verificare la presenza di aggiornamenti è stato adattato da @brady_brady Il metodo di utilizzare una tabella con date di pubblicazione. Questo metodo è descritto in @Jeff_Perkinson post di Come scrivere componenti aggiuntivi JMP ad aggiornamento automatico .
Questo post sul blog è la seconda parte di una serie in tre parti, che spiega come definire e creare un componente aggiuntivo , distribuire un componente aggiuntivo agli utenti e effettuare personalizzazioni avanzate disponibile in Gestione componenti aggiuntivi.Spero che tu trovi il mio Gestore componenti aggiuntivi componente aggiuntivo utile!