Commit Graph

360 Commits

Author SHA1 Message Date
Charlie Crane
1802648436 #2781 - Initial commit with changes to Terminal to integrate with user_session_manager. Login and logout are now talking to the monitored user session 2024-08-07 11:31:51 +01:00
Charlie Crane
bd91b4be1d #2706 - Merge branch 'dev' into feature/2706-Terminal_Sim_Component 2024-08-07 09:08:43 +01:00
Charlie Crane
6d6f21a20a #2706 - Additional assert on new test and a guard clause on LocalTerminalConnection.execute() to check that the Terminal service is running before sending a command 2024-08-06 19:14:53 +01:00
Charlie Crane
d05fd00594 #2706 - Resolving an issue that saw disconnected terminal connections still able to send execute commands that were also then processed by the target node. Created a new class: LocalterminalConnection, for local connection objects to terminal. Calling terminal.show() when there is a local connection will have 'Local Connection' as the IP address. Receive and execute will check that the provided connection uuid is valid before actioning any commands. TerminalClientConnection objects now have an is_active flag similar to DatabaseClientConnection. Added a new test to check that terminals will reject commands from disconnected clientconnection objects. 2024-08-06 19:09:23 +01:00
Charlie Crane
df49b3b5bb #2706 - Actioning Review Comments 2024-08-06 14:10:10 +01:00
Charlie Crane
89107f2c4b #2706 - Type-hint changes following review 2024-08-06 10:37:11 +01:00
Chris McCarthy
d2011ff327 #2811 - Updated syslog messaging around DatabaseClient and DatabaseService connection request and password authentication 2024-08-05 22:23:54 +01:00
Charlie Crane
63a689d94a #2706 - correcting test failures 2024-08-05 16:25:35 +01:00
Charlie Crane
4fe9753fcf #2706 - Updated terminal.receive() to work with SSHPacket class, fixed some tests and updated RemoteTerminalConnection to hold Source_IP for easier reading 2024-08-05 15:44:52 +01:00
Charlie Crane
22c84d35d7 Merge branch 'dev' into feature/2706-Terminal_Sim_Component 2024-08-05 09:52:53 +01:00
Charlie Crane
4bddf72cd3 #2706 - Initial refactor of Terminal Class following review discussion on Friday. Terminal will now return a TerminalConnection/RemoteTerminalConnection object on login.
The new connection object can then be used to pass commands to the target node, without needing to form a full payload item.
2024-08-05 09:29:17 +01:00
Charlie Crane
d9faa1a5da Merge branch 'dev' into feature/2706-Terminal_Sim_Component 2024-08-02 13:34:00 +01:00
Charlie Crane
e132c52121 #2706 - Removed the LoginValidator. Will be handled by UserSessionManager. Updated some missing variables in method definitions/ 2024-08-02 13:32:34 +01:00
Charlie Crane
ab4931463f #2706 - Minor change following the session_id changes as local_login failed to pass a session_id when creating a new TerminalClientConnection object 2024-08-02 09:21:55 +01:00
Charlie Crane
0fe61576c7 #2706 - Removed source and target ip_address attributes from the SSHPacket Class. Terminal now uses session_id to send login outcome. No more network_interface[1].ip_address. 2024-08-02 09:13:31 +01:00
Marek Wolan
a719b24cfc Merge branch 'dev' into feature/2735-usermanager-fixes 2024-08-01 13:23:03 +01:00
Charlie Crane
19d7774440 #2706 - Changed how Terminal Class handles its connections. Terminal now has a list of TerminalClientConnection objects that holds all active connections. Corrected a typo in ssh.py 2024-08-01 12:34:21 +01:00
Charlie Crane
e4e3e17f51 #2706 - commit minor changes from review comments 2024-08-01 07:57:01 +01:00
Marek Wolan
2abd1969fe #2800 - Consolidate software install and uninstall to a single method 2024-07-31 16:41:59 +01:00
Charlie Crane
0f3fa79ffe #2706 - Actioning review comments on example notebook and terminal class 2024-07-31 15:47:18 +01:00
Charlie Crane
3698e6ff5f #2706 - Commented out references to UserSessionManager to remove the dependency. 2024-07-30 15:24:37 +01:00
Charlie Crane
09084574a8 #2706 - Inclusion of health_state_actual attribute to the Terminal class. Started fleshing out a walkthrough notebook showing how to use the new component. 2024-07-30 12:15:37 +01:00
Charlie Crane
bb0ecb93a4 #2706 - Correcting whitespace change in database_service.py and actioning some review comments 2024-07-30 09:57:47 +01:00
Charlie Crane
e492f19a43 #2706 - Small change to execute method following feedback 2024-07-29 17:10:13 +01:00
Charlie Crane
f78cb24150 #2706 - Removed some un-necessary comments and changes to network used in terminal ACL unit test 2024-07-29 14:20:29 +01:00
Charlie Crane
cf7341a4fd #2713 - Minor changes before merging into main Terminal branch 2024-07-29 10:50:32 +01:00
Charlie Crane
0ac1c6702c #2713 - eod commit. Initial RequestManager Test implemented, along with an initial setup of the additional Request Manager methods. 2024-07-26 16:56:03 +01:00
Charlie Crane
a0e675a09a #2712 - Minor changes to login Validator 2024-07-24 11:20:01 +01:00
Charlie Crane
1cb6ce02e0 #2712 - Correcting the use of TerminalClientConnection for remote connections. Terminal should hold a list of active remote connections to itself with connection uuid for validation 2024-07-24 10:38:12 +01:00
Charlie Crane
a36e34ee1d #2712 - Prepping ahead of raising PR. 2024-07-24 08:31:24 +01:00
Charlie Crane
a7f9e4502e #2712 - Updates to the login logic and fixing resultant test failures. Updates to terminal.rst and ssh.py 2024-07-23 15:18:20 +01:00
Charlie Crane
3c590a8733 #2712 - Commit before changing branches 2024-07-22 09:58:09 +01:00
Charlie Crane
5c04f4fa4c Merge branch 'dev' into feature/2712-Terminal_Login_Handling 2024-07-19 11:18:34 +01:00
Charlie Crane
155562cb68 #2712 - Commit before merging in changes on dev 2024-07-19 11:18:17 +01:00
Charlie Crane
2104a7ec7d #2712 - Commit before merging in changes on dev 2024-07-19 11:17:54 +01:00
Chris McCarthy
8702dc7067 #2735 - tidies up some oif the api, temporarily integrated login checks to ping for testing, added temp test 2024-07-19 10:34:32 +01:00
Charlie Crane
32c2ea0b10 #2710 - Pre-commit run ahead of raising PR 2024-07-15 08:22:18 +01:00
Charlie Crane
2eb36149b2 #2710 - Prep for draft PR 2024-07-15 08:20:11 +01:00
Chris McCarthy
93350ecd30 Merge branch 'dev' into feature/2735_Implement-UserManager-class-and-integrate-into-Node 2024-07-12 17:14:57 +01:00
Charlie Crane
dc3558bc4d #2710 - End of Day commit 2024-07-10 17:39:45 +01:00
Marek Wolan
0c58c3969a 2623 - finish testing action mask 2024-07-10 13:46:30 +01:00
Charlie Crane
8061102587 #2710 - commit before changing branch 2024-07-09 11:55:16 +01:00
Charlie Crane
42602be953 #2710 - Initial implementation f the receive/send methods. Committing to change branch 2024-07-09 11:54:33 +01:00
Chris McCarthy
47a1daa580 #2735 - Initial work done around User, UserManager, and UserSessionManager 2024-07-08 15:10:06 +01:00
Charlie Crane
61c2ee0ee8 Merged PR 450: Terminal Service Class
## Summary
This PR is the base implementation of the Terminal Service Class, containing the skeleton structure for #2711.

## Test process
Future me's problem - see #2714

## Checklist
- [X] PR is linked to a **work item**
- [X] **acceptance criteria** of linked ticket are met
- [X] performed **self-review** of the code
- [ ] written **tests** for any new functionality added with this PR
- [] updated the **documentation** if this PR changes or adds functionality
- [ ] written/updated **design docs** if this PR implements new functionality
- [X] updated the **change log**
- [X] ran **pre-commit** checks for code style
- [ ] attended to any **TO-DOs** left in the code

Related work items: #2711
2024-07-08 09:46:53 +00:00
Charlie Crane
219d448adc #2711 - Rewrite of the majority of the terminal class after not liking how I originally did it. This takes a heavier inspiration for handling connections from the database_client/server 2024-07-08 07:58:10 +01:00
Czar Echavez
2a0695d0d1 #2688: apply the request validators + fixing the fix duration test + refactor test class names 2024-07-05 15:06:17 +01:00
Czar Echavez
797afc99ab Merge remote-tracking branch 'origin/dev' into feature/2725-add-software-fix-duration-config 2024-07-03 10:37:02 +01:00
Marek Wolan
bd23ee2083 Merged PR 444: Refactor application install
## Summary
* Remove the ip address parameter from application install
* Make it possible to install any application that exists
* Add new configuration actions for applications
* Add an application registry to match names to application classes

## Test process
* several new tests
* notebooks still running

## Checklist
- [X] PR is linked to a **work item**
- [X] **acceptance criteria** of linked ticket are met
- [X] performed **self-review** of the code
- [X] written **tests** for any new functionality added with this PR
- [ ] updated the **documentation** if this PR changes or adds functionality
- [ ] written/updated **design docs** if this PR implements new functionality
- [ ] updated the **change log**
- [X] ran **pre-commit** checks for code style
- [X] attended to any **TO-DOs** left in the code

Related work items: #2438, #2705
2024-07-02 15:57:59 +00:00
Charlie Crane
ebf6e7a90e #2711 - Added in remote_login and process_login methods. Minor updates to make pydantic happy. Starting to flesh out functionality of Terminal Service in more detail 2024-07-02 16:47:39 +01:00