Table of Contents
- Description
- Presentation Slides
- Event Photos
- Continuous Integration
- Live Application
- References
- Useful Heroku CLI commands
This repo contains the source code of a JEE 7 web application used during the "Creating a CI/CD pipeline for a Java EE application in the cloud" session at Codecamp Cluj-Napoca IT event, which took place in Cluj-Napoca on November 19th, 2016.
- SlideShare: http://www.slideshare.net/satrapu/creating-a-cicd-pipeline-for-a-java-ee-application-in-the-cloud
https://codecamp-cluj-2016.herokuapp.com/
- Heroku Cloud Application Platform
- Official Site: https://www.heroku.com/home/
- Pricing: https://www.heroku.com/pricing/
- Architecture: https://devcenter.heroku.com/categories/heroku-architecture/
- Limits: https://devcenter.heroku.com/articles/limits/
- Elements: https://elements.heroku.com/
- Buildpacks: https://devcenter.heroku.com/articles/buildpacks/
- Java Buildpack: https://github.com/heroku/heroku-buildpack-java/
- Deployment: https://devcenter.heroku.com/categories/deployment/
- Pipelines: https://devcenter.heroku.com/articles/pipelines/
- Heroku CLI: https://devcenter.heroku.com/categories/command-line/
- Error Codes: https://devcenter.heroku.com/articles/error-codes/
- Java on Heroku: https://devcenter.heroku.com/categories/java/
- Customize Maven: https://github.com/heroku/heroku-buildpack-java#customize-maven
- Heroku Java Support: https://devcenter.heroku.com/articles/java-support/
- PostgreSQL on Heroku: https://devcenter.heroku.com/categories/heroku-postgres/
- Connecting in Java: https://devcenter.heroku.com/articles/heroku-postgresql#connecting-in-java
- Alternatives:
- Red Hat OpenShift: https://www.openshift.com/
- IBM Blue Mix: http://www.ibm.com/cloud-computing/bluemix/
- Others
- WildFly Swarm
- Official Site: http://wildfly-swarm.io/
- User Guide: https://www.gitbook.com/book/wildfly-swarm/wildfly-swarm-users-guide/details/
- Generator: http://wildfly-swarm.io/generator/
- Just Enough App Server with WildFly Swarm presentation by Antonio Goncalves: https://antoniogoncalves.org/2016/07/13/just-enough-app-server-with-wildfly-swarm/
- Alternatives:
- Payara Micro: http://www.payara.fish/payara_micro
- Spring Boot: http://projects.spring.io/spring-boot/
- Others
- Java Enterprise Edition 7
- Official Site: http://www.oracle.com/technetwork/java/javaee/overview/index.html
- JEE7 Tutorial: https://docs.oracle.com/javaee/7/tutorial/
- Ticket Monster: http://developers.redhat.com/ticket-monster
- Alternatives:
- Spring: https://spring.io/
- Others
- Flyway
- Official Site: https://flywaydb.org/
- Documentation: https://flywaydb.org/documentation/
- Alternatives:
- Liquibase: http://www.liquibase.org/
- Others
- Snap CI
- Official Site: https://snap-ci.com/
- Documentation: https://docs.snap-ci.com/
- Alternatives:
- CircleCI: https://circleci.com/
- Semaphore: https://semaphoreci.com/
- Others
- Run Heroku application on a Windows machine:
heroku local -f Procfile.windows -e .env -p 6789
- Run Heroku application on a macOS machine:
heroku local -f Procfile.mac -e .env -p 6789
- Display all environment variables defined on the Heroku node:
heroku run printenv --app codecamp-cluj-2016
- Display all config vars defined inside the Heroku application:
heroku config --app codecamp-cluj-2016
- Display the details of the Heroku node OS:
heroku run 'cat /etc/*-release' --app codecamp-cluj-2016
- Display the last 250 logged messages and keep monitoring the log:
heroku logs -t -n 250 --app codecamp-cluj-2016
- Copy config var "DATABASE_URL", which contains the URL pointing to the Heroku managed PostgreSQL database, from Heroku application to the local .env file:
heroku config:get DATABASE_URL -s >> .env --app codecamp-cluj-2016