DEV Community

Luke Nguyen
Luke Nguyen

Posted on

Release 0.4 - Part 1

Introduction

Finally, we managed to reach the end of my first open-source course. And, what better way to end it than challenging myself to work on something even bigger and more impactful compared to my previous releases?

This blog will be the first of my 3-part journey tackling the final release: from planning the approach to the assigned issues and working on the code to finally submitting the PR(s) and making adjustments based on others' feedback.

The search 🔎

First things first, we need to get ourselves some issues.

I decided to look inside Telescope and the IPC144 curriculum repo and after a while, managed to find myself 2 issues:

Planning 📝

1. #issue-2416

After talking with the project maintainers, I managed to write down a few things about my approach:

  • Fetching the builds' (previous, current, next) detail from the Telescope API
  • Extracting the following info from the fetched result:
{
  * The git SHA that is/was built
  * Who pushed the code (i.e., pusher)
  * Who wrote the code (i.e., sender/author)
  * A link to the compare branch to see what changed
  * When the build started (startedDate)
  * When the build stopped (stoppedDate)
  * What the result code of the build was
}
Enter fullscreen mode Exit fullscreen mode
  • Rendering the data to a UI element to display it in both the dashboard and the build log

For the place that hosts the logic to fetch and extract data from the API, I was suggested to create a new file in https://github.com/Seneca-CDOT/telescope/tree/master/src/api/status/public/js/build-log

For the UI element, I planned on basing my design on GitHub's per one of the maintainers suggestion:

GitHub build detail

Since the project uses Bootstrap, I could refer to their documentation to create a card component and customize it to match the example as closely as I can.

2. #issue-107

Since the task is to add more scripts to improve the current CI workflow, I could refer to a blog I made about GitHub Actions and start from there.

Discussion (0)