Git Actions de GitHub (Parte 3)
Continuamos con algún ejemplo de GitHub Action
workflow-external_json_parameters.yml: Contiene dos jobs para extraer la información de un json. El primer job utiliza JQ y el segundo es más simple ya que el json está en una única línea.
name: Read External JSON
//Evento que desencadenará el workflow
on: [push]
jobs:
//Primer job a ejecutar
read-json-with-jq:
//Máquina en la que se va a ejecutar el job
runs-on: ubuntu-latest
steps:
//Tarea que hace un checkout del repositorio
- uses: actions/checkout@v2
- name: extract repositories to file
run: |
//se vuelca a la variable content el contenido del fichero json
content=`cat ./example2-gitactions/dependencies.json`
//con JQ extraemos todos los valores de la key repository y los listamos en un fichero txt
echo "$(jq -r '.dependencies[].repository' <<< "$content")" >> aux.txt
//Tarea que pinta por pantalla los repositorios
- name: print repositories
run: cat aux.txt
//Segundo job a ejecutar
read-json:
//Máquina en la que se va a ejecutar el job
runs-on: ubuntu-latest
steps:
//Tarea que hace un checkout del repositorio
- uses: actions/checkout@v2
- name: extract repositories to array
id: set_var
run: |
//se vuelca a la variable content el contenido del fichero json
content=`cat ./example2-gitactions/dependencies-one-line.json`
//se setea como salida en la variable jsonDep
echo "::set-output name=jsonDep::$content"
//Tarea que pinta por pantalla los repositorios
- name: print repositories
run: |
echo: "${{fromJson(steps.set_var.outputs.jsonDep).dependencies[0].repository}}"
echo: "${{fromJson(steps.set_var.outputs.jsonDep).dependencies[1].repository}}"


Nota: Repositorio Github
Categorias
- adobe (2)
- agile (1)
- Alfresco (1)
- Android (26)
- Angular (6)
- angularjs (10)
- apache (1)
- axis (2)
- Bases de datos (14)
- Bootstrap (1)
- C# (3)
- Cámara (1)
- chrome (3)
- Codeigniter (2)
- Control de Versiones (2)
- CSS (25)
- CVS (1)
- Django (9)
- Django Rest Framework (1)
- DNS (1)
- Docker (3)
- dominio (1)
- eclipse (5)
- Entity Framework (2)
- ETL (1)
- Firefox (6)
- flash (1)
- freecad (1)
- Git (12)
- GitHub (4)
- gpg (2)
- Groovy (1)
- Handlebars (1)
- hibernate (4)
- hosting (1)
- HTML (50)
- HTML 5 (26)
- Impresión 3D (9)
- Inkscape (1)
- IOS (2)
- ireports (3)
- Java (44)
- Javascript (55)
- JBoss (5)
- JPA (2)
- JQuery (20)
- Json (7)
- JSP (6)
- Keycloak (1)
- Lamp (1)
- LDAP (2)
- lean (1)
- linkedin (1)
- LINQ (1)
- linux (13)
- Livecycle (1)
- log (1)
- microcontroladores (1)
- MongoDB (4)
- MySQL (8)
- Node.js (5)
- OC4J (1)
- Openshift (2)
- Oracle (6)
- Patrones de Diseño (1)
- Photoshop (2)
- php (20)
- PostgreSQL (1)
- python (19)
- rabbitmq (1)
- Raspberry PI (13)
- Raspherry PI (5)
- React (6)
- seguridad (3)
- Selenium (3)
- Sencha Touch (1)
- Sin categoría (29)
- Spring (17)
- spring-boot (3)
- SQL (7)
- SQLServer (1)
- SSO (1)
- struts (2)
- SVN (1)
- Talend (1)
- Tomcat (6)
- unity (3)
- Visual Studio Code (2)
- vmware (5)
- Web Services (11)
- windows (18)
- wordpress (10)
- Xiaomi (1)
- xml (2)
Trabajos Realizados
- App Android – Autoka Fr
- App Android – Cartelera Cántabra
- App Android – Gramática y Vocabulario Ingles
- App Android – Hoja de Gastos
- App Android – Hotel Torre Cristina
- App Android – OcioEnjoy
- App Android – Visor CardBoard
- App Firefox – Managapp
- DiamanteBomba – DisasterCode
- Generador de Partes de Trabajo
- GitHub – Android Web Generator
- GitHub – Dynamic Angular Gallery
- GitHub – Dynamic React Gallery
- GitHub – Sotilizator
- GitHub – SpringAngularJS
- GitHub – Swiper Dynamic Angular Gallery
- HazParejas – DisasterCode
- RompeCabezas – DisasterCode
- Unity Game – English Couple
- Unity Game – Kill Wasp
- WordPress – El Buen Apicultor
- WordPress – El Cajón de los Retales
- WordPress – El Vestidito Azul
- WordPress – Feuchas
- WordPress – Fragua de Navajas Ponce
- WordPress – Humor a las Tres
- WordPress – Photo Places


