You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by "bernardodemarco (via GitHub)" <gi...@apache.org> on 2025/06/12 15:37:33 UTC

[PR] API to list console sessions [cloudstack]

bernardodemarco opened a new pull request, #11016:
URL: https://github.com/apache/cloudstack/pull/11016

   ### Description
   
   Currently, details about console sessions are stored in the `cloud.console_session` table in the database. Operators can only access this information by querying the database directly, while end users have no way to view console session data at all.
   
   To address this, this PR proposes to create the `listConsoleSessions` API. It allows listing the console sessions, with optional filters by domain, account, user, host, instance, IP address, and date. The API is accessible to all account types and, thus, performs proper access validation on the queried resources.
   
   The API supports the following parameters:
   
   | Parameter                       | Description                                                                                                                                                                    | Required |
   | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- |
   | `id`                            | Console session ID.                                                                                                                                                            | No       |
   | `activeonly`                    | Indicates whether only currently active console sessions should be listed. Defaults to `true`. Active sessions are the ones that have been acquired and have not been removed. | No       |
   | `isrecursive`                   | Lists console sessions recursively per domain. Defaults to `false`.                                                                                                             | No       |
   | `clientaddress`                 | IP address of the client that accessed the console.                                                                                                                            | No       |
   | `consoleendpointcreatoraddress` | IP address of the client that generated the console session endpoint.                                                                                                          | No       |
   | `hostid`                        | ID of the host where the VM was running when the console session endpoint was generated. Only available for Root Admins.                                                       | No       |
   | `instanceid`                    | ID of the VM associated with the console session.                                                                                                                              | No       |
   | `startdate`                     | If provided, only console sessions that were acquired from this date onward will be listed.                                                                                    | No       |
   | `enddate`                       | If provided, only console sessions that were acquired up to this date will be listed.                                                                                          | No       |
   | `domainid`                      | Domain ID of the account that generated the console session endpoint.                                                                                                          | No       |
   | `accountid`                     | ID of the account that generated the console session endpoint.                                                                                                                 | No       |
   | `userid`                        | ID of the user that generated the console session endpoint.                                                                                                                          | No       |
   | `page`                          | Used for pagination along with `pagesize`.                                                                                                                                      | No       |
   | `pagesize`                      | User for pagination along with `page`.                                                                                                                                          | No       |
   
   This PR only encompasses the creation of the API `listConsoleSessions` API. UI support will be implemented in a future PR.
   
   ### Types of changes
   
   - [ ] Breaking change (fix or feature that would cause existing functionality to change)
   - [X] New feature (non-breaking change which adds functionality)
   - [ ] Bug fix (non-breaking change which fixes an issue)
   - [ ] Enhancement (improves an existing feature and functionality)
   - [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
   - [ ] build/CI
   - [ ] test (unit or integration test code)
   
   ### Feature/Enhancement Scale or Bug Severity
   
   #### Feature/Enhancement Scale
   
   - [X] Major
   - [ ] Minor
   
   ### Screenshots (if appropriate):
   
   ### How Has This Been Tested?
   
   #### Tests Setup
   
   1. Created the following domain hierarchy:
   
   ```bash
   ROOT
   ├── d1
   │   └── d1-d1
   └── d2
   ```
   
   2. Created the following accounts:
   
   | Name         | Role Type    | Domain            |
   |--------------|--------------|-------------------|
   | admin        | Admin        | ROOT              |
   | u1           | User         | ROOT              |
   | d1-admin     | DomainAdmin  | ROOT/d1           |
   | d1-user      | User         | ROOT/d1           |
   | d1-d1-admin  | DomainAdmin  | ROOT/d1/d1-d1     |
   | d1-d1-user   | User         | ROOT/d1/d1-d1     |
   | d2-admin     | DomainAdmin  | ROOT/d2           |
   
   3. Deployed a VM for each account:
   
   | ID | Name                                    | Instance Name | Account Name  |
   |----|-----------------------------------------|----------------|---------------|
   |  5 | v-5-VM                                  | v-5-VM         | system        |
   |  6 | s-6-VM                                  | s-6-VM         | system        |
   |  7 | VM-fb5fa7ab-c5a0-4943-88bd-dedec9007c7b | i-7-7-VM       | d1-d1-user    |
   |  8 | r-8-VM                                  | r-8-VM         | d1-d1-user    |
   |  9 | VM-16febbcd-a35e-4f05-87d3-1a27db077136 | i-6-9-VM       | d1-user       |
   | 10 | r-10-VM                                 | r-10-VM        | d1-user       |
   | 11 | VM-d3208889-d3fd-43fe-9087-3cf5d863a3b1 | i-4-11-VM      | d1-admin      |
   | 12 | r-12-VM                                 | r-12-VM        | d1-admin      |
   | 13 | VM-dea9f800-afd0-4054-9160-3a676a0df3d3 | i-2-13-VM      | admin         |
   | 14 | r-14-VM                                 | r-14-VM        | admin         |
   | 15 | VM-766b6485-330e-4ec9-9516-59e17b52c1c7 | i-8-15-VM      | u1            |
   | 16 | r-16-VM                                 | r-16-VM        | u1            |
   | 17 | VM-d2d7ded1-e210-4191-9a0e-75c3914de043 | i-9-17-VM      | d2-admin      |
   | 18 | r-18-VM                                 | r-18-VM        | d2-admin      |
   | 19 | VM-266b73ff-2684-46b9-b36e-830ac83c5c14 | i-5-19-VM      | d1-d1-admin   |
   | 20 | r-20-VM                                 | r-20-VM        | d1-d1-admin   |
   
   4. With each account, I accessed all available VM consoles through the CPVM.
   
   #### `listConsoleSessions` tests
   
   - With the `admin` account, verified that the API lists console sessions correctly according to the specified parameters
   - With the `u1` account, verified that it is only possible to access the account's console sessions
   - With the `d2-admin` account, verified that it is only possible to list the console sessions of the `d2` domain
   - With the `d1-admin` account, verified that it is only possible to list the console sessions of the `d1` and `d1/d1-d1` domains
   - With the `d1-user` account, verified that it is only possible to list the `d1-user` console sessions
   - With the `d1-d1-admin` account, verified that it is only possible to list the console sessions of the `d1/d1-d1` domain
   - With the `d1-d1-user` account, verified that it is only possible to list the `d1-d1-user` console sessions
   - With accounts of the `User` type, verified that the `hostid` parameter is not considered in the API workflow
   - With accounts of the `User` type, verified that the `hostid` and `hostname` response attributes are not included in the API's return


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144423982

   @sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144420632

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "JoaoJandre (via GitHub)" <gi...@apache.org>.
JoaoJandre commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2182778119


##########
engine/schema/src/main/java/com/cloud/vm/dao/ConsoleSessionDaoImpl.java:
##########
@@ -75,9 +92,64 @@ public int expungeByVmList(List<Long> vmIds, Long batchSize) {
             return 0;
         }
         SearchBuilder<ConsoleSessionVO> sb = createSearchBuilder();
-        sb.and("vmIds", sb.entity().getInstanceId(), SearchCriteria.Op.IN);
+        sb.and(VM_IDS, sb.entity().getInstanceId(), SearchCriteria.Op.IN);
         SearchCriteria<ConsoleSessionVO> sc = sb.create();
-        sc.setParameters("vmIds", vmIds.toArray());
+        sc.setParameters(VM_IDS, vmIds.toArray());
         return batchExpunge(sc, batchSize);
     }
+
+    @Override
+    public Pair<List<ConsoleSessionVO>, Integer> listConsoleSessions(Long id, List<Long> domainIds, Long accountId, Long userId, Long hostId,
+                                                                     Date startDate, Date endDate, Long instanceId,
+                                                                     String consoleEndpointCreatorAddress, String clientAddress,
+                                                                     boolean activeOnly, Long pageSizeVal, Long startIndex) {
+        Filter filter = new Filter(ConsoleSessionVO.class, CREATED, false, startIndex, pageSizeVal);
+        SearchCriteria<ConsoleSessionVO> searchCriteria = createListConsoleSessionsSearchCriteria(id, domainIds, accountId, userId, hostId,
+                startDate, endDate, instanceId, consoleEndpointCreatorAddress, clientAddress, activeOnly);
+
+        return searchAndCount(searchCriteria, filter, true);
+    }
+
+    private SearchCriteria<ConsoleSessionVO> createListConsoleSessionsSearchCriteria(Long id, List<Long> domainIds, Long accountId, Long userId, Long hostId,
+                                                                                     Date startDate, Date endDate, Long instanceId,
+                                                                                     String consoleEndpointCreatorAddress, String clientAddress,
+                                                                                     boolean activeOnly) {
+        SearchCriteria<ConsoleSessionVO> searchCriteria = createListConsoleSessionsSearchBuilder(activeOnly).create();
+
+        searchCriteria.setParametersIfNotNull(ID, id);
+        searchCriteria.setParametersIfNotNull(DOMAIN_IDS, domainIds.toArray());
+        searchCriteria.setParametersIfNotNull(ACCOUNT_ID, accountId);
+        searchCriteria.setParametersIfNotNull(USER_ID, userId);
+        searchCriteria.setParametersIfNotNull(HOST_ID, hostId);
+        searchCriteria.setParametersIfNotNull(INSTANCE_ID, instanceId);
+        searchCriteria.setParametersIfNotNull(START_DATE, startDate);
+        searchCriteria.setParametersIfNotNull(END_DATE, endDate);
+        searchCriteria.setParametersIfNotNull(CREATOR_ADDRESS, consoleEndpointCreatorAddress);
+        searchCriteria.setParametersIfNotNull(CLIENT_ADDRESS, clientAddress);
+
+        return searchCriteria;
+    }
+
+    private SearchBuilder<ConsoleSessionVO> createListConsoleSessionsSearchBuilder(boolean activeOnly) {
+        SearchBuilder<ConsoleSessionVO> searchBuilder = createSearchBuilder();
+
+        searchBuilder.and(ID, searchBuilder.entity().getId(), SearchCriteria.Op.EQ);
+        searchBuilder.and(DOMAIN_IDS, searchBuilder.entity().getDomainId(), SearchCriteria.Op.IN);
+        searchBuilder.and(ACCOUNT_ID, searchBuilder.entity().getAccountId(), SearchCriteria.Op.EQ);
+        searchBuilder.and(USER_ID, searchBuilder.entity().getUserId(), SearchCriteria.Op.EQ);
+        searchBuilder.and(HOST_ID, searchBuilder.entity().getHostId(), SearchCriteria.Op.EQ);
+        searchBuilder.and(INSTANCE_ID, searchBuilder.entity().getInstanceId(), SearchCriteria.Op.EQ);
+        searchBuilder.and(START_DATE, searchBuilder.entity().getAcquired(), SearchCriteria.Op.GTEQ);
+        searchBuilder.and(END_DATE, searchBuilder.entity().getAcquired(), SearchCriteria.Op.LTEQ);

Review Comment:
   I was testing this and found that when listing using the start and end date, sessions which were never acquired were not being listed. I believe that it would be more interesting to search using the created date and not the acquired date. 
   Maybe we could add a parameter to filter for acquired sessions specifically.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2164084068


##########
api/src/main/java/org/apache/cloudstack/api/command/user/consoleproxy/ListConsoleSessionsCmd.java:
##########
@@ -0,0 +1,173 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.import org.apache.cloudstack.context.CallContext;
+package org.apache.cloudstack.api.command.user.consoleproxy;
+
+import org.apache.cloudstack.consoleproxy.ConsoleSession;
+
+import com.cloud.user.Account;
+import com.cloud.user.AccountService;
+import com.cloud.user.UserAccount;
+import org.apache.cloudstack.acl.RoleType;
+import org.apache.cloudstack.api.ACL;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseListCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.ConsoleSessionResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+import org.apache.cloudstack.api.response.HostResponse;
+import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.UserVmResponse;
+import org.apache.cloudstack.consoleproxy.ConsoleAccessManager;
+
+import javax.inject.Inject;
+import java.util.Date;
+
+@APICommand(name = "listConsoleSessions", description = "Lists console sessions.", responseObject = ConsoleSessionResponse.class,
+        entityType = {ConsoleSession.class}, since = "4.21.0",
+        requestHasSensitiveInfo = false, responseHasSensitiveInfo = false,
+        authorized = {RoleType.Admin, RoleType.DomainAdmin, RoleType.ResourceAdmin, RoleType.User})
+public class ListConsoleSessionsCmd extends BaseListCmd {
+    @Inject
+    private AccountService accountService;
+
+    @Inject
+    private ConsoleAccessManager consoleAccessManager;
+
+    @ACL
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = ConsoleSessionResponse.class, description = "The ID of the console session.")
+    private Long id;
+
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, entityType = DomainResponse.class, description = "The domain ID of the account that created the console endpoint.")
+    private Long domainId;
+
+    @ACL
+    @Parameter(name = ApiConstants.ACCOUNT_ID, type = CommandType.UUID, entityType = AccountResponse.class, description = "The ID of the account that created the console endpoint.")
+    private Long accountId;
+
+    @ACL
+    @Parameter(name = ApiConstants.USER_ID, type = CommandType.UUID, entityType = UserResponse.class, description = "The ID of the user that created the console endpoint.")
+    private Long userId;
+
+    @Parameter(name = ApiConstants.HOST_ID, type = CommandType.UUID, entityType = HostResponse.class, authorized = {RoleType.Admin}, description = "Lists console sessions from the specified host.")
+    private Long hostId;
+
+    @Parameter(name = ApiConstants.START_DATE, type = CommandType.DATE, description = "Lists console sessions acquired from this date onwards. " +
+            ApiConstants.PARAMETER_DESCRIPTION_START_DATE_POSSIBLE_FORMATS)
+    private Date startDate;
+
+    @Parameter(name = ApiConstants.END_DATE, type = CommandType.DATE, description = "Lists console sessions acquired up until this date. " +
+            ApiConstants.PARAMETER_DESCRIPTION_END_DATE_POSSIBLE_FORMATS)
+    private Date endDate;
+
+    @Parameter(name = ApiConstants.INSTANCE_ID, type = CommandType.UUID, entityType = UserVmResponse.class, description = "The ID of the instance.")
+    private Long instanceId;
+
+    @Parameter(name = ApiConstants.CONSOLE_ENDPOINT_CREATOR_ADDRESS, type = CommandType.STRING, description = "IP address of the creator of the console endpoint.")
+    private String consoleEndpointCreatorAddress;
+
+    @Parameter(name = ApiConstants.CLIENT_ADDRESS, type = CommandType.STRING, description = "IP address of the client that accessed the console session.")
+    private String clientAddress;
+
+    @Parameter(name = ApiConstants.ACTIVE_ONLY, type = CommandType.BOOLEAN,
+            description = "Lists only active console sessions, defaults to true. Active sessions are the ones that have been acquired and have not been removed.")
+    private boolean activeOnly = true;
+
+    @Parameter(name = ApiConstants.IS_RECURSIVE, type = CommandType.BOOLEAN, since = "4.20.0.1-scclouds",

Review Comment:
   @nvazquez, thanks!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3057358210

   @blueorangutan LLtest ubuntu22 kvm-ubuntu22 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053703379

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14123


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3125565158

   This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3111997255

   Packaging result [SF]: ✖️ el8 ✖️ el9 ✔️ debian ✖️ suse15. SL-JID 14330


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3002154810

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 13902


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2973022519

   @blueorangutan test


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2975363164

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + vmware-70u3) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112337710

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3111831882

   @winterhazel a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3132428672

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144353761

   @sureshanaparti, can we merge this one?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144388570

   > @sureshanaparti, can we merge this one?
   
   @bernardodemarco will check the build and merge


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144387070

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3036220283

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3028888187

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3036886913

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14041


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3002044470

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3003721650

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + vmware-70u3) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000654686

   Hi @bernardodemarco thanks for the feature! I'll try to test it soon


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2194780141


##########
api/src/main/java/org/apache/cloudstack/api/ApiConstants.java:
##########
@@ -252,6 +255,7 @@ public class ApiConstants {
     public static final String HYPERVISOR = "hypervisor";
     public static final String INLINE = "inline";
     public static final String INSTANCE = "instance";
+    public static final String INSTANCE_ID = "instance_id";

Review Comment:
   Sure, thanks for noticing! It was a backport mistake



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3052957280

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3139620319

   This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3073022840

   This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112835263

   @blueorangutan test


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2967335575

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2971213208

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3139388201

   @bernardodemarco can you check the conflicts


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144391003

   > > @sureshanaparti, can we merge this one?
   > 
   > @bernardodemarco will check the build and merge
   
   Ok, thanks!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3125681601

   @bernardodemarco @winterhazel can you check the conflicts


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3027892732

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3017966640

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3062657102

   <b>[LL]Trillian test result (tid-7110)</b>
   Environment: kvm-ubuntu22 (x2), Advanced Networking with Mgmt server u22
   Total time taken: 91137 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t7110-kvm-ubuntu22.zip
   Smoke tests completed. 102 look OK, 39 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   test_nic_secondaryip_add_remove | `Error` | 10.06 | test_multipleips_per_nic.py
   test_network_acl | `Error` | 2.29 | test_network_acl.py
   test_01_verify_ipv6_network | `Error` | 2.82 | test_network_ipv6.py
   test_01_verify_ipv6_network | `Error` | 2.82 | test_network_ipv6.py
   test_03_network_operations_on_created_vm_of_otheruser | `Error` | 2.48 | test_network_permissions.py
   test_03_network_operations_on_created_vm_of_otheruser | `Error` | 2.48 | test_network_permissions.py
   test_04_deploy_vm_for_other_user_and_test_vm_operations | `Failure` | 1.32 | test_network_permissions.py
   ContextSuite context=TestNetworkPermissions>:teardown | `Error` | 1.35 | test_network_permissions.py
   test_delete_account | `Error` | 10.37 | test_network.py
   test_delete_network_while_vm_on_it | `Error` | 2.29 | test_network.py
   test_delete_network_while_vm_on_it | `Error` | 2.30 | test_network.py
   test_deploy_vm_l2network | `Error` | 2.31 | test_network.py
   test_deploy_vm_l2network | `Error` | 2.31 | test_network.py
   test_l2network_restart | `Error` | 3.41 | test_network.py
   test_l2network_restart | `Error` | 3.41 | test_network.py
   ContextSuite context=TestL2Networks>:teardown | `Error` | 4.49 | test_network.py
   ContextSuite context=TestPortForwarding>:setup | `Error` | 9.60 | test_network.py
   ContextSuite context=TestPublicIP>:setup | `Error` | 8.50 | test_network.py
   test_reboot_router | `Error` | 5.04 | test_network.py
   test_releaseIP | `Error` | 5.10 | test_network.py
   test_releaseIP_using_IP | `Error` | 5.00 | test_network.py
   ContextSuite context=TestRouterRules>:setup | `Error` | 10.05 | test_network.py
   test_01_deployVMInSharedNetwork | `Failure` | 1.20 | test_network.py
   test_02_verifyRouterIpAfterNetworkRestart | `Failure` | 1.06 | test_network.py
   test_03_destroySharedNetwork | `Failure` | 0.05 | test_network.py
   ContextSuite context=TestSharedNetwork>:teardown | `Error` | 0.12 | test_network.py
   test_01_deployVMInSharedNetwork | `Failure` | 2.14 | test_network.py
   ContextSuite context=TestSharedNetworkWithConfigDrive>:teardown | `Error` | 3.22 | test_network.py
   test_01_nic | `Error` | 54.39 | test_nic.py
   test_01_non_strict_host_anti_affinity | `Error` | 3.42 | test_nonstrict_affinity_group.py
   test_02_non_strict_host_affinity | `Error` | 1.36 | test_nonstrict_affinity_group.py
   ContextSuite context=TestIsolatedNetworksPasswdServer>:setup | `Error` | 0.00 | test_password_server.py
   test_01_isolated_persistent_network | `Error` | 0.17 | test_persistent_network.py
   test_02_L2_persistent_network | `Error` | 1.21 | test_persistent_network.py
   test_03_deploy_and_destroy_VM_and_verify_network_resources_persist | `Failure` | 2.41 | test_persistent_network.py
   test_03_deploy_and_destroy_VM_and_verify_network_resources_persist | `Error` | 2.41 | test_persistent_network.py
   ContextSuite context=TestL2PersistentNetworks>:teardown | `Error` | 2.45 | test_persistent_network.py
   test_01_create_delete_portforwarding_fornonvpc | `Error` | 4.89 | test_portforwardingrules.py
   test_01_add_primary_storage_disabled_host | `Error` | 0.17 | test_primary_storage.py
   test_01_primary_storage_nfs | `Error` | 0.12 | test_primary_storage.py
   ContextSuite context=TestStorageTags>:setup | `Error` | 0.21 | test_primary_storage.py
   test_01_primary_storage_scope_change | `Error` | 0.07 | test_primary_storage_scope.py
   test_01_vpc_privategw_acl | `Failure` | 5.97 | test_privategw_acl.py
   test_02_vpc_privategw_static_routes | `Failure` | 5.09 | test_privategw_acl.py
   test_03_vpc_privategw_restart_vpc_cleanup | `Failure` | 5.95 | test_privategw_acl.py
   test_04_rvpc_privategw_static_routes | `Failure` | 6.94 | test_privategw_acl.py
   test_09_project_suspend | `Error` | 2.41 | test_projects.py
   test_10_project_activation | `Error` | 2.35 | test_projects.py
   test_01_purge_expunged_api_vm_start_date | `Error` | 2.52 | test_purge_expunged_vms.py
   test_02_purge_expunged_api_vm_end_date | `Error` | 2.62 | test_purge_expunged_vms.py
   test_03_purge_expunged_api_vm_start_end_date | `Error` | 2.51 | test_purge_expunged_vms.py
   test_04_purge_expunged_api_vm_no_date | `Error` | 1.49 | test_purge_expunged_vms.py
   test_05_purge_expunged_vm_service_offering | `Error` | 1.27 | test_purge_expunged_vms.py
   test_06_purge_expunged_vm_background_task | `Error` | 330.39 | test_purge_expunged_vms.py
   test_CRUD_operations_userdata | `Error` | 1517.37 | test_register_userdata.py
   test_deploy_vm_with_registered_userdata | `Error` | 5.81 | test_register_userdata.py
   test_deploy_vm_with_registered_userdata_with_override_policy_allow | `Error` | 5.72 | test_register_userdata.py
   test_deploy_vm_with_registered_userdata_with_override_policy_append | `Error` | 5.61 | test_register_userdata.py
   test_deploy_vm_with_registered_userdata_with_override_policy_deny | `Error` | 5.77 | test_register_userdata.py
   test_deploy_vm_with_registered_userdata_with_params | `Error` | 5.77 | test_register_userdata.py
   test_link_and_unlink_userdata_to_template | `Error` | 5.92 | test_register_userdata.py
   test_user_userdata_crud | `Error` | 5.93 | test_register_userdata.py
   ContextSuite context=TestResetVmOnReboot>:setup | `Error` | 0.00 | test_reset_vm_on_reboot.py
   ContextSuite context=TestRAMCPUResourceAccounting>:setup | `Error` | 0.00 | test_resource_accounting.py
   ContextSuite context=TestResourceNames>:setup | `Error` | 0.00 | test_resource_names.py
   ContextSuite context=TestRestoreVM>:setup | `Error` | 0.00 | test_restore_vm.py
   ContextSuite context=TestRouterDHCPHosts>:setup | `Error` | 0.00 | test_router_dhcphosts.py
   ContextSuite context=TestRouterDHCPOpts>:setup | `Error` | 0.00 | test_router_dhcphosts.py
   ContextSuite context=TestRouterDns>:setup | `Error` | 0.00 | test_router_dns.py
   ContextSuite context=TestRouterDnsService>:setup | `Error` | 0.00 | test_router_dnsservice.py
   ContextSuite context=TestRouterIpTablesPolicies>:setup | `Error` | 0.00 | test_routers_iptables_default_policy.py
   ContextSuite context=TestVPCIpTablesPolicies>:setup | `Error` | 0.00 | test_routers_iptables_default_policy.py
   test_01_migrate_vm_strict_tags_success | `Error` | 0.20 | test_vm_strict_host_tags.py
   test_02_migrate_vm_strict_tags_failure | `Error` | 0.17 | test_vm_strict_host_tags.py
   test_01_restore_vm_strict_tags_success | `Error` | 0.23 | test_vm_strict_host_tags.py
   test_02_restore_vm_strict_tags_failure | `Error` | 0.27 | test_vm_strict_host_tags.py
   test_01_scale_vm_strict_tags_success | `Error` | 0.17 | test_vm_strict_host_tags.py
   test_02_scale_vm_strict_tags_failure | `Error` | 0.35 | test_vm_strict_host_tags.py
   test_01_deploy_vm_on_specific_host_without_strict_tags | `Error` | 0.16 | test_vm_strict_host_tags.py
   test_02_deploy_vm_on_any_host_without_strict_tags | `Error` | 5.53 | test_vm_strict_host_tags.py
   test_03_deploy_vm_on_specific_host_with_strict_tags_success | `Error` | 0.17 | test_vm_strict_host_tags.py
   test_04_deploy_vm_on_any_host_with_strict_tags_success | `Error` | 2.42 | test_vm_strict_host_tags.py
   test_05_deploy_vm_on_specific_host_with_strict_tags_failure | `Failure` | 0.18 | test_vm_strict_host_tags.py
   ContextSuite context=TestIsolatedNetworks>:setup | `Error` | 0.00 | test_routers_network_ops.py
   ContextSuite context=TestRedundantIsolateNetworks>:setup | `Error` | 0.00 | test_routers_network_ops.py
   ContextSuite context=TestRouterServices>:setup | `Error` | 0.00 | test_routers.py
   test_01_sys_vm_start | `Failure` | 0.07 | test_secondary_storage.py
   ContextSuite context=TestCpuCapServiceOfferings>:setup | `Error` | 0.00 | test_service_offerings.py
   ContextSuite context=TestServiceOfferings>:setup | `Error` | 0.23 | test_service_offerings.py
   ContextSuite context=TestSetSourceNatIp>:setup | `Error` | 0.00 | test_set_sourcenat.py
   ContextSuite context=TestSharedFSLifecycle>:setup | `Error` | 0.00 | test_sharedfs_lifecycle.py
   ContextSuite context=TestSnapshotRootDisk>:setup | `Error` | 0.00 | test_snapshots.py
   ContextSuite context=TestSnapshotStandaloneBackup>:setup | `Error` | 0.00 | test_snapshots.py
   test_01_list_sec_storage_vm | `Failure` | 0.03 | test_ssvm.py
   test_02_list_cpvm_vm | `Failure` | 0.02 | test_ssvm.py
   test_03_ssvm_internals | `Failure` | 0.05 | test_ssvm.py
   test_04_cpvm_internals | `Failure` | 0.03 | test_ssvm.py
   test_05_stop_ssvm | `Failure` | 0.05 | test_ssvm.py
   test_06_stop_cpvm | `Failure` | 0.03 | test_ssvm.py
   test_07_reboot_ssvm | `Failure` | 0.02 | test_ssvm.py
   test_08_reboot_cpvm | `Failure` | 0.03 | test_ssvm.py
   test_09_reboot_ssvm_forced | `Failure` | 0.03 | test_ssvm.py
   test_10_reboot_cpvm_forced | `Failure` | 0.03 | test_ssvm.py
   test_11_destroy_ssvm | `Failure` | 0.03 | test_ssvm.py
   test_12_destroy_cpvm | `Failure` | 0.04 | test_ssvm.py
   ContextSuite context=TestVMWareStoragePolicies>:setup | `Error` | 0.00 | test_storage_policy.py
   test_02_create_template_with_checksum_sha1 | `Error` | 65.49 | test_templates.py
   test_03_create_template_with_checksum_sha256 | `Error` | 65.50 | test_templates.py
   test_04_create_template_with_checksum_md5 | `Error` | 65.51 | test_templates.py
   test_05_create_template_with_no_checksum | `Error` | 65.51 | test_templates.py
   test_01_register_template_direct_download_flag | `Error` | 0.03 | test_templates.py
   test_02_deploy_vm_from_direct_download_template | `Error` | 0.00 | test_templates.py
   test_03_deploy_vm_wrong_checksum | `Error` | 0.04 | test_templates.py
   ContextSuite context=TestTemplates>:setup | `Error` | 10.67 | test_templates.py
   ContextSuite context=TestISOUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestLBRuleUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestNatRuleUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestPublicIPUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestSnapshotUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestVmUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestVolumeUsage>:setup | `Error` | 0.00 | test_usage.py
   ContextSuite context=TestVpnUsage>:setup | `Error` | 0.00 | test_usage.py
   test_01_scale_up_verify | `Failure` | 35.03 | test_vm_autoscaling.py
   test_02_update_vmprofile_and_vmgroup | `Failure` | 245.51 | test_vm_autoscaling.py
   test_03_scale_down_verify | `Failure` | 304.52 | test_vm_autoscaling.py
   test_04_stop_remove_vm_in_vmgroup | `Failure` | 0.02 | test_vm_autoscaling.py
   test_06_autoscaling_vmgroup_on_project_network | `Failure` | 38.93 | test_vm_autoscaling.py
   test_06_autoscaling_vmgroup_on_project_network | `Error` | 38.93 | test_vm_autoscaling.py
   test_07_autoscaling_vmgroup_on_vpc_network | `Error` | 1.15 | test_vm_autoscaling.py
   ContextSuite context=TestVmAutoScaling>:teardown | `Error` | 9.89 | test_vm_autoscaling.py
   test_01_deploy_vm_on_specific_host | `Error` | 0.06 | test_vm_deployment_planner.py
   test_02_deploy_vm_on_specific_cluster | `Error` | 1.24 | test_vm_deployment_planner.py
   test_03_deploy_vm_on_specific_pod | `Error` | 1.22 | test_vm_deployment_planner.py
   test_04_deploy_vm_on_host_override_pod_and_cluster | `Error` | 0.08 | test_vm_deployment_planner.py
   test_05_deploy_vm_on_cluster_override_pod | `Error` | 1.20 | test_vm_deployment_planner.py
   test_01_migrate_VM_and_root_volume | `Error` | 87.69 | test_vm_life_cycle.py
   test_02_migrate_VM_with_two_data_disks | `Error` | 49.34 | test_vm_life_cycle.py
   test_01_secure_vm_migration | `Error` | 68.84 | test_vm_life_cycle.py
   test_02_unsecure_vm_migration | `Error` | 222.35 | test_vm_life_cycle.py
   test_04_nonsecured_to_secured_vm_migration | `Error` | 146.32 | test_vm_life_cycle.py
   test_08_migrate_vm | `Error` | 0.04 | test_vm_life_cycle.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053746510

   @blueorangutan test keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3052524894

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053449532

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3057356489

   @DaanHoogland [LL] unsupported parameters provided. Supported mgmt server os are: `centos7, centos6, suse15, alma8, ubuntu18, ubuntu22, ubuntu20, rocky8, alma9`. Supported hypervisors are: `kvm-centos6, kvm-centos7, kvm-rocky8, kvm-alma8, kvm-alma9, kvm-ubuntu18, kvm-ubuntu20, kvm-ubuntu22, kvm-suse15, vmware-55u3, vmware-60u2, vmware-65u2, vmware-67u3, vmware-70u1, vmware-70u2, vmware-70u3, vmware-80, vmware-80u1, xenserver-65sp1, xenserver-71, xenserver-74, xcpng74, xcpng76, xcpng80, xcpng81, xcpng82`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2971328384

   Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 13766


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2165035178


##########
server/src/main/java/com/cloud/api/ApiResponseHelper.java:
##########
@@ -5550,4 +5552,48 @@ public void updateTemplateIsoResponsesForIcons(List<TemplateResponse> responses,
             response.setResourceIconResponse(iconResponse);
         }
     }
+
+    @Override
+    public ConsoleSessionResponse createConsoleSessionResponse(ConsoleSession consoleSession, ResponseView responseView) {
+        ConsoleSessionResponse consoleSessionResponse = new ConsoleSessionResponse();
+        consoleSessionResponse.setId(consoleSession.getUuid());
+        consoleSessionResponse.setCreated(consoleSession.getCreated());
+        consoleSessionResponse.setAcquired(consoleSession.getAcquired());
+        consoleSessionResponse.setRemoved(consoleSession.getRemoved());
+        consoleSessionResponse.setConsoleEndpointCreatorAddress(consoleSession.getConsoleEndpointCreatorAddress());
+        consoleSessionResponse.setClientAddress(consoleSession.getClientAddress());
+
+        Domain domain = ApiDBUtils.findDomainById(consoleSession.getDomainId());
+        if (domain != null) {
+            consoleSessionResponse.setDomain(domain.getName());
+            consoleSessionResponse.setDomainPath(domain.getPath());
+            consoleSessionResponse.setDomainId(domain.getUuid());
+        }

Review Comment:
   Done!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3057364128

   @DaanHoogland a [LL] Trillian-Jenkins test job (ubuntu22 mgmt + kvm-ubuntu22) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053450975

   @nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2190030790


##########
api/src/main/java/org/apache/cloudstack/api/ApiConstants.java:
##########
@@ -252,6 +255,7 @@ public class ApiConstants {
     public static final String HYPERVISOR = "hypervisor";
     public static final String INLINE = "inline";
     public static final String INSTANCE = "instance";
+    public static final String INSTANCE_ID = "instance_id";

Review Comment:
   Hi @bernardodemarco there is a mismatch between this parameter value and the autocompletion cmk PR name (`instance_id` vs `instanceid`). For simplicity, can this value be changed to `instanceid`?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144352762

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti merged PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3106615616

   This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2180069759


##########
server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java:
##########
@@ -181,6 +194,78 @@ private void reallyRun() {
         }
     }
 
+    @Override
+    public ListResponse<ConsoleSessionResponse> listConsoleSessions(ListConsoleSessionsCmd cmd) {
+        Pair<List<ConsoleSessionVO>, Integer> consoleSessions = listConsoleSessionsInternal(cmd);
+        ListResponse<ConsoleSessionResponse> response = new ListResponse<>();
+
+        ResponseObject.ResponseView responseView = ResponseObject.ResponseView.Restricted;
+        Long callerId = CallContext.current().getCallingAccountId();
+        if (accountManager.isRootAdmin(callerId)) {
+            responseView = ResponseObject.ResponseView.Full;
+        }
+
+        List<ConsoleSessionResponse> consoleSessionResponses = new ArrayList<>();
+        for (ConsoleSessionVO consoleSession : consoleSessions.first()) {
+            ConsoleSessionResponse consoleSessionResponse = responseGenerator.createConsoleSessionResponse(consoleSession, responseView);
+            consoleSessionResponses.add(consoleSessionResponse);
+        }
+
+        response.setResponses(consoleSessionResponses, consoleSessions.second());
+        return response;
+    }
+
+    protected Pair<List<ConsoleSessionVO>, Integer> listConsoleSessionsInternal(ListConsoleSessionsCmd cmd) {
+        CallContext caller = CallContext.current();
+        long domainId = getBaseDomainIdToListConsoleSessions(cmd.getDomainId());
+        Long accountId = cmd.getAccountId();
+        Long userId = cmd.getUserId();
+        boolean isRecursive = cmd.isRecursive();
+
+        boolean isCallerNormalUser = accountManager.isNormalUser(caller.getCallingAccountId());
+        if (isCallerNormalUser) {
+            accountId = caller.getCallingAccountId();
+            userId = caller.getCallingUserId();
+        }
+
+        List<Long> domainIds = isRecursive ? domainDao.getDomainAndChildrenIds(domainId) : List.of(domainId);
+
+        return consoleSessionDao.listConsoleSessions(cmd.getId(), domainIds, accountId, userId,
+                cmd.getHostId(), cmd.getStartDate(), cmd.getEndDate(), cmd.getInstanceId(),
+                cmd.getConsoleEndpointCreatorAddress(), cmd.getClientAddress(), cmd.isActiveOnly(),
+                cmd.getPageSizeVal(), cmd.getStartIndex());
+    }
+
+    /**
+     * Determines the base domain ID for listing console sessions.
+     *
+     * If no domain ID is provided, returns the caller's domain ID. Otherwise,
+     * checks if the caller has access to that domain and returns the provided domain ID.
+     *
+     * @param domainId The domain ID to check, can be null
+     * @return The base domain ID to use for listing console sessions
+     * @throws PermissionDeniedException if the caller does not have access to the specified domain
+     */
+    protected long getBaseDomainIdToListConsoleSessions(Long domainId) {
+        Account caller = CallContext.current().getCallingAccount();
+        if (domainId == null) {
+            return caller.getDomainId();
+        }
+
+        Domain domain = domainDao.findById(domainId);
+        if (domain == null) {
+            throw new InvalidParameterValueException(String.format("Unable to find domain with ID [%s]. Verify the informed domain and try again.", domainId));
+        }
+
+        accountManager.checkAccess(caller, domain);
+        return domainId;
+    }
+
+    @Override
+    public ConsoleSession listConsoleSessionById(long id) {
+        return consoleSessionDao.findByIdIncludingRemoved(id);
+    }

Review Comment:
   @JoaoJandre thanks for your review.
   
   Yes, it is necessary. The method is currently being used by the `ListConsoleSessionsCmd` class in the `getEntityOwnerId()` method to retrieve the account associated with a console session. The API layer does not have direct access to the DAO/engine layer. Thus, the `listConsoleSessionById` method was introduced in the `ConsoleAccessManagerImpl` class to enable the communication between these two layers.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3028048725

   > I have only one minor request: instance_id is not autocompleting on cmk, can this autocompletion be added?
   
   @nvazquez, I've just created the https://github.com/apache/cloudstack-cloudmonkey/pull/162 PR to add autocomplete support for the `instanceid` parameter.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3132484276

   @shwstppr, @winterhazel, @sureshanaparti, @nvazquez as suggested, I renamed the `instanceid` parameter to `virtualmachineid` and the `instanceid` and `instancename` response attributes to, respectively, `virtualmachineid` and `virtualmachinename`.
   
   Therefore, I'll close the https://github.com/apache/cloudstack-cloudmonkey/pull/162 PR, that intended to add autocomplete support for the `instanceid` parameter, which is not required anymore.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000069265

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000558210

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 13898


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3017962885

   @blueorangutan test


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3139339520

   Verified the API to list console sessions in KVM environment.
   
   ```
   (localcloud) 🐱 > list consolesessions 
   (localcloud) 🐱 > list consolesessions 
   {
     "consolesession": [
       {
         "account": "admin",
         "accountid": "f291196f-6dd7-11f0-b84c-1e004200016b",
         "acquired": "2025-07-31T10:05:13+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "created": "2025-07-31T10:05:10+0000",
         "domain": "ROOT",
         "domainid": "a1911ee0-6dd7-11f0-b84c-1e004200016b",
         "domainpath": "/",
         "hostid": "b09dafe1-d866-4f51-bdd8-a6053702b9b6",
         "hostname": "pr11016-t13982-kvm-ol8-kvm2",
         "id": "870ed27a-4852-4fb3-a37d-c4c10a1d202f",
         "instanceid": "e6ac5d5b-a59a-4b68-9141-1b5fc265c2c4",
         "instancename": "s-2-VM",
         "user": "admin",
         "userid": "f2922123-6dd7-11f0-b84c-1e004200016b"
       },
       {
         "account": "admin",
         "accountid": "f291196f-6dd7-11f0-b84c-1e004200016b",
         "acquired": "2025-07-31T10:05:13+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "created": "2025-07-31T10:05:07+0000",
         "domain": "ROOT",
         "domainid": "a1911ee0-6dd7-11f0-b84c-1e004200016b",
         "domainpath": "/",
         "hostid": "b09dafe1-d866-4f51-bdd8-a6053702b9b6",
         "hostname": "pr11016-t13982-kvm-ol8-kvm2",
         "id": "b12f34dc-8573-43e0-9826-5e7f490139f1",
         "instanceid": "e7263a96-6fe9-48e5-84b1-8afdc3edf339",
         "instancename": "v-1-VM",
         "user": "admin",
         "userid": "f2922123-6dd7-11f0-b84c-1e004200016b"
       }
     ],
     "count": 2
   }
   (localcloud) 🐱 >
   (localcloud) 🐱 > list consolesessions filter=id,instanceid,instancename,consoleendpointcreatoraddress,clientaddress,acquired
   (localcloud) 🐱 > 
   (localcloud) 🐱 > list consolesessions filter=id,instanceid,instancename,consoleendpointcreatoraddress,clientaddress,acquired
   {
     "consolesession": [
       {
         "acquired": "2025-07-31T10:08:05+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "6ba3eb33-cf0f-4766-b526-77d2fa1176e7",
         "instanceid": "e6ac5d5b-a59a-4b68-9141-1b5fc265c2c4",
         "instancename": "s-2-VM"
       },
       {
         "acquired": "2025-07-31T10:08:00+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "2f274b86-62cf-4982-97ee-9de499c552bb",
         "instanceid": "e7263a96-6fe9-48e5-84b1-8afdc3edf339",
         "instancename": "v-1-VM"
       }
     ],
     "count": 2
   }
   (localcloud) 🐱 > list consolesessions filter=id,instanceid,instancename,consoleendpointcreatoraddress,clientaddress,acquired
   {
     "consolesession": [
       {
         "acquired": "2025-07-31T10:08:28+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "2443028e-843a-40c3-b6b0-b0ea48317dd5",
         "instanceid": "f0aa8afc-ee41-4215-b105-343c51d3e841",
         "instancename": "i-2-6-VM"
       },
       {
         "acquired": "2025-07-31T10:08:23+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "10bc7178-7ee9-4e0f-b47c-fdc25f1e296d",
         "instanceid": "cc9779d4-a3e1-44d8-9a5f-e8fd7f3a6ce1",
         "instancename": "i-2-5-VM"
       },
       {
         "acquired": "2025-07-31T10:08:17+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "5d0e4378-7df7-418f-bfb4-2b77d0468c35",
         "instanceid": "38564c6f-fa16-4d57-8774-ab19f5ea73dd",
         "instancename": "i-2-3-VM"
       }
     ],
     "count": 3
   }
   (localcloud) 🐱 > list consolesessions filter=id,instanceid,instancename,consoleendpointcreatoraddress,clientaddress,acquired
   {
     "consolesession": [
       {
         "acquired": "2025-07-31T10:08:49+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "5a38aeca-1d28-401d-a480-c56fb1852392",
         "instanceid": "d44e6ef5-4a32-491e-8864-afca7ad770b0",
         "instancename": "r-4-VM"
       },
       {
         "acquired": "2025-07-31T10:08:42+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "3c2b1fe8-ac7b-4206-803f-381996ad62d6",
         "instanceid": "e6ac5d5b-a59a-4b68-9141-1b5fc265c2c4",
         "instancename": "s-2-VM"
       },
       {
         "acquired": "2025-07-31T10:08:38+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "061c69bd-ff83-4565-abc6-38e3d8eba7ba",
         "instanceid": "e7263a96-6fe9-48e5-84b1-8afdc3edf339",
         "instancename": "v-1-VM"
       },
       {
         "acquired": "2025-07-31T10:08:28+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "2443028e-843a-40c3-b6b0-b0ea48317dd5",
         "instanceid": "f0aa8afc-ee41-4215-b105-343c51d3e841",
         "instancename": "i-2-6-VM"
       },
       {
         "acquired": "2025-07-31T10:08:23+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "10bc7178-7ee9-4e0f-b47c-fdc25f1e296d",
         "instanceid": "cc9779d4-a3e1-44d8-9a5f-e8fd7f3a6ce1",
         "instancename": "i-2-5-VM"
       },
       {
         "acquired": "2025-07-31T10:08:17+0000",
         "clientaddress": "10.0.3.251",
         "consoleendpointcreatoraddress": "10.0.3.251",
         "id": "5d0e4378-7df7-418f-bfb4-2b77d0468c35",
         "instanceid": "38564c6f-fa16-4d57-8774-ab19f5ea73dd",
         "instancename": "i-2-3-VM"
       }
     ],
     "count": 6
   }
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3134903481

   @sureshanaparti a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3132882158

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14442


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3068398731

   @blueorangutan test ubuntu22 kvm-ubuntu22


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3036212285

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3073146273

   btw, I think this PR is good to merge, @sureshanaparti !?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3115095898

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14358


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3116324480

   <b>[SF] Trillian test result (tid-13875)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 62223 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13875-kvm-ol8.zip
   Smoke tests completed. 136 look OK, 6 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   ContextSuite context=TestAccounts>:setup | `Error` | 0.00 | test_accounts.py
   ContextSuite context=TestAddVmToSubDomain>:setup | `Error` | 0.00 | test_accounts.py
   test_DeleteDomain | `Error` | 13.88 | test_accounts.py
   test_forceDeleteDomain | `Failure` | 13.95 | test_accounts.py
   ContextSuite context=TestRemoveUserFromAccount>:setup | `Error` | 16.33 | test_accounts.py
   ContextSuite context=TestTemplateHierarchy>:setup | `Error` | 17.28 | test_accounts.py
   ContextSuite context=TestInternalLb>:setup | `Error` | 0.00 | test_internal_lb.py
   test_07_arping_in_vr | `Failure` | 5.24 | test_diagnostics.py
   test_13_retrieve_vr_default_files | `Error` | 1.14 | test_diagnostics.py
   test_14_retrieve_vr_one_file | `Error` | 1.14 | test_diagnostics.py
   test_15_retrieve_ssvm_default_files | `Error` | 1.13 | test_diagnostics.py
   test_16_retrieve_ssvm_single_file | `Error` | 1.15 | test_diagnostics.py
   test_17_retrieve_cpvm_default_files | `Error` | 1.14 | test_diagnostics.py
   test_18_retrieve_cpvm_single_file | `Error` | 1.13 | test_diagnostics.py
   test_01_browser_migrate_template | `Error` | 65.75 | test_image_store_object_migration.py
   ContextSuite context=TestKubernetesCluster>:teardown | `Error` | 233.82 | test_kubernetes_clusters.py
   ContextSuite context=TestListIdsParams>:teardown | `Error` | 1.18 | test_list_ids_parameter.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2967875240

   Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 13755


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2978672565

   <b>[SF] Trillian test result (tid-13531)</b>
   Environment: vmware-70u3 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 64089 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13531-vmware-70u3.zip
   Smoke tests completed. 140 look OK, 1 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   test_01_prepare_and_cancel_maintenance | `Error` | 0.23 | test_ms_maintenance_and_safe_shutdown.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2967757224

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2971453396

   Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 13771


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3056259037

   @blueorangutan test ubuntu24 kvm-ubuntu24 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3040862854

   <b>[SF] Trillian test result (tid-13691)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 53149 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13691-kvm-ol8.zip
   Smoke tests completed. 141 look OK, 0 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2972604668

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 13777


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2975358562

   @blueorangutan test ol8 vmware-70u3 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2973023463

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000148811

   @DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000064263

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000668063

   > Hi @bernardodemarco thanks for the feature! I'll try to test it soon
   
   @nvazquez okay, many thanks for the review! I'll apply this suggestion https://github.com/apache/cloudstack/pull/11016#discussion_r2163995966 ASAP


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112827439

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14340


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112840072

   @sureshanaparti a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3073144444

   we have no more credits with github to upload files. We’l have to find ways to auto-clean them to keep working as we were used to. sorry @bernardodemarco 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3138672897

   <b>[SF] Trillian test result (tid-13967)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 85837 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13967-kvm-ol8.zip
   Smoke tests completed. 139 look OK, 6 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   ContextSuite context=TestVPCRedundancy>:setup | `Error` | 0.00 | test_vpc_redundant.py
   ContextSuite context=TestISOUsage>:setup | `Error` | 0.00 | test_usage.py
   test_01_snapshot_usage | `Error` | 3.23 | test_usage.py
   test_10_attachAndDetach_iso | `Failure` | 1512.86 | test_vm_life_cycle.py
   ContextSuite context=TestMigrateVMStrictTags>:setup | `Error` | 0.00 | test_vm_strict_host_tags.py
   ContextSuite context=TestRestoreVMStrictTags>:setup | `Error` | 0.00 | test_vm_strict_host_tags.py
   ContextSuite context=TestScaleVMStrictTags>:setup | `Error` | 0.00 | test_vm_strict_host_tags.py
   ContextSuite context=TestVMDeploymentPlannerStrictTags>:setup | `Error` | 0.00 | test_vm_strict_host_tags.py
   test_06_download_detached_volume | `Error` | 307.22 | test_volumes.py
   test_13_migrate_volume_and_change_offering | `Error` | 129.37 | test_volumes.py
   ContextSuite context=TestIpv6Vpc>:setup | `Error` | 0.00 | test_vpc_ipv6.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3027899543

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3028883288

   @blueorangutan test keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3031903243

   <b>[SF] Trillian test result (tid-13663)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 58048 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13663-kvm-ol8.zip
   Smoke tests completed. 140 look OK, 1 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   test_02_enableHumanReadableLogs | `Error` | 0.26 | test_human_readable_logs.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3036211224

   @JoaoJandre, thanks for testing!
   
   I have just applied these suggestions https://github.com/apache/cloudstack/pull/11016#discussion_r2182778119. 
   
   Now, the `startdate` and `enddate` API parameters are compared to the `created` attribute of console sessions, see 90b09eac9964e3680bd81d292f88f74f70b8152e. Additionally, the `acquired` parameter has been introduced, see 475460e95d0c9045a52babdd49f26795605ffe82. It is responsible for listing only acquired sessions, that is, sessions that have been accessed. The `activeonly` parameter has precedence over the `acquired` parameter. Thus, when `activeonly` is `true`, the value of `acquired` is ignored.
   
   Therefore:
   
   - when executing `list consolesessions isrecursive=true`, all active console sessions (acquired and not removed) are listed;
   - when executing `list consolesessions isrecursive=true activeonly=false`, all console sessions are listed;
   - when executing `list consolesessions isrecursive=true activeonly=false acquired=true`, all acquired console sessions (only marked as acquired in the DB) are listed; and,
   - when executing `list consolesessions isrecursive=true activeonly=true acquired=true`, all active console sessions are listed. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2194929176


##########
api/src/main/java/org/apache/cloudstack/api/ApiConstants.java:
##########
@@ -252,6 +255,7 @@ public class ApiConstants {
     public static final String HYPERVISOR = "hypervisor";
     public static final String INLINE = "inline";
     public static final String INSTANCE = "instance";
+    public static final String INSTANCE_ID = "instance_id";

Review Comment:
   Done!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053337352

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✖️ debian ✔️ suse15. SL-JID 14122


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "JoaoJandre (via GitHub)" <gi...@apache.org>.
JoaoJandre commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3044612318

   @nvazquez do you have any concerns regarding this PR? Or may we merge it?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2967754430

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "shwstppr (via GitHub)" <gi...@apache.org>.
shwstppr commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2227836253


##########
api/src/main/java/org/apache/cloudstack/api/command/user/consoleproxy/ListConsoleSessionsCmd.java:
##########
@@ -0,0 +1,182 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.import org.apache.cloudstack.context.CallContext;
+package org.apache.cloudstack.api.command.user.consoleproxy;
+
+import org.apache.cloudstack.consoleproxy.ConsoleSession;
+
+import com.cloud.user.Account;
+import com.cloud.user.AccountService;
+import com.cloud.user.UserAccount;
+import org.apache.cloudstack.acl.RoleType;
+import org.apache.cloudstack.api.ACL;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseListCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.ConsoleSessionResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+import org.apache.cloudstack.api.response.HostResponse;
+import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.UserVmResponse;
+import org.apache.cloudstack.consoleproxy.ConsoleAccessManager;
+
+import javax.inject.Inject;
+import java.util.Date;
+
+@APICommand(name = "listConsoleSessions", description = "Lists console sessions.", responseObject = ConsoleSessionResponse.class,
+        entityType = {ConsoleSession.class}, since = "4.21.0",
+        requestHasSensitiveInfo = false, responseHasSensitiveInfo = false,
+        authorized = {RoleType.Admin, RoleType.DomainAdmin, RoleType.ResourceAdmin, RoleType.User})
+public class ListConsoleSessionsCmd extends BaseListCmd {
+    @Inject
+    private AccountService accountService;
+
+    @Inject
+    private ConsoleAccessManager consoleAccessManager;
+
+    @ACL
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = ConsoleSessionResponse.class, description = "The ID of the console session.")
+    private Long id;
+
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, entityType = DomainResponse.class, description = "The domain ID of the account that created the console endpoint.")
+    private Long domainId;
+
+    @ACL
+    @Parameter(name = ApiConstants.ACCOUNT_ID, type = CommandType.UUID, entityType = AccountResponse.class, description = "The ID of the account that created the console endpoint.")
+    private Long accountId;
+
+    @ACL
+    @Parameter(name = ApiConstants.USER_ID, type = CommandType.UUID, entityType = UserResponse.class, description = "The ID of the user that created the console endpoint.")
+    private Long userId;
+
+    @Parameter(name = ApiConstants.HOST_ID, type = CommandType.UUID, entityType = HostResponse.class, authorized = {RoleType.Admin}, description = "Lists console sessions from the specified host.")
+    private Long hostId;
+
+    @Parameter(name = ApiConstants.START_DATE, type = CommandType.DATE, description = "Lists console sessions generated from this date onwards. " +
+            ApiConstants.PARAMETER_DESCRIPTION_START_DATE_POSSIBLE_FORMATS)
+    private Date startDate;
+
+    @Parameter(name = ApiConstants.END_DATE, type = CommandType.DATE, description = "Lists console sessions generated up until this date. " +
+            ApiConstants.PARAMETER_DESCRIPTION_END_DATE_POSSIBLE_FORMATS)
+    private Date endDate;
+
+    @Parameter(name = ApiConstants.INSTANCE_ID, type = CommandType.UUID, entityType = UserVmResponse.class, description = "The ID of the instance.")

Review Comment:
   @bernardodemarco curious, why not name the parameter virtualmachineid as some of the other APIs already use that?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2239612127


##########
api/src/main/java/org/apache/cloudstack/api/command/user/consoleproxy/ListConsoleSessionsCmd.java:
##########
@@ -0,0 +1,182 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.import org.apache.cloudstack.context.CallContext;
+package org.apache.cloudstack.api.command.user.consoleproxy;
+
+import org.apache.cloudstack.consoleproxy.ConsoleSession;
+
+import com.cloud.user.Account;
+import com.cloud.user.AccountService;
+import com.cloud.user.UserAccount;
+import org.apache.cloudstack.acl.RoleType;
+import org.apache.cloudstack.api.ACL;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseListCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.ConsoleSessionResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+import org.apache.cloudstack.api.response.HostResponse;
+import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.UserVmResponse;
+import org.apache.cloudstack.consoleproxy.ConsoleAccessManager;
+
+import javax.inject.Inject;
+import java.util.Date;
+
+@APICommand(name = "listConsoleSessions", description = "Lists console sessions.", responseObject = ConsoleSessionResponse.class,
+        entityType = {ConsoleSession.class}, since = "4.21.0",
+        requestHasSensitiveInfo = false, responseHasSensitiveInfo = false,
+        authorized = {RoleType.Admin, RoleType.DomainAdmin, RoleType.ResourceAdmin, RoleType.User})
+public class ListConsoleSessionsCmd extends BaseListCmd {
+    @Inject
+    private AccountService accountService;
+
+    @Inject
+    private ConsoleAccessManager consoleAccessManager;
+
+    @ACL
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = ConsoleSessionResponse.class, description = "The ID of the console session.")
+    private Long id;
+
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, entityType = DomainResponse.class, description = "The domain ID of the account that created the console endpoint.")
+    private Long domainId;
+
+    @ACL
+    @Parameter(name = ApiConstants.ACCOUNT_ID, type = CommandType.UUID, entityType = AccountResponse.class, description = "The ID of the account that created the console endpoint.")
+    private Long accountId;
+
+    @ACL
+    @Parameter(name = ApiConstants.USER_ID, type = CommandType.UUID, entityType = UserResponse.class, description = "The ID of the user that created the console endpoint.")
+    private Long userId;
+
+    @Parameter(name = ApiConstants.HOST_ID, type = CommandType.UUID, entityType = HostResponse.class, authorized = {RoleType.Admin}, description = "Lists console sessions from the specified host.")
+    private Long hostId;
+
+    @Parameter(name = ApiConstants.START_DATE, type = CommandType.DATE, description = "Lists console sessions generated from this date onwards. " +
+            ApiConstants.PARAMETER_DESCRIPTION_START_DATE_POSSIBLE_FORMATS)
+    private Date startDate;
+
+    @Parameter(name = ApiConstants.END_DATE, type = CommandType.DATE, description = "Lists console sessions generated up until this date. " +
+            ApiConstants.PARAMETER_DESCRIPTION_END_DATE_POSSIBLE_FORMATS)
+    private Date endDate;
+
+    @Parameter(name = ApiConstants.INSTANCE_ID, type = CommandType.UUID, entityType = UserVmResponse.class, description = "The ID of the instance.")

Review Comment:
   > I think that this was just to match the database.
   
   Yes, exactly
   
   > I agree that it would be better to match the other APIs instead, both in the command and in the response
   
   Yes, I agree. I'll rename the API parameter and the API response attribute



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3106655817

   > @sureshanaparti, can we merge this one?
   
   @bernardodemarco can you check/resolve conflicts


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000136982

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3003720166

   @blueorangutan test ol8 vmware-70u3 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2163979751


##########
api/src/main/java/org/apache/cloudstack/api/command/user/consoleproxy/ListConsoleSessionsCmd.java:
##########
@@ -0,0 +1,173 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.import org.apache.cloudstack.context.CallContext;
+package org.apache.cloudstack.api.command.user.consoleproxy;
+
+import org.apache.cloudstack.consoleproxy.ConsoleSession;
+
+import com.cloud.user.Account;
+import com.cloud.user.AccountService;
+import com.cloud.user.UserAccount;
+import org.apache.cloudstack.acl.RoleType;
+import org.apache.cloudstack.api.ACL;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseListCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.ConsoleSessionResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+import org.apache.cloudstack.api.response.HostResponse;
+import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.UserVmResponse;
+import org.apache.cloudstack.consoleproxy.ConsoleAccessManager;
+
+import javax.inject.Inject;
+import java.util.Date;
+
+@APICommand(name = "listConsoleSessions", description = "Lists console sessions.", responseObject = ConsoleSessionResponse.class,
+        entityType = {ConsoleSession.class}, since = "4.21.0",
+        requestHasSensitiveInfo = false, responseHasSensitiveInfo = false,
+        authorized = {RoleType.Admin, RoleType.DomainAdmin, RoleType.ResourceAdmin, RoleType.User})
+public class ListConsoleSessionsCmd extends BaseListCmd {
+    @Inject
+    private AccountService accountService;
+
+    @Inject
+    private ConsoleAccessManager consoleAccessManager;
+
+    @ACL
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = ConsoleSessionResponse.class, description = "The ID of the console session.")
+    private Long id;
+
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, entityType = DomainResponse.class, description = "The domain ID of the account that created the console endpoint.")
+    private Long domainId;
+
+    @ACL
+    @Parameter(name = ApiConstants.ACCOUNT_ID, type = CommandType.UUID, entityType = AccountResponse.class, description = "The ID of the account that created the console endpoint.")
+    private Long accountId;
+
+    @ACL
+    @Parameter(name = ApiConstants.USER_ID, type = CommandType.UUID, entityType = UserResponse.class, description = "The ID of the user that created the console endpoint.")
+    private Long userId;
+
+    @Parameter(name = ApiConstants.HOST_ID, type = CommandType.UUID, entityType = HostResponse.class, authorized = {RoleType.Admin}, description = "Lists console sessions from the specified host.")
+    private Long hostId;
+
+    @Parameter(name = ApiConstants.START_DATE, type = CommandType.DATE, description = "Lists console sessions acquired from this date onwards. " +
+            ApiConstants.PARAMETER_DESCRIPTION_START_DATE_POSSIBLE_FORMATS)
+    private Date startDate;
+
+    @Parameter(name = ApiConstants.END_DATE, type = CommandType.DATE, description = "Lists console sessions acquired up until this date. " +
+            ApiConstants.PARAMETER_DESCRIPTION_END_DATE_POSSIBLE_FORMATS)
+    private Date endDate;
+
+    @Parameter(name = ApiConstants.INSTANCE_ID, type = CommandType.UUID, entityType = UserVmResponse.class, description = "The ID of the instance.")
+    private Long instanceId;
+
+    @Parameter(name = ApiConstants.CONSOLE_ENDPOINT_CREATOR_ADDRESS, type = CommandType.STRING, description = "IP address of the creator of the console endpoint.")
+    private String consoleEndpointCreatorAddress;
+
+    @Parameter(name = ApiConstants.CLIENT_ADDRESS, type = CommandType.STRING, description = "IP address of the client that accessed the console session.")
+    private String clientAddress;
+
+    @Parameter(name = ApiConstants.ACTIVE_ONLY, type = CommandType.BOOLEAN,
+            description = "Lists only active console sessions, defaults to true. Active sessions are the ones that have been acquired and have not been removed.")
+    private boolean activeOnly = true;
+
+    @Parameter(name = ApiConstants.IS_RECURSIVE, type = CommandType.BOOLEAN, since = "4.20.0.1-scclouds",

Review Comment:
   ```suggestion
       @Parameter(name = ApiConstants.IS_RECURSIVE, type = CommandType.BOOLEAN,
   ```



##########
server/src/main/java/com/cloud/api/ApiResponseHelper.java:
##########
@@ -5550,4 +5552,48 @@ public void updateTemplateIsoResponsesForIcons(List<TemplateResponse> responses,
             response.setResourceIconResponse(iconResponse);
         }
     }
+
+    @Override
+    public ConsoleSessionResponse createConsoleSessionResponse(ConsoleSession consoleSession, ResponseView responseView) {
+        ConsoleSessionResponse consoleSessionResponse = new ConsoleSessionResponse();
+        consoleSessionResponse.setId(consoleSession.getUuid());
+        consoleSessionResponse.setCreated(consoleSession.getCreated());
+        consoleSessionResponse.setAcquired(consoleSession.getAcquired());
+        consoleSessionResponse.setRemoved(consoleSession.getRemoved());
+        consoleSessionResponse.setConsoleEndpointCreatorAddress(consoleSession.getConsoleEndpointCreatorAddress());
+        consoleSessionResponse.setClientAddress(consoleSession.getClientAddress());
+
+        Domain domain = ApiDBUtils.findDomainById(consoleSession.getDomainId());
+        if (domain != null) {
+            consoleSessionResponse.setDomain(domain.getName());
+            consoleSessionResponse.setDomainPath(domain.getPath());
+            consoleSessionResponse.setDomainId(domain.getUuid());
+        }

Review Comment:
   Can this be extracted to a new method which also checks for NPE on consoleSession? Same for user, account and host setters below



##########
server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java:
##########
@@ -181,6 +194,83 @@ private void reallyRun() {
         }
     }
 
+    @Override
+    public ListResponse<ConsoleSessionResponse> listConsoleSessions(ListConsoleSessionsCmd cmd) {
+        Pair<List<ConsoleSessionVO>, Integer> consoleSessions = listConsoleSessionsInternal(cmd);
+        ListResponse<ConsoleSessionResponse> response = new ListResponse<>();
+
+        ResponseObject.ResponseView responseView = ResponseObject.ResponseView.Restricted;
+        Long callerId = CallContext.current().getCallingAccountId();
+        if (accountManager.isRootAdmin(callerId)) {
+            responseView = ResponseObject.ResponseView.Full;
+        }
+
+        List<ConsoleSessionResponse> consoleSessionResponses = new ArrayList<>();
+        for (ConsoleSessionVO consoleSession : consoleSessions.first()) {
+            ConsoleSessionResponse consoleSessionResponse = responseGenerator.createConsoleSessionResponse(consoleSession, responseView);
+            consoleSessionResponses.add(consoleSessionResponse);
+        }
+
+        response.setResponses(consoleSessionResponses, consoleSessions.second());
+        return response;
+    }
+
+    protected Pair<List<ConsoleSessionVO>, Integer> listConsoleSessionsInternal(ListConsoleSessionsCmd cmd) {
+        CallContext caller = CallContext.current();
+        long domainId = getBaseDomainIdToListConsoleSessions(cmd.getDomainId());
+        Long accountId = cmd.getAccountId();
+        Long userId = cmd.getUserId();
+        boolean isRecursive = cmd.isRecursive();
+
+        boolean isCallerNormalUser = accountManager.isNormalUser(caller.getCallingAccountId());
+        if (isCallerNormalUser) {
+            accountId = caller.getCallingAccountId();
+            userId = caller.getCallingUserId();
+        }
+
+        List<Long> domainIds;
+        if (isRecursive) {
+            domainIds = domainDao.getDomainAndChildrenIds(domainId);
+        } else {
+            domainIds = List.of(domainId);
+        }

Review Comment:
   ```suggestion
           List<Long> domainIds = isRecursive ? domainDao.getDomainAndChildrenIds(domainId) : List.of(domainId);
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3079218278

   @sureshanaparti, can we merge this one?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3072985673

   <b>[SF] Trillian test result (tid-13766)</b>
   Environment: kvm-ubuntu22 (x2), Advanced Networking with Mgmt server u22
   Total time taken: 89291 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13766-kvm-ubuntu22.zip
   Smoke tests completed. 130 look OK, 11 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   test_nic_secondaryip_add_remove | `Error` | 1518.38 | test_multipleips_per_nic.py
   ContextSuite context=TestNestedVirtualization>:setup | `Error` | 0.00 | test_nested_virtualization.py
   ContextSuite context=TestNetworkACL>:setup | `Error` | 0.00 | test_network_acl.py
   ContextSuite context=TestIpv6Network>:setup | `Error` | 0.00 | test_network_ipv6.py
   test_delete_account | `Error` | 1517.97 | test_network.py
   test_delete_network_while_vm_on_it | `Error` | 1.23 | test_network.py
   test_deploy_vm_l2network | `Error` | 1.25 | test_network.py
   test_l2network_restart | `Error` | 2.36 | test_network.py
   ContextSuite context=TestPortForwarding>:setup | `Error` | 3.73 | test_network.py
   ContextSuite context=TestPublicIP>:setup | `Error` | 11.89 | test_network.py
   test_reboot_router | `Failure` | 0.09 | test_network.py
   test_releaseIP | `Error` | 5.81 | test_network.py
   test_releaseIP_using_IP | `Error` | 5.98 | test_network.py
   ContextSuite context=TestRouterRules>:setup | `Error` | 6.06 | test_network.py
   ContextSuite context=TestSharedNetworkWithConfigDrive>:setup | `Error` | 1523.90 | test_network.py
   ContextSuite context=TestPrivateGwACL>:setup | `Error` | 0.00 | test_privategw_acl.py
   ContextSuite context=TestAdapterTypeForNic>:setup | `Error` | 0.00 | test_nic_adapter_type.py
   ContextSuite context=TestNonStrictAffinityGroups>:setup | `Error` | 0.00 | test_nonstrict_affinity_group.py
   ContextSuite context=TestIsolatedNetworksPasswdServer>:setup | `Error` | 0.00 | test_password_server.py
   ContextSuite context=TestPortForwardingRules>:setup | `Error` | 0.00 | test_portforwardingrules.py
   ContextSuite context=TestProjectSuspendActivate>:setup | `Error` | 1529.67 | test_projects.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3068404582

   @DaanHoogland a [SL] Trillian-Jenkins test job (ubuntu22 mgmt + kvm-ubuntu22) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3056372932

   <b>[SF] Trillian Build Failed (tid-13750)<b/>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3057351749

   @blueorangutan LLtest ubuntu24 kvm-ubuntu24 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3056261911

   @DaanHoogland a [SL] Trillian-Jenkins test job (ubuntu24 mgmt + kvm-ubuntu24) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2973673759

   <b>[SF] Trillian test result (tid-13527)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 54933 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13527-kvm-ol8.zip
   Smoke tests completed. 141 look OK, 0 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112340217

   @sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3114889764

   @winterhazel a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3134900691

   @blueorangutan test


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "sureshanaparti (via GitHub)" <gi...@apache.org>.
sureshanaparti commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144868245

   Verified list consolesessions API call with latest build, looks good.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000603002

   @blueorangutan test ol8 vmware-70u3 keepEnv


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "codecov[bot] (via GitHub)" <gi...@apache.org>.
codecov[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2967358585

   ## [Codecov](https://app.codecov.io/gh/apache/cloudstack/pull/11016?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
   All modified and coverable lines are covered by tests :white_check_mark:
   > Project coverage is 3.93%. Comparing base [(`2d669db`)](https://app.codecov.io/gh/apache/cloudstack/commit/2d669dbe5488a68fff1b05553dcf2ba8020d20b1?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) to head [(`44d43e7`)](https://app.codecov.io/gh/apache/cloudstack/commit/44d43e716df04d3e8f632f56a47a3688475c8aab?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
   
   > :exclamation:  There is a different number of reports uploaded between BASE (2d669db) and HEAD (44d43e7). Click for more details.
   > 
   > <details><summary>HEAD has 1 upload less than BASE</summary>
   >
   >| Flag | BASE (2d669db) | HEAD (44d43e7) |
   >|------|------|------|
   >|unittests|1|0|
   ></details>
   
   <details><summary>Additional details and impacted files</summary>
   
   
   ```diff
   @@              Coverage Diff              @@
   ##               main   #11016       +/-   ##
   =============================================
   - Coverage     16.60%    3.93%   -12.68%     
   =============================================
     Files          5730      412     -5318     
     Lines        508082    33447   -474635     
     Branches      61770     6020    -55750     
   =============================================
   - Hits          84388     1317    -83071     
   + Misses       414259    31975   -382284     
   + Partials       9435      155     -9280     
   ```
   
   | [Flag](https://app.codecov.io/gh/apache/cloudstack/pull/11016/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage Δ | |
   |---|---|---|
   | [uitests](https://app.codecov.io/gh/apache/cloudstack/pull/11016/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `3.93% <ø> (ø)` | |
   | [unittests](https://app.codecov.io/gh/apache/cloudstack/pull/11016/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   
   Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#carryforward-flags-in-the-pull-request-comment) to find out more.
   
   </details>
   
   [:umbrella: View full report in Codecov by Sentry](https://app.codecov.io/gh/apache/cloudstack/pull/11016?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).   
   :loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
   
   <details><summary> :rocket: New features to boost your workflow: </summary>
   
   - :snowflake: [Test Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, report on failures, and find test suite problems.
   - :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3053748880

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3057111018

   <b>[SF] Trillian test result (tid-13745)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 56103 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13745-kvm-ol8.zip
   Smoke tests completed. 140 look OK, 1 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   ContextSuite context=TestSharedNetwork>:setup | `Error` | 52.16 | test_network.py
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3052399701

   @nvazquez, thanks for testing it!
   
   > Have you faced this case before?
   
   I was able to reproduce a similar scenario. I kept a console session active and simulated a CPVM downtime, by manually stopping it. In this scenario, the Management Server does not recognize that the session has been removed (removed column remains indefinitely as `NULL`).
   
   >  I don't think it is an issue with this PR but perhaps there could be a mechanism to remove this kind of 'incorrect' console sessions from the API response
   
   Yes, this inconsistency would be out of scope of this PR. The `listConsoleSessions` API simply lists the sessions based on the metadata persisted in the DB. From my understanding, the only attributes that it can use to classify a session as active are the `acquired` and `removed` ones. Thus, I do not see a workaround for this besides fixing the root issue, that is the Management Server not recognizing when a session is released in certain scenarios. I will open a segregate issue for us to handle this.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3052417935

   > I will open a segregate issue for us to handle this.
   
   @nvazquez, I've just opened #11169 to address that


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "nvazquez (via GitHub)" <gi...@apache.org>.
nvazquez commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3044762907

   @bernardodemarco @JoaoJandre sorry I was on vacation last week, I'll post my review soon


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3002048104

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "JoaoJandre (via GitHub)" <gi...@apache.org>.
JoaoJandre commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2172567727


##########
server/src/main/java/com/cloud/api/ApiResponseHelper.java:
##########
@@ -5550,4 +5552,87 @@ public void updateTemplateIsoResponsesForIcons(List<TemplateResponse> responses,
             response.setResourceIconResponse(iconResponse);
         }
     }
+
+    private void populateDomainFieldsOnConsoleSessionResponse(ConsoleSession consoleSession, ConsoleSessionResponse consoleSessionResponse) {
+        if (consoleSession == null) {
+            return;
+        }
+
+        Domain domain = ApiDBUtils.findDomainById(consoleSession.getDomainId());
+        if (domain != null) {
+            consoleSessionResponse.setDomain(domain.getName());
+            consoleSessionResponse.setDomainPath(domain.getPath());
+            consoleSessionResponse.setDomainId(domain.getUuid());
+        }
+    }
+
+    private void populateUserFieldsOnConsoleSessionResponse(ConsoleSession consoleSession, ConsoleSessionResponse consoleSessionResponse) {
+        if (consoleSession == null) {
+            return;
+        }
+
+        User user = findUserById(consoleSession.getUserId());
+        if (user != null) {
+            consoleSessionResponse.setUser(user.getUsername());
+            consoleSessionResponse.setUserId(user.getUuid());
+        }
+    }
+
+    private void populateAccountFieldsOnConsoleSessionResponse(ConsoleSession consoleSession, ConsoleSessionResponse consoleSessionResponse) {
+        if (consoleSession == null) {
+            return;
+        }
+
+        Account account = ApiDBUtils.findAccountById(consoleSession.getAccountId());
+        if (account != null) {
+            consoleSessionResponse.setAccount(account.getAccountName());
+            consoleSessionResponse.setAccountId(account.getUuid());
+        }
+    }
+
+    private void populateHostFieldsOnConsoleSessionResponse(ConsoleSession consoleSession, ConsoleSessionResponse consoleSessionResponse) {
+        if (consoleSession == null) {
+            return;
+        }
+
+        Host host = findHostById(consoleSession.getHostId());
+        if (host != null) {
+            consoleSessionResponse.setHostId(host.getUuid());
+            consoleSessionResponse.setHostName(host.getName());
+        }
+    }
+
+    private void populateInstanceFieldsOnConsoleSessionResponse(ConsoleSession consoleSession, ConsoleSessionResponse consoleSessionResponse) {
+        if (consoleSession == null) {
+            return;
+        }
+
+        VMInstanceVO instance = ApiDBUtils.findVMInstanceById(consoleSession.getInstanceId());
+        if (instance != null) {
+            consoleSessionResponse.setInstanceId(instance.getUuid());
+            consoleSessionResponse.setInstanceName(instance.getInstanceName());
+        }
+    }
+
+    @Override
+    public ConsoleSessionResponse createConsoleSessionResponse(ConsoleSession consoleSession, ResponseView responseView) {
+        ConsoleSessionResponse consoleSessionResponse = new ConsoleSessionResponse();
+        consoleSessionResponse.setId(consoleSession.getUuid());
+        consoleSessionResponse.setCreated(consoleSession.getCreated());
+        consoleSessionResponse.setAcquired(consoleSession.getAcquired());
+        consoleSessionResponse.setRemoved(consoleSession.getRemoved());
+        consoleSessionResponse.setConsoleEndpointCreatorAddress(consoleSession.getConsoleEndpointCreatorAddress());
+        consoleSessionResponse.setClientAddress(consoleSession.getClientAddress());
+
+        populateDomainFieldsOnConsoleSessionResponse(consoleSession, consoleSessionResponse);
+        populateUserFieldsOnConsoleSessionResponse(consoleSession, consoleSessionResponse);
+        populateAccountFieldsOnConsoleSessionResponse(consoleSession, consoleSessionResponse);
+        populateInstanceFieldsOnConsoleSessionResponse(consoleSession, consoleSessionResponse);

Review Comment:
   Instead of having to check if the console session is null inside every one of these methods, we could check it before calling all of them.



##########
engine/schema/src/main/java/com/cloud/vm/dao/ConsoleSessionDaoImpl.java:
##########
@@ -80,4 +82,59 @@ public int expungeByVmList(List<Long> vmIds, Long batchSize) {
         sc.setParameters("vmIds", vmIds.toArray());
         return batchExpunge(sc, batchSize);
     }
+
+    @Override
+    public Pair<List<ConsoleSessionVO>, Integer> listConsoleSessions(Long id, List<Long> domainIds, Long accountId, Long userId, Long hostId,
+                                                                     Date startDate, Date endDate, Long instanceId,
+                                                                     String consoleEndpointCreatorAddress, String clientAddress,
+                                                                     boolean activeOnly, Long pageSizeVal, Long startIndex) {
+        Filter filter = new Filter(ConsoleSessionVO.class, "created", false, startIndex, pageSizeVal);
+        SearchCriteria<ConsoleSessionVO> searchCriteria = createListConsoleSessionsSearchCriteria(id, domainIds, accountId, userId, hostId,
+                startDate, endDate, instanceId, consoleEndpointCreatorAddress, clientAddress, activeOnly);
+
+        return searchAndCount(searchCriteria, filter, true);
+    }
+
+    private SearchCriteria<ConsoleSessionVO> createListConsoleSessionsSearchCriteria(Long id, List<Long> domainIds, Long accountId, Long userId, Long hostId,
+                                                                                     Date startDate, Date endDate, Long instanceId,
+                                                                                     String consoleEndpointCreatorAddress, String clientAddress,
+                                                                                     boolean activeOnly) {
+        SearchCriteria<ConsoleSessionVO> searchCriteria = createListConsoleSessionsSearchBuilder(activeOnly).create();
+
+        searchCriteria.setParametersIfNotNull("id", id);
+        searchCriteria.setParametersIfNotNull("domainIds", domainIds.toArray());
+        searchCriteria.setParametersIfNotNull("accountId", accountId);
+        searchCriteria.setParametersIfNotNull("userId", userId);
+        searchCriteria.setParametersIfNotNull("hostId", hostId);
+        searchCriteria.setParametersIfNotNull("instanceId", instanceId);
+        searchCriteria.setParametersIfNotNull("startDate", startDate);
+        searchCriteria.setParametersIfNotNull("endDate", endDate);
+        searchCriteria.setParametersIfNotNull("creatorAddress", consoleEndpointCreatorAddress);
+        searchCriteria.setParametersIfNotNull("clientAddress", clientAddress);

Review Comment:
   We could extract these strings to constants



##########
server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java:
##########
@@ -181,6 +194,78 @@ private void reallyRun() {
         }
     }
 
+    @Override
+    public ListResponse<ConsoleSessionResponse> listConsoleSessions(ListConsoleSessionsCmd cmd) {
+        Pair<List<ConsoleSessionVO>, Integer> consoleSessions = listConsoleSessionsInternal(cmd);
+        ListResponse<ConsoleSessionResponse> response = new ListResponse<>();
+
+        ResponseObject.ResponseView responseView = ResponseObject.ResponseView.Restricted;
+        Long callerId = CallContext.current().getCallingAccountId();
+        if (accountManager.isRootAdmin(callerId)) {
+            responseView = ResponseObject.ResponseView.Full;
+        }
+
+        List<ConsoleSessionResponse> consoleSessionResponses = new ArrayList<>();
+        for (ConsoleSessionVO consoleSession : consoleSessions.first()) {
+            ConsoleSessionResponse consoleSessionResponse = responseGenerator.createConsoleSessionResponse(consoleSession, responseView);
+            consoleSessionResponses.add(consoleSessionResponse);
+        }
+
+        response.setResponses(consoleSessionResponses, consoleSessions.second());
+        return response;
+    }
+
+    protected Pair<List<ConsoleSessionVO>, Integer> listConsoleSessionsInternal(ListConsoleSessionsCmd cmd) {
+        CallContext caller = CallContext.current();
+        long domainId = getBaseDomainIdToListConsoleSessions(cmd.getDomainId());
+        Long accountId = cmd.getAccountId();
+        Long userId = cmd.getUserId();
+        boolean isRecursive = cmd.isRecursive();
+
+        boolean isCallerNormalUser = accountManager.isNormalUser(caller.getCallingAccountId());
+        if (isCallerNormalUser) {
+            accountId = caller.getCallingAccountId();
+            userId = caller.getCallingUserId();
+        }
+
+        List<Long> domainIds = isRecursive ? domainDao.getDomainAndChildrenIds(domainId) : List.of(domainId);
+
+        return consoleSessionDao.listConsoleSessions(cmd.getId(), domainIds, accountId, userId,
+                cmd.getHostId(), cmd.getStartDate(), cmd.getEndDate(), cmd.getInstanceId(),
+                cmd.getConsoleEndpointCreatorAddress(), cmd.getClientAddress(), cmd.isActiveOnly(),
+                cmd.getPageSizeVal(), cmd.getStartIndex());
+    }
+
+    /**
+     * Determines the base domain ID for listing console sessions.
+     *
+     * If no domain ID is provided, returns the caller's domain ID. Otherwise,
+     * checks if the caller has access to that domain and returns the provided domain ID.
+     *
+     * @param domainId The domain ID to check, can be null
+     * @return The base domain ID to use for listing console sessions
+     * @throws PermissionDeniedException if the caller does not have access to the specified domain
+     */
+    protected long getBaseDomainIdToListConsoleSessions(Long domainId) {
+        Account caller = CallContext.current().getCallingAccount();
+        if (domainId == null) {
+            return caller.getDomainId();
+        }
+
+        Domain domain = domainDao.findById(domainId);
+        if (domain == null) {
+            throw new InvalidParameterValueException(String.format("Unable to find domain with ID [%s]. Verify the informed domain and try again.", domainId));
+        }
+
+        accountManager.checkAccess(caller, domain);
+        return domainId;
+    }
+
+    @Override
+    public ConsoleSession listConsoleSessionById(long id) {
+        return consoleSessionDao.findByIdIncludingRemoved(id);
+    }

Review Comment:
   Is this method necessary? Is there somewhere where you cannot reference the DAO but can reference the Manager? If not... why not just call the DAO method?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3028152584

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 13986


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3038919388

   @DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "DaanHoogland (via GitHub)" <gi...@apache.org>.
DaanHoogland commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3038914954

   @blueorangutan test


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2971218826

   @bernardodemarco a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-2971803746

   @DaanHoogland, thanks for the review!
   
   > is the active parameter needed? would we ever want to list no longer available sessions?
   
   Yes, listing removed sessions is useful for audit and analysis purposes, as it allows users to track who generated a console endpoint, who accessed it, and when it was generated, acquired, and removed. Listing only active sessions, on the other hand, is helpful for verifying whether someone is currently using a VM.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "winterhazel (via GitHub)" <gi...@apache.org>.
winterhazel commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3111829134

   > > @sureshanaparti, can we merge this one?
   > 
   > @bernardodemarco can you check/resolve conflicts
   
   @sureshanaparti conflicts resolved :) 
   
   @bernardodemarco is on vacation at the moment, so I'll maintain his PRs for the time being.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "winterhazel (via GitHub)" <gi...@apache.org>.
winterhazel commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3111829645

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3112959031

   This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "winterhazel (via GitHub)" <gi...@apache.org>.
winterhazel commented on code in PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#discussion_r2231766277


##########
api/src/main/java/org/apache/cloudstack/api/command/user/consoleproxy/ListConsoleSessionsCmd.java:
##########
@@ -0,0 +1,182 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.import org.apache.cloudstack.context.CallContext;
+package org.apache.cloudstack.api.command.user.consoleproxy;
+
+import org.apache.cloudstack.consoleproxy.ConsoleSession;
+
+import com.cloud.user.Account;
+import com.cloud.user.AccountService;
+import com.cloud.user.UserAccount;
+import org.apache.cloudstack.acl.RoleType;
+import org.apache.cloudstack.api.ACL;
+import org.apache.cloudstack.api.APICommand;
+import org.apache.cloudstack.api.ApiConstants;
+import org.apache.cloudstack.api.BaseListCmd;
+import org.apache.cloudstack.api.Parameter;
+import org.apache.cloudstack.api.response.AccountResponse;
+import org.apache.cloudstack.api.response.ConsoleSessionResponse;
+import org.apache.cloudstack.api.response.DomainResponse;
+import org.apache.cloudstack.api.response.HostResponse;
+import org.apache.cloudstack.api.response.ListResponse;
+import org.apache.cloudstack.api.response.UserResponse;
+import org.apache.cloudstack.api.response.UserVmResponse;
+import org.apache.cloudstack.consoleproxy.ConsoleAccessManager;
+
+import javax.inject.Inject;
+import java.util.Date;
+
+@APICommand(name = "listConsoleSessions", description = "Lists console sessions.", responseObject = ConsoleSessionResponse.class,
+        entityType = {ConsoleSession.class}, since = "4.21.0",
+        requestHasSensitiveInfo = false, responseHasSensitiveInfo = false,
+        authorized = {RoleType.Admin, RoleType.DomainAdmin, RoleType.ResourceAdmin, RoleType.User})
+public class ListConsoleSessionsCmd extends BaseListCmd {
+    @Inject
+    private AccountService accountService;
+
+    @Inject
+    private ConsoleAccessManager consoleAccessManager;
+
+    @ACL
+    @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = ConsoleSessionResponse.class, description = "The ID of the console session.")
+    private Long id;
+
+    @Parameter(name = ApiConstants.DOMAIN_ID, type = CommandType.UUID, entityType = DomainResponse.class, description = "The domain ID of the account that created the console endpoint.")
+    private Long domainId;
+
+    @ACL
+    @Parameter(name = ApiConstants.ACCOUNT_ID, type = CommandType.UUID, entityType = AccountResponse.class, description = "The ID of the account that created the console endpoint.")
+    private Long accountId;
+
+    @ACL
+    @Parameter(name = ApiConstants.USER_ID, type = CommandType.UUID, entityType = UserResponse.class, description = "The ID of the user that created the console endpoint.")
+    private Long userId;
+
+    @Parameter(name = ApiConstants.HOST_ID, type = CommandType.UUID, entityType = HostResponse.class, authorized = {RoleType.Admin}, description = "Lists console sessions from the specified host.")
+    private Long hostId;
+
+    @Parameter(name = ApiConstants.START_DATE, type = CommandType.DATE, description = "Lists console sessions generated from this date onwards. " +
+            ApiConstants.PARAMETER_DESCRIPTION_START_DATE_POSSIBLE_FORMATS)
+    private Date startDate;
+
+    @Parameter(name = ApiConstants.END_DATE, type = CommandType.DATE, description = "Lists console sessions generated up until this date. " +
+            ApiConstants.PARAMETER_DESCRIPTION_END_DATE_POSSIBLE_FORMATS)
+    private Date endDate;
+
+    @Parameter(name = ApiConstants.INSTANCE_ID, type = CommandType.UUID, entityType = UserVmResponse.class, description = "The ID of the instance.")

Review Comment:
   I think that this was just to match the database. I agree that it would be better to match the other APIs instead, both in the command and in the response, but let's wait to see what @bernardodemarco thinks.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "winterhazel (via GitHub)" <gi...@apache.org>.
winterhazel commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3114886388

   @blueorangutan package


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3052963689

   @nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3132433023

   @sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3144732678

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 14506


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3021167112

   <b>[SF] Trillian test result (tid-13630)</b>
   Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
   Total time taken: 58453 seconds
   Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr11016-t13630-kvm-ol8.zip
   Smoke tests completed. 141 look OK, 0 have errors, 0 did not run
   Only failed and skipped tests results shown below:
   
   
   Test | Result | Time (s) | Test File
   --- | --- | --- | ---
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "bernardodemarco (via GitHub)" <gi...@apache.org>.
bernardodemarco commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3073295436

   > edit: except for the conflict @bernardodemarco
   
   @DaanHoogland, done!
   
   > btw, I think this PR is good to merge, @sureshanaparti !?
   
   Yes, I agree. The integration tests ran here https://github.com/apache/cloudstack/pull/11016#issuecomment-3057111018, an unrelated test returned an error and, after that, no other changes were added to the PR (except for merging it with the updated `main` branch)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] API to list console sessions [cloudstack]

Posted by "blueorangutan (via GitHub)" <gi...@apache.org>.
blueorangutan commented on PR #11016:
URL: https://github.com/apache/cloudstack/pull/11016#issuecomment-3000393363

   Packaging result [SF]: ✔️ el8 ✔️ el9 ✖️ debian ✔️ suse15. SL-JID 13897


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@cloudstack.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org