Git Product home page Git Product logo

semillero2-api's Introduction

Semillero API

Build Status Maintainability Test Coverage

Introducción

API que usamos en Nahual para hacer un seguimiento de los estudiantes que pasan por el taller y el estado en qué se encuentra su búsqueda laboral.

Está desarrollada en Java, más específicamente con Spring Boot.

Instalación DEV

Base de datos

Antes que nada: docker volume para la base

Estamos compartiendo el volumen donde se guardan los datos entre el docker-compose de semillero en general y el de la api en particular.

En el caso de la API, va a pedir el volumen creado por el otro docker-compose general semillero_semillero-mariadb

Creación del esquema + creación de tablas

La instalación de los containers nos instala una base MariaDB. De hecho, hay un docker-compose.yml solo para este proyecto, por si no querés levantar los otros containers y solo te levante la base de datos.

El esquema lo tenés que crear a mano, corriendo el archivo 000000000000_empty_schema.sql.

Luego, ya se puede levantar la aplicación con el comando ./mvnw spring-boot:run, de esa manera se va a correr el changelog de Liquibase.

Eso nos va a crear todas las tablas necesarias

Creación de algunos datos de prueba

Ya con la aplicación arriba, usamos la API para crear 2 nodos de prueba y un CSV que se usa en los tests.

curl --user semillero:semillero -X POST -H "Content-Type: application/json" --data '{"name":"Capital","address":"capi1"}' http://localhost:8080/node
curl --user semillero:semillero -X POST -H "Content-Type: application/json" --data '{"name":"Paternal","address":"paternal1"}' http://localhost:8080/node
curl --user semillero:semillero -i -X POST -H "Content-Type: multipart/form-data" -F "csv=@src/test/resources/data.csv" http://localhost:8080/student/bulk

Cómo desarrollamos?

Mientras estamos desarrollando podemos usar la base dockerizada pero correr la aplicación desde nuestro IDE preferido (lo único que deberíamos cambiar es el datasource y apuntarlo a nuestro local dockerizado, en vez de al host dockerizado)

Documentación API

La documentación de la API está escrita en RAML 0.8.

El HTML generado se podía ver en el siguiente link.

Update

Rawgit fue dado de baja y hay que migrar esto a otro sistema (github pages, por ejemplo)

semillero2-api's People

Contributors

ideaplugins avatar jplagostena avatar vnbarr avatar ldubiau avatar danieljulian avatar santiagolg avatar

Watchers

Claudio Juan Bidau avatar  avatar James Cloos avatar  avatar Fede avatar  avatar Gaston Daniel Festa avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.