diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index c3feab0..c78236b 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -1,88 +1,88 @@ name: CICD on: - push: - branches: [main] + push: + branches: [main] jobs: - # build-backend: - # runs-on: ubuntu-latest - # steps: - # - name: Checkout source - # uses: actions/checkout@v3 - # - # - name: Setup Java - # uses: actions/setup-java@v3 - # with: - # distribution: 'temurin' - # java-version: '11' - # - # - name: Build Project - # run: | - # cd Back/api - # mvn clean install -DskipTests - # - # - name: Login to DockerHub - # run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} - # - # - name: Build Docker image - # run: | - # cd Back/api - # docker build -t viajecito/api:viajecito-backend . - # - # - name: Publish image to DockerHub - # run: docker push viajecito/api:viajecito-backend + build-backend: + runs-on: ubuntu-latest + steps: + - name: Checkout source + uses: actions/checkout@v3 + + - name: Setup Java + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '11' + + - name: Build Project + run: | + cd Back/api + mvn clean install -DskipTests + + - name: Login to DockerHub + run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} + + - name: Build Docker image + run: | + cd Back/api + docker build -t viajecito/api:viajecito-backend . + + - name: Publish image to DockerHub + run: docker push viajecito/api:viajecito-backend build-frontend: - # needs: build-backend + needs: build-backend runs-on: ubuntu-latest steps: - - name: Checkout source + - name: Checkout source uses: actions/checkout@v3 - - - name: Setup Node + + - name: Setup Node uses: actions/setup-node@v3 with: - node-version: "16.13.1" - - - name: Install dependencies + node-version: "16.13.1" + + - name: Install dependencies run: | - cd Front - npm install - - - name: Build React project + cd Front + npm install + + - name: Build React project run: | - cd Front - npm run build - - - name: Configure AWS credentials + cd Front + npm run build + + - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v1 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }} - aws-region: "us-east-1" - - - name: Upload build to S3 + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }} + aws-region: "us-east-1" + + - name: Upload build to S3 run: | - aws s3 sync Front/dist/ s3://1023c01-grupo1-s3-front --acl public-read + aws s3 sync Front/dist/ s3://1023c01-grupo1-s3-front --acl public-read - # deploy-backend: - # needs: build-frontend - # runs-on: [aws-ec2] - # steps: - # - name: Stop old container - # run: sudo docker stop viajecito-backend-container || true - # - # - name: Delete old containers - # run: sudo docker rm -f viajecito-backend-container || true - # - # - name: Pull image from DockerHub - # run: sudo docker pull viajecito/api:viajecito-backend - # - # - name: Run docker container - # run: | - # sudo docker run -d -p 8089:8089 \ - # -e AWS_ACCESS_KEY=${{ secrets.AWS_ACCESS_KEY }} \ - # -e AWS_SECRET_KEY=${{ secrets.AWS_SECRET_KEY }} \ - # -e AWS_REGION='us-east-1' \ - # --name viajecito-backend-container viajecito/api:viajecito-backend + deploy-backend: + needs: build-frontend + runs-on: [aws-ec2] + steps: + - name: Stop old container + run: sudo docker stop viajecito-backend-container || true + + - name: Delete old containers + run: sudo docker rm -f viajecito-backend-container || true + + - name: Pull image from DockerHub + run: sudo docker pull viajecito/api:viajecito-backend + + - name: Run docker container + run: | + sudo docker run -d -p 8089:8089 \ + -e AWS_ACCESS_KEY=${{ secrets.AWS_ACCESS_KEY }} \ + -e AWS_SECRET_KEY=${{ secrets.AWS_SECRET_KEY }} \ + -e AWS_REGION='us-east-1' \ + --name viajecito-backend-container viajecito/api:viajecito-backend \ No newline at end of file diff --git a/Back/api/src/main/java/com/viajecito/api/controller/SalidaController.java b/Back/api/src/main/java/com/viajecito/api/controller/SalidaController.java index 1e0cb7f..147a5e0 100644 --- a/Back/api/src/main/java/com/viajecito/api/controller/SalidaController.java +++ b/Back/api/src/main/java/com/viajecito/api/controller/SalidaController.java @@ -18,7 +18,7 @@ public class SalidaController { private SalidaService salidaService; @PostMapping - public ResponseEntity agregarSalida(@RequestBody Salida salida) { + public ResponseEntity agregarSalida(@RequestBody Salida salida) throws BadRequestException { SalidaDTO nuevaSalida = salidaService.agregar(salida); return nuevaSalida != null ? ResponseEntity.ok(nuevaSalida) : ResponseEntity.badRequest().build(); }