Deploying a Spring Boot Application WAR file to Heroku with Postgres database

What is Heroku?

Heroku is a cloud platform that enables companies to spend less time worried about infrastructure and deploying apps that immediately start producing value.

How Heroku works?

Heroku allows you to deploy applications in several languages.

Whatever the type of application, it will not be necessary to change the code to be able to be run by Heroku.

It is only necessary to inform which part of the application is executable (defined in the Procfile file at the root of the project).

Heroku allows you to deploy via various platforms or tools…


How Fossil can be used

Remote Repository Set-up

A Raspberry Pi was used to host the remote repository, being accessed through the local network.

The operating system running on the Raspberry Pi is Ubuntu Server 20.04 LTS, previously configured to access the local network and with openssh-server installed so that it can be accessed by another machine.

ssh into server

To access the server, the personal computer must be in same network as the server.

My personal computer is a Macbook, so, just need to open the terminal without having to install third-party software and ssh into server:

$ ssh <user>@<ip_address_of_server>

On the ubuntu server, to know the IP address just…


Why Fossil over Git?

Git does not provide good situational awareness

Using Fossil as VCS in a project, to know the status of the entire project, just go to the timeline, and in a single screen you can see a summary of the latest changes to the project, in all branches. Using Git, it is necessary to use third-party graphical viewers in order to have the detail and ease of visualization.

Git makes it difficult to find successors (descendents) of a check-in

”Git lets you look backwards in time, but not forwards. Given some historical check-in, you can see what came before, but it is challenging see what came next.”

It is not impossible, but it is extremely difficult to find descendants…


Analysis of Fossil

What is?

Fossil is a distributed version control system, like Git, Mercurial and Bazaar.

Has a Built-in Web Interface, that runs in a instance of Fossil. The Web Interface is themeable, extensible and intuitive and has:

  • Ticketing;
  • Bug tracking;
  • Wiki;
  • On-line documentation;
  • Technical notes;
  • Forum;
  • Chatroom;
  • Timelines;
  • Full text search;
  • Graphs of revision and branching history;
  • File and version lists and differences;
  • Historical change data;
  • Add and remove tags on check-ins;
  • Move check-ins between branches;
  • Revise check-in comments;
  • Manage user credentials and access permissions;
  • And more…

Is a All-in-one single self-contained, stand-alone executable.

Fossil is Self-host Friendly, most projects can be hosted…

João Duarte Pinto

Software Development student @ ISEP

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store