rhstatus

command module
v0.0.0-...-4551d9b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2023 License: CC0-1.0 Imports: 12 Imported by: 0

README

INTRODUCTION

GitLab, Bugzilla, and Jira provide features for users to check to see if they have any work to do. GitLab offers a Todo list, and Bugzilla has extensive search capabilities. At Red Hat, we've mixed process between the two tools and that makes determining a user's work effort difficult to do.

rhstatus is a tool that combines information from thesetools and provides that information in a color coded format. rhstatus explicitly depends on the operation of the ACK/NACK bot in adding users as assignees or reviewers for MRs. If users have problems with assigning of roles for MRs they should file issues against the kernel-webhooks project.

In general, anything that anything green requires no additional work and anything in red requires additional work. Work generated by the user will be displayed in yellow. Yellow includes self-added reviews and authored MRs.

The format of the main output is role (reviewer, author, approver), the MR ID, and the title of the Merge Request. Details are displayed as "- status:" events below the main output for the Merge Request.

By default, rhstatus only reports information on MRs that the user has a role in (author, reviewer, assignee). To get information on all MRs, use the --full option.

A highlighted (white on blue) MR ID indicates that Merge Request is on a user's GitLab Todo list.

Draft MRs are considered "work in progress" and are greyed out in the display.

This tool requires you to add API tokens for GitLab, Bugzilla, and Jira. Links are provided in the initial configuration for GitLab, Red Hat's Bugzilla, and Jira to configure API keys. The config is stored in the users local ~/.config/rhstatus/rhstatus.toml. Non-security related data is saved in ~/.config/rhstatus/rhstatus.toml. Removing this file and deleting rhstatus password entries from the keyring will reset the configuration. It is suggested to use 'seahorse' to remove password entries from the keyring.

All displayed times are UTC.

Feature requests/bugs/enhancements must be filed at https://gitlab.com/prarit/rhstatus/-/issues

Build Instructions

Users must have the golang compiler (typically golang-bin on Red Hat based OSes). rhstatus can be built by executing 'make'.

Configuring Regional Holidays

The rhstatus project contains a holidays directory. This directory contains text files of the latest Red Hat Holiday Schedules.

One of these files must be copied to the ~/.config/rhstatus/holidays (it is a file, not a directory).

NOT ALL REGIONS HAVE BEEN DEFINED: To add or update your region's holidays, create a holidays file with an extension representing your location (for example, Canada is holidays.can, Brazil is holidays.br), add the holiday dates to the file (with format "Friday, January 1, 2021"), and open a Merge Request to add the file to this project.

Configuring Colors

Users can configure the colors for a light or dark background and change the colors of the various alerts. Users can execute 'rhstatus --palette' to display the various color options, and then set them individually in ~/.config/rhstatus/rhstatus.toml. For example

[colors]
  blue = "BLUE"
  green = "hiGreen"
  grey = "grey"
  red = "hiRed"
  white = "white"
  yellow = "yellow"

Example config file

Here is an example config file to help users debug configuration issues.

[core]
  bugzillatoken = "rhstatus-keyring-bugzilla"
  gitlabemail = "username@redhat.com"
  gitlabhost = "https://gitlab.com"
  gitlabtoken = "rhstatus-keyring-gitlab
  gitlabuser = "Gitlab_username"
  jiratoken = "rhstatus-keyring-jira"
  jiraurl = "https://issues.redhat.com"

A common error is a misconfiguration of the "gitlabuser" field. The "gitlabuser" field must be the user's GitLab username.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
This file contains common functions that are shared in the lab package
This file contains common functions that are shared in the lab package
internal
git
gitlab
Package gitlab is an internal wrapper for the go-gitlab package
Package gitlab is an internal wrapper for the go-gitlab package
webhooks
This package provides the labels.yaml from https://gitlab.com/cki-project/kernel-workflow/
This package provides the labels.yaml from https://gitlab.com/cki-project/kernel-workflow/

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL