Vacanze

ArtigianoDelSoftware va in vacanza per qualche giorno ……..

 

la creativit√† e la fantasia ne approfittano per trovare sempre nuove soluzioni ūüôā

carpenters

Advertisements

Template e Copy Page Tree – Una alleanza non indifferente

Componiamo le funzionalità

In questo post andremo a descrivere come possiamo comporre le due funzionalit√† in modo da ottenere un risultato unico ūüôā

 

L’Unione fa la forza

Per riprendere l’omonimo detto popolare, mettendo insieme queste due funzionalit√†, √® possibile creare un mix che pu√≤ risultare molto utile nell’utilizzo di tutti i giorni di Confluence. Vediamo come.

Nell’uso di tutti i giorni, pu√≤ capitare di voler usare delle pagine, e relative sottopagine, come dei template per implementare delle vere e proprie¬†Schede di informazioni, come accennato nel seguente post. Adesso vediamo come realizzare il tutto con un esempio pratico. Questo pu√≤ essere realizzato sia per le versioni Server, che per le versioni Cloud, in quanto l’addon √® disponibile per entrambe le installazioni :-).

 

Come realizziamo il tutto?

Semplice. Creiamo uno Space ad hoc, dedicato ad implementare i template. Nel nostro caso, la home di questo Space, presenterà tutti i link ai Template impostati e ci aiuterà nella gestione degli stessi, come mostrato in figura.

Template01

A questo punto, una volta selezionato il template, attiviamo l’addon e copiamo il template dove ci serve.

Template02

Puntualizzazioni

Occorre evidenziare quanto segue:

  • La¬†modifica dello Space, dedicato ai Template, non deve essere fornita a tutti gli utenti, ma solo ad utenti ben specifici. Questo al fine di evitare che si crei un caos non indifferente. L’utente medio deve limitarsi al solo utilizzo dei template. In caso, attraverso altri sistemi, sempre previsti ed attraverso opportuni sistemi, si pu√≤ richiedere la creazione di nuovi template al personale autorizzato.
  • Una volta copiato il template dove richiesto, l’utente dispone della massima libert√† di personalizzazione. Questo significa che, se il template prevede una pagina principale e 3 sottopagine, l’utente, una volta copiato, pu√≤ aggiungere nuove sottopagine/togliere sottopagine, modificare la struttura interna delle pagine.

Conclusioni

Abbiamo visto un esempio pratico di come realizzare un mix di funzionalit√†, con l’obbiettivo di aiutare l’utente finale nello svolgimento delle sue attivit√†.

nFeed – Un addon molto interessante

Esaminiamo un addon interessante

In questo post¬†andremo ad esaminare un addon molto interessante. Abbiamo gi√† esaminato degli addon della Valiantys e di sicuro ne resteremo soddisfatti ūüôā

 

Che cosa consente di fare?

Questo addon mette a disposizione la possibilit√† di poter eseguire delle interrogazioni da …. ovunque ūüôā

 

In particolare, mette a disposizione la possibilità di poter creare delle query da:

  • database
  • web services
  • File remoti
  • LDAP

e di memorizzare il risultato su campi custom.

 

Mette inoltre a disposizione degli utenti, la possibilità di poter scegliere come mettere a disposizione i risultati su tali campi custom, ovvero se:

  • deve essere messa a disposizione una texbox con autocomplete
  • se il campo deve essere read-only
  • se deve fornire dei risultati selezionabili da lista
  • Le liste successive sono conseguenza del valore che selezioniamo in precedenza
  • Usare l’addon per generare dei grafici e rendere meglio fruibili le informazioni
  • Impostare delle regole/dipendenze con altri campi di JIRA

Conclusioni

L’addon non delude e mostra delle caratteristiche molto interessanti :-). Nei prossimi post andremo ad eseguire la prova su strada, visionando in prima persona che cosa pu√≤ fare per noi questo addon, saggiandone i limiti e verificandone le potenzialit√† direttamente sul campo.

Gestiamo gli appuntamenti

Appuntamenti

In questo post andremo ad esaminare come poter gestire degli appuntamenti attraverso Confluence e Team Calendar. In aggiunta, cercheremo di capire come poter automatizzare questa operazione in modo da poterla usare in diverse soluzioni.

Di cosa abbiamo bisogno?

Cercheremo di realizzare il tutto attraverso questi strumenti:

  • Confluence (versione Server/Cloud)
  • Team Calendar (versione Server/Cloud)

Come realizziamo il tutto?

Cerchiamo di realizzare il nostro calendario degli appuntamenti. Abbiamo diverse possibilità.

Sfruttanto l’addon Team Calendar, di cui abbiamo gi√† parlato in vari posts, possiamo creare una pagina dedicata, dove andiamo a posizionare un calendario dedicato alla gestione degli appuntamenti.

Appuntamenti01

Basta selezionare¬†Add Event e possiamo creare l’appuntamento, indicando le varie caratteristiche dello stesso, come mostrato nella figura successiva:

Appuntamenti02

Possiamo definire anche dei nuovi Event Type, a seconda delle nostre esigenze, oltre che definire dei reminder per essere avvisati per tempo.

Alternative?

Sempre attraverso Team Calendar, possiamo anche collegarci a Google Calendar, come specificato nella documentazione stessa di Team Calendar.

In questo modo abbiamo la possibilità di poter sfruttare un Calendario già in uso, attraverso Confluence, come già mostrato in altri post.

Conclusioni

Abbiamo visionato come Team Calendar possa essere utilizzato per poter gestire i nostri appuntamenti, come poterli creare e come integrarli nelle nostre pagine. Possiamo immaginare questa funzionalit√† in uso per migliaia di possibili utilizzi. Lasciamo correre la nostra fantasia ūüôā

User Macro – Andiamo pi√Ļ in profondit√†

Approfondiamo l’argomento

In questo post andremo ad approfondire quanto già trattato nei seguenti post in materia di User Macro

Vediamo cosa possiamo fare

Nei precedenti post, abbiamo visto il classico esempio Hello World, croce e delizia di tutti gli sviluppatori. Questo per cercare di capire che cosa possiamo realizzare. Cerchiamo di entrare nel dettaglio.

Parametri

Possiamo gestire dei parametri nelle User Macro? La risposta √® si :-). ¬†Si tratta dei parametri, cui siamo oramai abituati, che normalmente vengono chiesti quando andiamo ad eseguire l’editing della macro stessa.

Possiamo definirli come:

## @param MYNAME:title=MY TITLE|type=MY TYPE|desc=MY DESCRIPTION|required=true|multiple=true|default=MY DEFAULT VALUE

ovvero come:

  • ## – Serve per identificare questa sezione di definizione di parametri e di caratteristiche della User Macro.
  • @param<nome> – Definisce il parametro. Utilizzando il prefisso¬†@param,¬†tutto ci√≤ che si trova subito dopo sar√† considerato come il nome del patametr
  • attributi – possiamo definire una serie di attributi, quali:
    • Titolo
    • Tipo del parametro, che pu√≤ assumere un valore tra i seguenti:
      • boolean ¬†(Booleano)
      • enum (per definire degli insiemi di possibili valori)
      • string (Stringa generica)
      • confluence-content (per consentire di poter referenziare dei contenuti di Confluence stesso, quali blog post o pagine)
      • username (per consentire di poter selezionare degli utenti)
      • spacekey (per consentire di poter selezionare degli space)
      • date (data)
      • int (numerico)
      • percentage ¬†(trattato come una stringa. Sembra sia utilizzato per definire delle percentuali di utilizzo o per indicare tipo, ad esempio, quanti post blog visualizzare)

La User Macro può anche non presentare dei parametri. Basta, semplicemente, indicarlo come segue:

## @noparams

Oggetti disponibili

Vediamo quali oggetti abbiamo a disposizione per poter eseguire le nostre elaborazioni.

  • $body – il corpo della macro, come indicato nei post precedenti.
  • $param<nome> – il parametro definito.
  • $config – Si tratta dell’oggetto¬†bootstrapManager di Confluence, che restituisce diverse propriet√† di Confluence che possiamo utilizzare.
  • $space – oggetto Space, dove viene richiamata la Macro. Tramite questo oggetto possiamo richiamare diverse informazioni, quali pagine, blog post, etc.
  • $renderContext – Si tratta delle informazioni restituite dall’oggetto PageContext.
  • $content – Si tratta delle informazioni restituite dall’oggetto ContentEntity.

Maggiori ragguagli sono disponibili nella sezione developer della Atlassian.

Prossimi passi?

Nei prossimi passi, andremo ad approfondire un altro esempio

 

Reference

Field security plugin for JIRA

Estendiamo la conoscenza di JIRA

In questo post continuiamo la carrellata di addon per JIRA, cercando di estedere la nostra conoscenza e cercando di capire quali possibili utilizzi possiamo avere.

 

Di che cosa parleremo?

In questo post andremo a visionare un addon che consente di poter estendere le funzioni di JIRA, permettendo di fornire delle permission  di accesso ai campi Custom di JIRA ed ad alcuni. Si tratta del Field Security Plugin for JIRA.

 

Dalle immagini che l’addon propone sul Market, vediamo che consente, in maniera molto semplice e veloce, di poter assegnare delle permission ai campi custom di JIRA e a specifici campi quali:

  • Campi Custom
  • Campo Assegnee (Assegnatario della Issue)
  • Campi dedicati al Time Tracking

 

Altra possibilità offerta da questo addon, è quello di fornire delle permission per accedere a JIRA Agile

 

Questa potrebbe essere una caratteristica interessante. Infatti, consente ad un amministratore di poter configurare meglio gli accessi a JIRA. Infatti, per determinate situazioni, potrebbe essere necessario limitare l’accesso alla parte AGILE (perch√® eccessiva o non necessaria) a determinati progetti. Gli utenti dedicati, potrebbero non averne bisogno e questo semplifica la vita all’amministratore.

Alcune indicazioni

L’addon √® al momento disponibile solo per le installazioni Server e, per essere pi√Ļ precisi, l’acquisto non pu√≤ essere eseguito attraverso la atlassian ma ci si deve rivolgere direttamente dal venditore.

Field01

Conclusioni

Abbiamo visionato un addon molto interessante. Nei prossimi post vedremo la prova su strada e cercheremo di capire quali altri addon possono essere una valida… alternativa ūüôā

Workflow su JIRA – Creiamoci il nostro Workflow

Esempio di uso

In questo post proseguiamo la serie di articoli dedicati ai Workflow di JIRA. Vedremo come crearci il nostro Workflow, come personalizzarcelo e che operazioni possiamo fare.

 

Prerequisiti

Vediamo, in prima battuta, chi può creare Workflow.  Infatti non tutti gli utenti possono eseguire questa operazione. In aggiunta, prima di procedere con la generazione di un Workflow, conviene sempre verificare se esiste già un Workflow che risponde alle nostre esigenze.

Un Workflow può essere creato solo da utenti che dispongono delle JIRA Administration Global Permission, ovvero da utenti amministratori, i quali sono autorizzati ad eseguire tale operazione. La seguente immagine, disponibile nella documentazione, consente di aiutare a capire meglio le differenze che sussistono tra i vari gruppi di utenti.

Iniziamo

Quello che un utente autorizzato può fare è una tra le seguenti operazioni:

  • Creare un nuovo
  • Modificarne uno esistente
  • Importarne¬†da marketplace/file o XML.

Facciamo una piccola precisazione. Ci sono delle piccole differenze tra versione Server e versione cloud di JIRA, relativamente alla questione dei Workflow. Ritengo molto importante ribadire le differenze, in modo da aiutare gli utenti nella scelta di una soluzione piuttosto dell’altra.

Mentre per la versione server possiamo eseguire l’importazione da file, come mostrato in figura:

WF-02-02

 

abbiamo a disposizione un men√Ļ¬†Import, che presenta le seguenti opzioni:

  • Import Workflow
  • Import XML

WF-02-03

per la versione cloud, possiamo solo eseguire un import da Marketplace, come mostrato nella seguente immagine:


WF-02-01

 

Si tratta di scelte e, come conseguenza, meglio conoscerle :-), in questo modo evitiamo di trovarci con delle sorprese dell’ultimo minuto.

Creazione di un Workflow

Iniziamo con la creazione. Supponiamo di voler creare un semplice Workflow, che presenta solo alcuni stati. Selezioniamo Add Workflow, opzione comune alle due installazioni. Il risultato che otteniamo è il seguente:

WF-02-04

ovvero ci viene richiesto di fornire un¬†Nome al¬†Workflow e una semplice Descrizione¬†, che ci consenta di poter identificare meglio il nostro. Una volta forniti questo elementi, si passa all’editor grafico, attraverso i quali si definiscono gli stati ed i relativi passaggi da ¬†uno stato all’altro.

WF-02-05

 

L’editor grafico √® molto semplice ed intuitivo. Selezionand¬†Add status si aggiungono nuovi stati, mentre con Add transition¬†si aggiungono nuove transizioni tra gli stati.

Per chi lo desidera, è possibile impostare anche un editor di testo per definire i Workflow.

WF-02-06

Sostengo che l’editor grafico risulti assai meglio per definire il tutto, e che permetta anche di capire meglio se i passaggi di stati sono quelli che ci aspettiamo.

In aggiunta, se siamo con l’editor grafico, abbiamo delle autocomposizioni che ci aiutano nella creazione, come mostrato in figura:

WF-02-07

Altra precisazione: Il Workflow viene creato in stato Inactive, come mostrato in figure precedenti. La sua attivazione avverrà solo dopo che sarà assegnato ad un Progetto.

A questo punto, con tali strumenti già integrati in JIRA, è possibile creare il Workflow che ci serve. Una volta generato, lo possiamo assegnare al progetto per attivarlo, come mostrato nel post inerente la gestione degli Asset Manager con JIRA.

Una volta creato il Workflow, occorre anche definire il Workflow Scheme, ovvero indicare quali Workflow utilizzare in base a Issue Type e progetto.

 

Conclusioni

Abbiamo visto in questo articolo come creare il nostro Workflow, chi lo può creare e che operazioni possono essere eseguite. Nei prossimi post vedremo come estendere il tutto ed integrarlo con altri addons.