Skip to content

Commit b47e02e

Browse files
committed
Update issue templates
1 parent 941ce3a commit b47e02e

10 files changed

+799
-0
lines changed
+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: Normal issue
3+
about: This is just a normal empty issue with a simple checklist
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
## Issue checklist
11+
12+
This is a simple checklist of things to bear in mind when creating a new issue.
13+
14+
- [ ] **Describe the use-case**: As far as possible, use the pattern "As a [type of user], I would like [feature/functionality] to be able to do [specific action]." This helps identify the feature and the problem it addresses.
15+
- [ ] **Indicate importance and urgency**: Use a scale (e.g., low, medium, high) to indicate the level of importance and urgency.
16+
- [ ] **Work-around**: If there is a known work-around, describe it briefly.
17+
- [ ] **Environment**: Describe the environment where the issue occurs (e.g., SDP version, K8S version, etc.).
+146
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
---
2+
name: Advanced Issue
3+
about: This template is mostly used for Stackable staff. It contains an elaborate checklist of things to consider/refine when creating an issue.
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
# Title
11+
12+
<!--
13+
- Ensure the title is specific and descriptive
14+
- Avoid acronyms if possible
15+
-->
16+
17+
## Description
18+
19+
<!--
20+
- "What" are we trying to achieve
21+
- Briefly describe what this issue aims to achieve
22+
23+
Examples:
24+
- As devs we want an OpenShift certification process that is automated as far as possible.
25+
-->
26+
27+
## Value
28+
29+
<!--
30+
- "Why" do we want to do this
31+
- Clearly define the value this brings to customers or why else it is important if not _directly_ for customers (e.g. internal tooling or improvements, technical debt, ...)
32+
- Explain how to showcase the outcome of this issue to users/customers or developers (add tasks for this if needed), how can we market this
33+
34+
Examples:
35+
- "We want CRD versioning so we can make backwards compatible changes to our CRDs"
36+
- "We want CRD versioning because we're making contractual stability promises to our customers around CRDs, and we can only honor these using CRD versioning"
37+
- "Manual steps in the OpenShift certification process have lead to costly (time wise) errors in the past, these steps also mean that it is currently not easy for us to do a 'quick' patch release: These changes would allow this leading to a better experience for OpenShift users as well as making it easier to fulfill our contractual obligations, which might require us to release patches on short notice."
38+
-->
39+
40+
## Dependencies
41+
42+
<!--
43+
- Consider and name any internal and external dependencies and constraints
44+
- List all known necessary resources (e.g. cluster, customers, people, repositories, libraries...)
45+
46+
Examples:
47+
- This epic will require changes to docker image XY, it will require a change to the listener operator, and we'll need an OpenShift 4.15 cluster to test
48+
-->
49+
50+
## Tasks
51+
52+
<!--
53+
- List all known tasks that need to be completed to finish this issue
54+
- Not all tasks might be known at the beginning!
55+
- Task types
56+
- Technical
57+
- Testing
58+
- Documentation
59+
- Marketing / Showcase
60+
- Initial tasks might just be _separate_ research tasks, which, upon completion, lead to more tasks in this task/epic
61+
- When creating the list of tasks make sure to put them in an order and focus on creating minimum marketable features
62+
- This is the _Definition of Done_ which (mostly, exception are marketing tasks) represents the technical "completeness" of a task
63+
64+
Example:
65+
- Marketing: Prepare a blog post outlining the new CRD versioning support, our policies around CRD versioning and the current versions we do support
66+
-->
67+
68+
## Acceptance Criteria
69+
70+
<!--
71+
- List acceptance criteria
72+
- Define clear objective criteria for when we would consider this issue "Done"
73+
- It differs from the _Definition of Done_ in _Tasks_ above by focusing on the "what" (an expanded version of the Description)
74+
- One example that should always if relevant be included is accessibility:
75+
- We don't yet do much UI work so this is underspecified right now
76+
77+
Example:
78+
- Bad example: All tests pass (that should be implied for anything and is not a functional requirement)
79+
- Good examples:
80+
- Traces are exported via OTLP and can be seen in Jaeger (or equivalent trace visualisation tool) (achieves a goal, while only being as prescriptive as necessary)
81+
- CRD versioning is seamlessly integrated into our operators, allowing for the specification of multiple versions within CRDs.
82+
- Backward compatibility is maintained for at least two previous versions of CRDs.
83+
-
84+
85+
-->
86+
87+
## (Information Security) Risk Assessment
88+
89+
<!--
90+
- Outline any information security (this includes cybersecurity) or any other obvious risks and the controls how to mitigate them
91+
- This is relevant for ISO 27001, the Cyber Resilience Act and other standards/norms
92+
- Examples:
93+
- Does this open any new ports? If so, how are they secured
94+
- Do we ask for the least amount of privileges required
95+
- Does this require any secrets?
96+
- Which ciphers might be used and how can they be configured
97+
- Does it introduce a dependency? Have you reviewed it for vulnerabilities, licenses issues, recent activity etc.
98+
- Bugs in this feature could lead to data loss for our customers
99+
- ...
100+
-->
101+
102+
103+
## Accessibility Assessment
104+
105+
<!--
106+
- Outline anything related to accessibility
107+
- Assess the impact on users with disabilities
108+
- Ensure compliance with accessibility standards
109+
-->
110+
111+
## Quality
112+
113+
<!--
114+
- Outline how this issue will be tested
115+
- Compatibility:
116+
- Try to ensure compatibility with all our supported versions (e.g. Kubernetes, OpenShift, product versions)
117+
- List any potential compatibility issues you're aware of
118+
-->
119+
120+
121+
## Release Notes
122+
123+
<!--
124+
- Write a short sentence or abstract that can go into the release notes
125+
- This way it is also documented for anyone finding _just this_ issue later
126+
- This does not need to be filled out during refinement but can/should be added later before closing the issue
127+
-->
128+
129+
<!--
130+
# Todos / Remarks
131+
132+
NOTE: This section is not meant to be displayed, therefore it is in a comment. You can leave it here, commented, or delete it.
133+
134+
- [ ] Fill out as many sections above as you can, not everything is known at the beginning. Please leave a comment in any section that is unknown.
135+
- [ ] Delete everything that is irrelevant for this particular issue.
136+
- [ ] Add appropriate labels
137+
138+
139+
- There are different types of issues/epics, which might require different subsets (or no) sections of the above
140+
- e.g. "Update product versions"
141+
- e.g. "Implement new feature"
142+
- In the whole issue write out all acronyms that are not industry standard at least once. Example: OpenPolicyAgent (OPA)
143+
- If this is part of another issue please make sure to link the two in both places (parent & child)
144+
- If CRD changes (not necessarily breaking) are required, make sure structs/enums/fields are documented and are rendered properly in the CRD generation tool
145+
- Also see our [Development Philosophy](https://app.nuclino.com/Stackable/Stackable-Handbook/Development-Philosophy-ba280b20-b8cd-4fb6-a863-ff6d8c9f1af2)
146+
-->
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
---
2+
name: Getting Started Script Checks (Pre-Release)
3+
about: This template can be used to track the checks/updates of the "Getting Started" scripts in this repository leading up to the next Stackable release
4+
title: "chore(tracking): Check and update getting-started scripts before SDP Release YY.M.X"
5+
labels: ['epic']
6+
assignees: ''
7+
---
8+
9+
<!--
10+
Make sure to update the link in '.github/ISSUE_TEMPLATE/release.md' if you
11+
change the filename.
12+
-->
13+
14+
<!--
15+
DO NOT REMOVE THIS COMMENT. It is intended for people who might copy/paste from the previous release issue.
16+
This was created by an issue template: https://github.com/stackabletech/issues/issues/new/choose.
17+
-->
18+
19+
## Getting Started Script Checks (Pre-Release)
20+
21+
Part of <https://github.com/stackabletech/issues/issues/TRACKING_ISSUE>
22+
23+
In each operator repository, run the following commands. If any updates are
24+
required, open a PR using the applicable link below.
25+
26+
```shell
27+
# Some of the scripts are in a code/ subdirectory
28+
# pushd docs/modules/superset/examples/getting_started
29+
# pushd docs/modules/superset/examples/getting_started/code
30+
pushd $(fd -td getting_started | grep examples); cd code 2>/dev/null || true
31+
32+
# Make a fresh cluster (~12 seconds)
33+
kind delete cluster && kind create cluster
34+
./getting_started.sh stackablectl
35+
36+
# Make a fresh cluster (~12 seconds)
37+
kind delete cluster && kind create cluster
38+
./getting_started.sh helm
39+
40+
popd
41+
```
42+
43+
> [!TIP]
44+
> Create branches with predictable names so the links below work. Remember
45+
> to replace `YY.M.X` with the appropriate release version:
46+
>
47+
> ```sh
48+
> git stash -m "unsaved work"
49+
> git fetch origin
50+
> git checkout -b fix/getting-started-pre-YY.M.X origin/main
51+
> ```
52+
>
53+
> Then use the links below to automatically create applicable PRs for each operator
54+
> using the PR template.
55+
56+
Replace the items in the task lists below with the applicable Pull Requests (if any).
57+
58+
<!--
59+
The following list was generated by:
60+
61+
# go to the operator-templating repository, then run:
62+
MAIN_BRANCH=main
63+
STACKABLE_RELEASE=YY.M.X
64+
yq '.repositories[].name' config/repositories.yaml \
65+
| sort \
66+
| xargs -I {} echo "- [ ] [Update getting-started script for {}](https://github.com/stackabletech/{}/compare/${MAIN_BRANCH}...fix/getting-started-pre-${STACKABLE_RELEASE}?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-${STACKABLE_RELEASE})"
67+
-->
68+
69+
```[tasklist]
70+
### Getting Started Script Checks and Updates
71+
- [ ] [Update getting-started script for airflow-operator](https://github.com/stackabletech/airflow-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
72+
- [ ] [Update getting-started script for commons-operator](https://github.com/stackabletech/commons-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
73+
- [ ] [Update getting-started script for druid-operator](https://github.com/stackabletech/druid-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
74+
- [ ] [Update getting-started script for edc-operator](https://github.com/stackabletech/edc-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
75+
- [ ] [Update getting-started script for hbase-operator](https://github.com/stackabletech/hbase-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
76+
- [ ] [Update getting-started script for hdfs-operator](https://github.com/stackabletech/hdfs-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
77+
- [ ] [Update getting-started script for hello-world-operator](https://github.com/stackabletech/hello-world-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
78+
- [ ] [Update getting-started script for hive-operator](https://github.com/stackabletech/hive-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
79+
- [ ] [Update getting-started script for kafka-operator](https://github.com/stackabletech/kafka-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
80+
- [ ] [Update getting-started script for listener-operator](https://github.com/stackabletech/listener-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
81+
- [ ] [Update getting-started script for nifi-operator](https://github.com/stackabletech/nifi-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
82+
- [ ] [Update getting-started script for opa-operator](https://github.com/stackabletech/opa-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
83+
- [ ] [Update getting-started script for secret-operator](https://github.com/stackabletech/secret-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
84+
- [ ] [Update getting-started script for spark-k8s-operator](https://github.com/stackabletech/spark-k8s-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
85+
- [ ] [Update getting-started script for superset-operator](https://github.com/stackabletech/superset-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
86+
- [ ] [Update getting-started script for trino-operator](https://github.com/stackabletech/trino-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
87+
- [ ] [Update getting-started script for zookeeper-operator](https://github.com/stackabletech/zookeeper-operator/compare/main...fix/getting-started-pre-YY.M.X?quick_pull=1&template=pre-release-getting-started-script.md&title=fix%28docs%29%3A+Update+getting-started+script+pre-YY.M.X)
88+
```
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
---
2+
name: Pre-Release OpenShift Integration Tests
3+
about: This template can be used to track the integration testing on OpenShift leading up to the next Stackable release
4+
title: "chore(tracking): Run integration tests on OpenShift before SDP Release YY.M.X"
5+
labels: ['epic']
6+
assignees: ''
7+
---
8+
9+
<!--
10+
Make sure to update the link in '.github/ISSUE_TEMPLATE/release.md' when
11+
you change the front matter above.
12+
-->
13+
14+
<!--
15+
DO NOT REMOVE THIS COMMENT. It is intended for people who might copy/paste from the previous release issue.
16+
This was created by an issue template: https://github.com/stackabletech/issues/issues/new/choose.
17+
-->
18+
19+
## Pre-Release OpenShift Integration Tests
20+
21+
Part of <https://github.com/stackabletech/issues/issues/TRACKING_ISSUE>
22+
23+
Make sure to run the tests using the following parameters:
24+
25+
```
26+
TEST_PLATFORM: OpenShift on replicated.com (4.15.0-okd)
27+
GIT_BRANCH_OR_TAG: origin/main
28+
OPERATOR_VERSION: 0.0.0-dev
29+
TEST_SCRIPT_PARAMS: --test-suite openshift
30+
```
31+
32+
<!--
33+
The following list was generated by:
34+
35+
# go to the stackable-templating repository, then run:
36+
yq '.repositories[].name' config/repositories.yaml \
37+
| sort \
38+
| xargs -I {} echo "- [ ] [{}](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/{}-it-custom/build)"
39+
-->
40+
41+
```[tasklist]
42+
### Integration Tests on OpenShift
43+
- [ ] [airflow-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/airflow-operator-it-custom/build)
44+
- [ ] [commons-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/commons-operator-it-custom/build)
45+
- [ ] [druid-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/druid-operator-it-custom/build)
46+
- [ ] [edc-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/edc-operator-it-custom/build)
47+
- [ ] [hbase-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/hbase-operator-it-custom/build)
48+
- [ ] [hdfs-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/hdfs-operator-it-custom/build)
49+
- [ ] [hello-world-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/hello-world-operator-it-custom/build)
50+
- [ ] [hive-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/hive-operator-it-custom/build)
51+
- [ ] [kafka-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/kafka-operator-it-custom/build)
52+
- [ ] [listener-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/listener-operator-it-custom/build)
53+
- [ ] [nifi-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/nifi-operator-it-custom/build)
54+
- [ ] [opa-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/opa-operator-it-custom/build)
55+
- [ ] [secret-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/secret-operator-it-custom/build)
56+
- [ ] [spark-k8s-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/spark-k8s-operator-it-custom/build)
57+
- [ ] [superset-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/superset-operator-it-custom/build)
58+
- [ ] [trino-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/trino-operator-it-custom/build)
59+
- [ ] [zookeeper-operator](https://testing.stackable.tech/view/02%20Operator%20Tests%20%28custom%29/job/zookeeper-operator-it-custom/build)
60+
```

0 commit comments

Comments
 (0)