Project

General

Profile

Backlog Assistant » History » Version 1

rainerkoenig, 2023-11-07 12:43

1 1 rainerkoenig
# Backlog Assistant
2
3
## What is it
4
A simple python script running on GitHub workflows that does the following:
5
- Parse a queries.yaml file with the configuration
6
-  Query progess.opensuse.org with the queries from the YAML file
7
-  Check the boundaries for each query and show a status icon
8
-  Create a static HTML page and deploy this to GitHub pages
9
10
## Resources
11
- [Backlogger](https://github.com/openSUSE/backlogger) The main script to evaluate the metrics
12
- [qa-tools-backlog-assistant](https://github.com/os-autoinst/qa-tools-backlog-assistant) How QE-Tools makes use of Bacvklogger
13
## Setup instructions for QE Yam 
14
### Clone the qe-tools-backlog-assistant repo 
15
You need the few files iin your local directory to adapt it to your needs.
16
### Enable workflows for you
17
Change the `backlog_checker.yml` file in `.github/workflows` and remove the check for the `github_repository_owner` to make it run in your cloned repository.
18
### Remove the git remotes
19
Since we upload our version to a new repository later we need to remove the remote with
20
`git remote remove origin`
21
### Create a new GitHub repository for your customized version
22
I used https://github.com/rakoenig/qe-yam-backlog-assistant for this. 
23
### Upload your code
24
Get the clone URL with SSH access and add it to the remote:
25
`git remote add origin<URL>`
26
27
Then push the repo
28
`git push origin master`
29
### Configure the API  Key
30
The `REDMINE_API_KEY` has to be put into the repository secrets since the `backlog_checker.yml` refers to it.
31
## Customize it for your own metrics
32
You need to change the `queries.yaml` file to use your own metrics. Here is an example for QE Yam:
33
~~~
34
api: https://progress.opensuse.org/projects/qe-yast/issues.json
35
web: https://progress.opensuse.org/projects/qe-yast/issues
36
team: QE Yam
37
url: https://progress.opensuse.org/projects/qe-yast/wiki
38
queries:
39
  - title: QE Yam Backlog
40
    query: query_id=866
41
    max: 64
42
~~~
43
The  `api` and `web` settings are used to build the URLs for the queries later.
44
45
To use a query you go to progress, select the query you want and **save** it as a custom query that can be used by all. Then you get a `query_id` that is used in this YAML file to identify the query.
46
You can define boundaries with `max` and `min`. 
47
48
You can add as many queries as you want.
49
50
## Deployment 
51
Last step is to setup your Pages setting in the GitHub repo. Go to `Settings` and then use the `Pages` menu. Then chose "Deploy from a branch" as deployment source. The branch name is `gh_pages` where the `backlog_checker.yml` script places an `index.html` file with yoiur dashboard.  This is then published on GitHub pages, in our case at https://rakoenig.github.io/qe-yam-backlog-assistant/