Skip to content

Commit 5ebf06b

Browse files
authored
Merge branch 'main' into docs_groups-config-page
2 parents 3ebefbb + f624f7d commit 5ebf06b

File tree

92 files changed

+3041
-2361
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+3041
-2361
lines changed

.github/actions/systemtests/verify-workflow-run-succeeded.sh

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,36 @@ source $SCRIPT_DIR/common.sh
88

99
WORKFLOW_FILE=${1:-integration.yml}
1010

11-
echo "Check workflow run succeeded"
11+
echo "Check build-images job succeeded"
1212

1313
# Get branch from PR
1414
BRANCH=$(gh pr view "$PR_NUMBER" --repo "$REPO" --json headRefName -q '.headRefName')
1515
echo "Fetching latest Build workflow run for branch $BRANCH..."
1616

17-
# Fetch latest workflow run conclusion
18-
BUILD_RUN=$(gh api "repos/$REPO/actions/workflows/$WORKFLOW_FILE/runs?branch=$BRANCH&per_page=1" \
19-
--jq '.workflow_runs[0].conclusion')
17+
# Get the latest run ID for the workflow
18+
RUN_ID=$(gh api "repos/$REPO/actions/workflows/$WORKFLOW_FILE/runs?branch=$BRANCH&per_page=1" \
19+
--jq '.workflow_runs[0].id')
2020

21-
echo "Build workflow latest run conclusion: $BUILD_RUN"
22-
if [[ "$BUILD_RUN" != "success" ]]; then
23-
# Comment workflow status
21+
echo "Latest workflow run ID: $RUN_ID"
22+
23+
if [[ -z "$RUN_ID" || "$RUN_ID" == "null" ]]; then
24+
deleteLastStatusComment
25+
gh pr comment $PR_NUMBER --repo $REPO --body "❌ No workflow run found for branch $BRANCH. Cannot trigger systemtests"
26+
exit 1
27+
fi
28+
29+
# Check specifically the build-images job conclusion within that run
30+
BUILD_IMAGES_STATUS=$(gh api "repos/$REPO/actions/runs/$RUN_ID/jobs" \
31+
--jq '.jobs[] | select(.name=="build-images") | .conclusion')
32+
33+
echo "build-images job conclusion: $BUILD_IMAGES_STATUS"
34+
35+
if [[ "$BUILD_IMAGES_STATUS" != "success" ]]; then
2436
deleteLastStatusComment
25-
gh pr comment $PR_NUMBER --repo $REPO --body "Build did not succeed. Cannot trigger systemtests"
37+
gh pr comment $PR_NUMBER --repo $REPO --body "build-images job did not succeed (status: $BUILD_IMAGES_STATUS). Cannot trigger systemtests"
2638
exit 1
2739
fi
40+
41+
# Export run ID so systemtests workflow can download artifacts from it directly
42+
echo "ARTIFACTS_RUN_ID=$RUN_ID" >> $GITHUB_ENV
43+
echo "Build images succeeded, artifacts available from run $RUN_ID"

.github/dependabot.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ updates:
3737
schedule:
3838
interval: daily
3939
open-pull-requests-limit: 10
40+
ignore:
41+
- dependency-name: "storybook"
42+
- dependency-name: "@storybook/*"
4043
groups:
4144
patternfly:
4245
patterns:

.github/workflows/pre-systemtest.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
if: ${{ contains(github.event.comment.body, '--help') }}
3131
run: ./.github/actions/systemtests/pr-help.sh
3232

33-
- name: Check if Build workflow succeeded
33+
- name: Check if build-images job succeeded
3434
run: ./.github/actions/systemtests/verify-workflow-run-succeeded.sh
3535

3636
- name: Parse parameters from comment
@@ -40,14 +40,15 @@ jobs:
4040
- name: Comment start of the build
4141
run: ./.github/actions/systemtests/update-pr-systemtests-started.sh
4242

43-
- name: Invoke workflow in another repo with inputs
43+
- name: Invoke workflow with inputs
4444
uses: benc-uk/workflow-dispatch@7a027648b88c2413826b6ddd6c76114894dc5ec4
4545
with:
4646
token: ${{ secrets.BOT_ORG_SCOPED_TOKEN }}
4747
workflow: systemtests.yml
4848
inputs: >
4949
{
5050
"commit_sha": "${{ env.COMMIT_SHA }}",
51+
"artifacts_run_id": "${{ env.ARTIFACTS_RUN_ID }}",
5152
"testcase": "${{ env.TESTCASE }}",
5253
"profile": "${{ env.PROFILE }}",
5354
"install_type": "${{ env.INSTALL_TYPE }}",

.github/workflows/systemtests.yml

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ on:
66
commit_sha:
77
description: 'Commit sha'
88
required: true
9+
artifacts_run_id:
10+
description: 'Run ID of the integration workflow to download artifacts from'
11+
required: true
912
testcase:
1013
description: 'Test case to run'
1114
required: false
@@ -65,6 +68,7 @@ jobs:
6568
TEST_CASE: ${{ matrix.testcase }}
6669
PROFILE: ${{ matrix.profile }}
6770
COMMIT_SHA: ${{ github.event.inputs.commit_sha }}
71+
ARTIFACTS_RUN_ID: ${{ github.event.inputs.artifacts_run_id }}
6872
GH_TOKEN: ${{ secrets.BOT_ORG_SCOPED_TOKEN }}
6973
REPO: ${{ github.repository }}
7074
INSTALL_TYPE: ${{ github.event.inputs.install_type }}
@@ -80,11 +84,6 @@ jobs:
8084
with:
8185
ref: ${{ env.COMMIT_SHA }}
8286

83-
- name: Get previously built artifacts
84-
run: |
85-
ARTIFACTS_RUN_ID=$(gh run list --repo $REPO --commit $COMMIT_SHA --workflow integration.yml --status success --json databaseId --jq '.[0].databaseId')
86-
echo "ARTIFACTS_RUN_ID=$ARTIFACTS_RUN_ID" >> $GITHUB_ENV
87-
8887
- name: Download Image Artifacts
8988
uses: actions/download-artifact@v8
9089
with:
@@ -113,17 +112,14 @@ jobs:
113112
echo "PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
114113
echo "CONSOLE_CLUSTER_DOMAIN=$(minikube ip).nip.io" >> $GITHUB_ENV
115114
116-
# YAML INSTALL PATH
117115
- name: Prepare YAML install
118116
if: ${{ env.INSTALL_TYPE == 'yaml' }}
119117
run: |
120118
set -x
121119
echo "Preparing YAML-based installation..."
122120
123-
# Download k8s-resources artifact (same run as images)
124-
gh run download ${{ env.ARTIFACTS_RUN_ID }} --repo ${{ env.REPO }} -n k8s-resources --dir ./k8s-resources
121+
gh run download ${{ env.ARTIFACTS_RUN_ID }} --repo ${{ env.REPO }} -n k8s-resources --dir ./k8s-resources
125122
126-
# Merge YAML files
127123
mkdir -p ./k8s-resources/merged
128124
cat ./k8s-resources/kubernetes/consoles.console.streamshub.github.com-v1.yml \
129125
./k8s-resources/kubernetes/kubernetes.yml \

api/src/main/docker/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
# accessed directly. (example: "foo.example.com,bar.example.com")
5454
#
5555
###
56-
FROM registry.access.redhat.com/ubi9/openjdk-21:1.24-2.1772091453
56+
FROM registry.access.redhat.com/ubi9/openjdk-21:1.24-2.1773186566
5757

5858
ENV LANGUAGE='en_US:en'
5959
LABEL org.opencontainers.image.source="https://github.com/streamshub/console"

operator/src/main/docker/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
# accessed directly. (example: "foo.example.com,bar.example.com")
5454
#
5555
###
56-
FROM registry.access.redhat.com/ubi9/openjdk-21:1.24-2.1772091453
56+
FROM registry.access.redhat.com/ubi9/openjdk-21:1.24-2.1773186566
5757

5858
ENV LANGUAGE='en_US:en'
5959
LABEL org.opencontainers.image.source="https://github.com/streamshub/console"

systemtests/config.yaml

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
# -------------------------------------------
55
# Cleanup environment after test. In case of debugging, this env lets you skip afterEach and afterAll.
66
CLEANUP_ENVIRONMENT: true
7+
# This allows re-deployment of console operator if it already exists
8+
DELETE_CONSOLE_OPERATOR_BEFORE_INSTALL: true
79
# Log level used in file output
810
TEST_FILE_LOG_LEVEL: DEBUG
911
# Log level used in console output
@@ -41,12 +43,12 @@ CONSOLE_OLM_CHANNEL_NAME: alpha
4143
# YAML
4244
# -------------------------------------------
4345
# Which released version of Strimzi Cluster Operator to install
44-
STRIMZI_OPERATOR_VERSION: 0.49.0
46+
STRIMZI_OPERATOR_VERSION: 0.51.0
4547
# URL or local path for Console Operator installation
4648
# 1. URL - released console-operator.yaml
4749
# 2. Local path that is relative to the root project dir
4850
# 3. Local path that is absolute
49-
CONSOLE_OPERATOR_BUNDLE_URL: https://github.com/streamshub/console/releases/download/0.8.4/streamshub-console-operator.yaml
51+
CONSOLE_OPERATOR_BUNDLE_URL: https://github.com/streamshub/console/releases/download/0.11.0/streamshub-console-operator.yaml
5052
# Custom Console Operator image. Overrides default image used in bundle yaml
5153
CONSOLE_OPERATOR_IMAGE:
5254
# -------------------------------------------
@@ -57,9 +59,30 @@ CONSOLE_API_IMAGE:
5759
# Custom Console UI image. Overrides default image installed automatically by Operator
5860
CONSOLE_UI_IMAGE:
5961
# -------------------------------------------
62+
# Kroxy
63+
# -------------------------------------------
64+
# Kroxy released yaml manifests version
65+
KROXYLICIOUS_VERSION: 0.18.0
66+
# -------------------------------------------
67+
# Apicurio
68+
# -------------------------------------------
69+
# Apicurio schema registry version
70+
APICURIO_VERSION: 3.1.7
71+
# -------------------------------------------
72+
# Keycloak
73+
# -------------------------------------------
74+
# Keycloak released yaml manifest tag version
75+
KEYCLOAK_VERSION: 26.4.0
76+
# -------------------------------------------
77+
# Prometheus
78+
# -------------------------------------------
79+
# Used for custom prometheus tests
80+
# version of the released yaml manifests
81+
PROMETHEUS_VERSION: 0.89.0
82+
# -------------------------------------------
6083
# Kafka
6184
# -------------------------------------------
6285
# Kafka version used in system tests
63-
ST_KAFKA_VERSION: 4.1.0
86+
ST_KAFKA_VERSION: 4.2.0
6487
# Image for test client containers in system tests
65-
TEST_CLIENTS_IMAGE: quay.io/strimzi-test-clients/test-clients:0.12.0-kafka-4.1.0
88+
TEST_CLIENTS_IMAGE: quay.io/strimzi-test-clients/test-clients:0.13.0-kafka-4.2.0

systemtests/pom.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,14 @@
258258
</activation>
259259
</profile>
260260

261+
<profile>
262+
<id>all</id>
263+
<properties>
264+
<skipTests>false</skipTests>
265+
<groups>regression, olm-upgrade, yaml-upgrade</groups>
266+
</properties>
267+
</profile>
268+
261269
<profile>
262270
<id>regression</id>
263271
<properties>

systemtests/src/main/java/com/github/streamshub/systemtests/Environment.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ public class Environment {
2727
// Console
2828
public static final String CONSOLE_API_IMAGE = ENVS.getOrDefault("CONSOLE_API_IMAGE", "");
2929
public static final String CONSOLE_UI_IMAGE = ENVS.getOrDefault("CONSOLE_UI_IMAGE", "");
30-
public static final String CONSOLE_OPERATOR_IMAGE = ENVS.getOrDefault("CONSOLE_OPERATOR_IMAGE", "");
3130
public static final InstallType CONSOLE_INSTALL_TYPE = ENVS.getOrDefault("CONSOLE_INSTALL_TYPE", InstallType::fromString, InstallType.Yaml);
3231
public static final String CONSOLE_DEPLOYMENT_NAME = ENVS.getOrDefault("CONSOLE_DEPLOYMENT_NAME", "streamshub-console");
3332
public static final String CONSOLE_CLUSTER_DOMAIN = ENVS.getOrDefault("CONSOLE_CLUSTER_DOMAIN", "");
33+
public static final boolean DELETE_CONSOLE_OPERATOR_BEFORE_INSTALL = ENVS.getOrDefault("DELETE_CONSOLE_OPERATOR_BEFORE_INSTALL", Boolean::parseBoolean, true);
3434

35-
// YAML bundle
35+
// YAML bundle
3636
public static final String CONSOLE_OPERATOR_BUNDLE_URL = ENVS.getOrDefault("CONSOLE_OPERATOR_BUNDLE_URL", "");
3737

3838
// OLM
@@ -66,20 +66,25 @@ public class Environment {
6666
public static final String TEST_CLIENTS_PULL_SECRET = ENVS.getOrDefault("TEST_CLIENTS_PULL_SECRET", "");
6767

6868
// Keycloak
69-
public static final String KEYCLOAK_VERSION = ENVS.getOrDefault("KEYCLOAK_VERSION", "26.2.5");
69+
public static final String KEYCLOAK_VERSION = ENVS.getOrDefault("KEYCLOAK_VERSION", "26.4.0");
7070
public static final boolean DEFAULT_TO_DENY_NETWORK_POLICIES = ENVS.getOrDefault("DEFAULT_TO_DENY_NETWORK_POLICIES", Boolean::parseBoolean, true);
7171
public static final String KEYCLOAK_TRUST_STORE_FILE_PATH = ENVS.getOrDefault("TRUST_STORE_FILE_PATH", "/tmp/keycloak/keycloak-truststore.jks");
72+
// For custom keycloak images
73+
public static final String KEYCLOAK_OPERATOR_IMAGE = ENVS.getOrDefault("KEYCLOAK_OPERATOR_IMAGE", "");
74+
public static final String KEYCLOAK_SERVER_IMAGE = ENVS.getOrDefault("KEYCLOAK_SERVER_IMAGE", "");
7275

7376
// Postgres
7477
public static final String POSTGRES_IMAGE = ENVS.getOrDefault("POSTGRES_IMAGE", "mirror.gcr.io/postgres:18");
7578

7679
// Proxy
7780
public static final String KROXYLICIOUS_VERSION = ENVS.getOrDefault("KROXYLICIOUS_VERSION", "0.18.0");
7881

79-
8082
// Apicurio
8183
public static final String APICURIO_VERSION = ENVS.getOrDefault("APICURIO_VERSION", "3.1.7");
8284

85+
// Prometheus
86+
public static final String PROMETHEUS_VERSION = ENVS.getOrDefault("PROMETHEUS_VERSION", "0.89.0");
87+
8388
// ------------------------------------------------------------------------------------------------------------------------------------------------------------
8489
// Deny instantiation
8590
private Environment() {}

systemtests/src/main/java/com/github/streamshub/systemtests/MessageStore.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@ private MessageStore() {}
5858
static final String BRAND = "brand";
5959
static final String RECONCILIATION = "reconciliation";
6060
static final String MESSAGE_BROWSER = "message-browser";
61+
static final String APP_LAYOUT = "AppLayout";
62+
static final String KAFKA_CONNECT = "KafkaConnect";
63+
static final String GROUPS_TABLE = "GroupsTable";
6164

6265
public static String getProductName() {
6366
return jsonResources.get(COMMON).get(PRODUCT).textValue();
@@ -95,9 +98,6 @@ public static String reconciliationCancel() {
9598
return jsonResources.get(RECONCILIATION).get("cancel").textValue();
9699
}
97100

98-
public static String reconciliationResume() {
99-
return jsonResources.get(RECONCILIATION).get("resume").textValue();
100-
}
101101

102102
public static String reconciliationPausedWarning() {
103103
return jsonResources.get(RECONCILIATION).get("reconciliation_paused_warning").textValue();
@@ -114,9 +114,17 @@ public static String clusterCardNoMessages() {
114114
public static String noDataTitle() {
115115
return jsonResources.get(MESSAGE_BROWSER).get("no_data_title").textValue();
116116
}
117-
public static String noDataBody() {
118-
return jsonResources.get(MESSAGE_BROWSER).get("no_data_title").textValue();
117+
118+
public static String noConsumerGroups() {
119+
return jsonResources.get(GROUPS_TABLE).get("no_consumer_groups").textValue();
119120
}
120121

122+
public static String groupsTitle() {
123+
return jsonResources.get(GROUPS_TABLE).get("title").textValue();
124+
}
125+
126+
public static String kafkaConnect() {
127+
return jsonResources.get(APP_LAYOUT).get("kafka_connect").textValue();
128+
}
121129

122130
}

0 commit comments

Comments
 (0)