Commit Graph

106 Commits

Author SHA1 Message Date
Frezzle
3522e2980d [CP-19111] Added ability to choose Basic or Digest authentication for proxy server
2 new radio buttons in Connection Options page, for Basic and Digest; Digest is the default as it's the most secure.
New proxy authentication method setting, which is used to configure XenAPI's HTTP class and the .NET AuthenticationManager (which handles which authentication schemes can be used by the .NET web classes).
The new setting is also transferred and used by the Health Check service.

The bug noted in CA-214653 also occurs here, but the work-around on PR#1201 for that bug will also work for this.

Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
2016-10-12 19:09:35 +01:00
Callum McIntyre
1b1c7ae581 [Dotnet Upgrade] Convert all projects to use .net 4.6. All changes autogenerated by VS.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
2016-09-29 10:50:24 +01:00
Frederico Mazzone
7ec3442f40 [CP-17401] Use Proxy authentication in Health Check Service
Now transfers proxy credentials in encrypted format and checks for default empty credentials when loading them for first time.
Fixed a break in unit test in HTTP.ReadHttpHeaders().

Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
2016-06-22 17:10:25 +01:00
Frederico Mazzone
9fa8740cb9 [CP-17401] Use Proxy authentication in Health Check Service
Removed last bits of code relating to "Bypass proxy server for local addresses" option.
New proxy settings are sent from XenCenter to health check service and used to configure the proxy using GetProxyFromSettings().
Health check service now correctly saves its proxy settings and updates the static Proxy property for the Session class; done in new ReconfigureConnectionSettings().

Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
2016-06-22 13:05:21 +01:00
Frederico Mazzone
46c15efe57 [CP-17231] Implement proxy authentication setting in XenCenter
Added 2 textboxes for proxy username and password; encrypted when saved and decrypted when loaded.
Added 2 checkboxes; one for bypassing proxy for xenserver connections, one for providing proxy credentials.
Removed checkbox for bypassing proxy for local addresses.
Controls are no longer enabled/disabled when the related proxy option is selected/deselected.
Making changes to a control (e.g. username, bypass checkbox, etc) selects the 'Use this proxy server' option automatically.
Removed "Bypass proxy server for local addresses" option.
Basic and Digest authentication implemented. Tested with FreeProxy (Basic+Digest), CCProxy (Basic) and AnalogX Proxy (no authentication); each were tested with correct credentials, incorrect credentials and missing credentials; all gave expected results.

Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
2016-06-20 17:15:00 +01:00
Mihaela Stoica
e20bff0cd9 CA-207296: Update Health Check service assembly info and sign the assembly
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-04-12 13:52:01 +01:00
Mihaela Stoica
9f99c37f83 CP-16012: Rename branding variables
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2016-02-10 11:52:30 +00:00
Cheng Zhang
15ef3410a3 CP-15398: Make file name and dir rebrandablei
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2016-01-19 18:40:55 +08:00
Cheng Zhang
08741a1fa0 CP-15398: Make texture company name rebrandable
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2016-01-19 18:40:54 +08:00
Cheng Zhang
e4d97dcef4 CP-15398: Make texture XenServer for health check
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2016-01-19 18:40:53 +08:00
Gabor Apati-Nagy
6f1ae68a09 CA-148491: XenServer breaks if any XenAPI client leaks sessions
Fixing XenServerHealthCheck to use modern overload of session.login_with_password. With this change XC and all its components are now sending an originator field (with some version added to it).

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2015-12-14 13:11:49 +00:00
Gabor Apati-Nagy
b43efd4116 Merge pull request #726 from MihaelaStoica/CA-180576
CA-180576: Provide a option to give case number when uploading a repo…
2015-11-04 12:03:03 +00:00
Mihaela Stoica
af7852c7a0 CA-180576: Provide a option to give case number when uploading a report from the Server Status Report wizard
- added Case Number edit box on the Destination page of the wizard
- valid case number needs to be 9 or less digits

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-11-03 15:48:14 +00:00
Cheng Zhang
d380500dda CA-186236: Make HealthCheck follow xenserver master change
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-11-03 12:39:41 +08:00
Hui Zhang
6d2e617af7 CA-185019: HealthCheckService should retrieve the server capabilities
HealthCheckService retrieves system capabilities, filter them with
the reports excluded in Health Check.
Since Dundee, add verbosity for host status report request.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-10-14 19:44:35 +08:00
Cheng Zhang
f94190db4b CA-182881: Use local time zone to do the schedule check
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-09-14 09:48:14 +08:00
Cheng Zhang
0f2eb2fcb9 CA-182881: Fix issue in schedule check in HealthCheckService
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-09-10 15:32:23 +08:00
Mihaela Stoica
2eba1c705f Merge remote-tracking branch 'upstream/master' into CP-12156_2
Conflicts:
	XenModel/XenAPI-Extensions/Pool.cs
	XenModel/XenModel.csproj
2015-08-27 01:03:58 +01:00
Hui Zhang
0761aa5be2 CP-13848: XenCenter transfers proxy settings to HealthCheckService.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-08-25 20:32:58 +08:00
Mihaela Stoica
4b073c0bc3 Renamed and merged some constants in HealthCheckSettings class
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-08-21 15:21:47 +01:00
Mihaela Stoica
ff64416407 Move HealthCheckSettings class to a separate file
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-08-21 15:19:24 +01:00
Mihaela Stoica
cb35725dd7 CP-13074: Finalize the CIS domain names and product key used for retrieving the authentication tokens and upload
- change the URLs to the production site
- for development and testing these settings should be changed to the staging site via registry keys

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-08-20 16:59:58 +01:00
Hui Zhang
aef05ab064 CP-13072: HealthCheckService: Use proxy for bundle upload.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-08-17 15:54:19 +08:00
Cheng Zhang
b650c226e7 CP-13592: Refactor reg read function
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-08-11 15:41:31 +08:00
Cheng Zhang
1fc91d2381 CP-13592: Add reg to store upload url and time interval
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-08-07 12:07:20 +08:00
Stephen Turner
09c495552f CP-13389: Convert all projects to .NET 4.5. (All changes autogenerated except for one case of broken XML in XenOvfApi/app.config). 2015-07-30 12:40:59 +01:00
Mihaela Stoica
f6c477eb67 Merge remote-tracking branch 'hui/CA-178338' into CP-13073 2015-07-30 10:31:38 +01:00
Hui Zhang
d6ff10654d CA-178338: XenServerHealthCheckService: bundle uploading update.
1. Add logs to track the uploading process.
2. Catch the potential exception.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-07-30 17:02:48 +08:00
Mihaela Stoica
a9be9846ff CP-13073: Rename Call Home to Health Check in code
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-07-29 08:44:41 +01:00
Mihaela Stoica
df8ac2ce74 CP-12679: Upload the report from the Server Status Report wizard
- moved XenServerHealthCheckUpload.cs to XenModel

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-07-20 15:15:42 +01:00
Mihaela Stoica
136b8c9c96 CP-12679: Upload the report from the Server Status Report wizard
- added the upload url as a parameter to XenServerHealthCheckUpload constructor

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-07-20 15:13:44 +01:00
Mihaela Stoica
f262692693 Rename Health Check service name to "XenServerHealthCheck" 2015-07-17 16:05:15 +01:00
Mihaela Stoica
ce36434611 Merge pull request #555 from huizh/CP-13057
CP-13057: Add config provider for XenServerHealthCheckService.
2015-07-17 14:37:03 +01:00
Hui Zhang
ef1faf7776 CP-13057: Add config provider for XenServerHealthCheckService.
Introduce XenServerHealthCheckConfigProvider to implement IXenAdminConfigProvider.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-07-17 14:51:27 +08:00
Cheng Zhang
09d0245082 CP-12769: Send credential only when HealthCheckService is running.
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-15 13:49:23 +08:00
Cheng Zhang
a750a5b770 CP-13071: Make the CIS upload domain and upload timer interval configurable in service
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-14 14:50:42 +08:00
Mihaela Stoica
14119bc008 CP-12160: Changes following code review
- added CallHomeSettings.TryParseStringToDateTime() function, which does not throw an exception if the conversion fails

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-07-07 15:32:14 +01:00
Mihaela Stoica
6fee699ee0 CP-12160: Fix some issues found during the integration tests
- Use string.IsNullOrEmpty() instead of string.Length
- Reset NewUploadRequest after a successful upload (if the upload started after the request time)
- When trying to determine if an “on demand” upload is due, avoid parsing exception if the NewUploadRequest if the field is empty.
- Also added more detailed logging.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2015-07-06 17:10:00 +01:00
Cheng Zhang
c0585f0681 CP-12769: Using uniform format of time to string and string to time
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-02 17:54:00 +08:00
Hui Zhang
d8b8ff96c5 CP-12160: XenServerHealthCheck: upload server status report to CIS.
Update to return from the uploading thread when service stops.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-07-02 16:12:49 +08:00
Cheng Zhang
903931e63d CP-12769: Fix issue when integration test with CIS
1.	Using en-us to transfer upload request time
2.	Check the pipe is closed before close it.
3.	On demand upload will not have 24 hour due problem since it only check once in half an hour
4.	Avoid get upload token by empty session.

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-02 13:53:44 +08:00
Mihaela Stoica
ea786180fc Fix line endings (to Windows) 2015-07-01 15:58:58 +01:00
Hui Zhang
384b033305 CP-12160: XenServerHealthCheck: upload server status report to CIS.
When an upload request is triggered,
1. fetch the upload token from CallHomeSettings,
2. generate the server status report and upload it to CIS server,
3. update the corresponding fields of CallHomeSettings when the
   upload is finished successfully or failed.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-07-01 19:22:32 +08:00
Cheng Zhang
50817a5746 CP-12769: Add timeout for pipe client connecting
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-01 18:19:44 +08:00
Cheng Zhang
825aa3abd5 CP-12769: Include task information in ServerList
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-01 16:02:14 +08:00
Cheng Zhang
324c249285 CP-12769: Send server connection details to the Health Check Service
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-01 11:53:56 +08:00
Cheng Zhang
934b0cf381 CP-12770: use server connection details received from XenCenter
1. Create named pipe: “HealthCheckServicePipe”
2. Receive credential send from XenServer and decrypt it
3. Update credential setting and save encrypted credential using current user scope system user.
4. Create work thread to handle the pipe communication.
5. If HealthCheckServicePipe already existed before service start, stop service and output service error log
6. If sign off information is received for a host (XenserverName or IP without username and password) then the existing saved credentials will be deleted
7. If the HealthCheckService connects to a host that is no longer enrolled, then it will delete the existing saved credentials

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-07-01 09:54:11 +08:00
Gabor Apati-Nagy
5b9790cdd9 CP-12157: XenServer Insight Service: create the service and connect to XenCenter server list
Removed project reference to XenAdmin

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2015-06-30 11:56:05 +01:00
Cheng Zhang
9c7865b270 CP-12627: Use new xapi field health_check_config for Call Home
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-18 15:32:56 +08:00
Hui Zhang
87caa91f65 CP-12159: XenServerHealthCheck: collect server status report.
Fetch the server status report for CIS bundle uploading.

Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
2015-06-11 20:42:29 +08:00
Cheng Zhang
038b8792e3 CP-12624: Upload a CallHome report to CIS on demand
1. Add Upload a CallHome report to CIS on demand logic
2. Add test cases to check the function

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-10 19:02:29 +08:00
Cheng Zhang
8333bfcb19 CP-12158: Rework review comments
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-10 17:32:52 +08:00
Cheng Zhang
5ff8911688 Use DbProxy and server databases to do the UT test
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-09 16:06:17 +08:00
Cheng Zhang
e220e489c9 CP-12158: Read the Call Home upload schedule and determine if an upload can start
1.Add logic to firm an upload can start.
2.Lock will be added if upload can start
3.Add unit test

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-08 16:32:54 +08:00
Cheng Zhang
b9267e00a2 CP-12158: Add debug log for XenServer Health Check Service
Log will be located at ${PROGRAMDATA}/Citrix/XenServerHealthCheck/logs/XenServerHealthCheck.log

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-06-04 15:15:33 +08:00
Cheng Zhang
1c55e8199a CP-12157: Create XenServerHealthCheck service framework
1.Create a service named XenServerHealthCheck
2.Read the XenCenter Server List from configuration
3.Try to connect to these servers
4.Modify protection of XenCenter config from CurrentUset to LocalMachine

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
2015-05-28 17:18:18 +08:00