Skip to content

Commit

Permalink
Format README according to preferred line length
Browse files Browse the repository at this point in the history
  • Loading branch information
tamslo committed Sep 12, 2023
1 parent 8298a78 commit d3f71d3
Showing 1 changed file with 46 additions and 16 deletions.
62 changes: 46 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,25 @@
# GitLab Recurring Issues

A Docker image for creating recurring issues based on templates as part of a GitLab scheduled pipeline.
A Docker image for creating recurring issues based on templates as part of a
GitLab scheduled pipeline.

Forked from ⭐ [ph1ll/gitlab-recurring-issues](https://github.com/ph1ll/gitlab-recurring-issues) and adapted for my personal use.
Forked from ⭐
[ph1ll/gitlab-recurring-issues](https://github.com/ph1ll/gitlab-recurring-issues)
and adapted for my personal use.

The Docker image is available on [DockerHub](https://hub.docker.com/repository/docker/tamslo/gitlab-issue-automation).
The Docker image is available on
[DockerHub](https://hub.docker.com/repository/docker/tamslo/gitlab-issue-automation).

_⚠️ Please note that I did not add any unit testing; so use with caution – especially added features like n-weekly occurrence, exceptions, adapting board labels, and creating standup meeting notes._
_⚠️ Please note that I did not add any unit testing; so use with caution –_
_especially added features like n-weekly occurrence, exceptions, adapting board_
_labels, and creating standup meeting notes._

## Usage

Create template issues in the `.gitlab/recurring_issue_templates/` directory as Markdown files. Template issues use YAML front matter for configuration settings. The template body is used as the issue description.
Create template issues in the `.gitlab/recurring_issue_templates/` directory as
Markdown files.
Template issues use YAML front matter for configuration settings.
The template body is used as the issue description.

```markdown
---
Expand Down Expand Up @@ -45,15 +54,22 @@ Create project CI/CD variables:
| ---- | ----- |
| GITLAB_API_TOKEN | The API access token for the user account that will create the issues (see: [GitLab docs](https://docs.gitlab.com/ce/user/profile/personal_access_tokens.html)) |
Finally, create a new schedule under the project CI/CD options, ensuring that the pipeline runs at least as often as your most frequent job.
Finally, create a new schedule under the project CI/CD options, ensuring that
the pipeline runs at least as often as your most frequent job.
### Adding Recurrance Exceptions
To add exceptions to recurrances, create a file named `recurrance_exceptions.yml` in the templates folder. Note that exception dates are applied to the creation date given in `crontab`, not the due date.
To add exceptions to recurrances, create a file named
`recurrance_exceptions.yml` in the templates folder.
Note that exception dates are applied to the creation date given in `crontab`,
not the due date.

It can contain exception definitions and rules that map issues by their IDs (need to be given in the issue template) to exception definitions.
It can contain exception definitions and rules that map issues by their IDs
(need to be given in the issue template) to exception definitions.

Start and end dates are given in the format `YYYY-MM-DD`. If an exception occurs every year, the placeholder `YEAR` can be given (needs to be set for both `start` and `end`).
Start and end dates are given in the format `YYYY-MM-DD`.
If an exception occurs every year, the placeholder `YEAR` can be given (needs to
be set for both `start` and `end`).

```yaml
definitions:
Expand All @@ -77,20 +93,34 @@ rules:

### Automatically Moving Issues on Board

The script also checks whether labels for custom issue management on a board view exist (see label definitions in `constants` and `board_labels/board_labels.go`).
The script also checks whether labels for custom issue management on a board
view exist (see label definitions in `constants` and
`board_labels/board_labels.go`).

If an issue is due, the `TodayLabel` or `ThisWeekLabel` will be added if it is not present and no `OtherLabels` exist that indicate that the issue is in progress. If the `TodayLabel` is added and the `ThisWeekLabel` present, the latter will be removed.
If an issue is due, the `TodayLabel` or `ThisWeekLabel` will be added if it is
not present and no `OtherLabels` exist that indicate that the issue is in
progress.
If the `TodayLabel` is added and the `ThisWeekLabel` present, the latter will be
removed.

### Add Standup Notes

A helper will create standup meeting notes on the day of the `prepare-standup` recurring issue, if the issue exists and no notes exist yet.
A helper will create standup meeting notes on the day of the `prepare-standup`
recurring issue, if the issue exists and no notes exist yet.

All issues that were updated between the last standup meeting note and the current one that were not closed before the last standup note will be included as a list to help filling out the table (included as template).
All issues that were updated between the last standup meeting note and the
current one that were not closed before the last standup note will be included
as a list to help filling out the table (included as template).

By default, the wiki page is created in the wiki of the current project. If the CI/CD variable `GROUP_WIKI_ID` is set to the ID of a group, the page will be created in the wiki of this group.
By default, the wiki page is created in the wiki of the current project.
If the CI/CD variable `GROUP_WIKI_ID` is set to the ID of a group, the page will
be created in the wiki of this group.

### Issue for Vacation Start

A special recurring issue can be defined in the issue template `vacation.md`. This issue is created on the last workday before an upcoming vacation (identified as exceptions with IDs starting with `vacation-`).
A special recurring issue can be defined in the issue template `vacation.md`.
This issue is created on the last workday before an upcoming vacation
(identified as exceptions with IDs starting with `vacation-`).

_Not implemented yet, see [#8](https://github.com/tamslo/gitlab-issue-automation/issues/8)._
_⚠️ Not implemented yet, see_
_[#8](https://github.com/tamslo/gitlab-issue-automation/issues/8)._

0 comments on commit d3f71d3

Please sign in to comment.