Commit Graph
100 Commits
Author SHA1 Message Date
gpt-engineer-app[bot] 234aae3892 Show workloads in VDC details
Add Workloads section to VirtualDataCentersPage
- Fetch pods for selected VDC and display in a new Workloads card
- Filter pods by virtual_data_center_id, then map to table using ApiPod fields id, name, status, containers, created
- Include loading state and empty state handling

X-Lovable-Edit-ID: edt-08fcba7e-ea3e-4e0c-8299-2319860dc719
2025-12-03 13:18:50 +00:00
gpt-engineer-app[bot] b440f8888a Changes 2025-12-03 13:18:50 +00:00
gpt-engineer-app[bot] 5857bd711e Render object safely in PodCard
Fix rendering of cloudflare_tunnel object by converting to string or displaying its fields, avoiding rendering a raw object inside a <p> and related fragment prop warnings.

X-Lovable-Edit-ID: edt-9e748cee-cbe3-42ff-9d1e-abcbda882039
2025-12-03 13:16:02 +00:00
gpt-engineer-app[bot] 2ced5ef7da Changes 2025-12-03 13:16:01 +00:00
gpt-engineer-app[bot] dcb3ae12a6 Refactor pod details to names
- Show workload host name instead of ID
- Display region name instead of ID
- Show VDC name with hyperlink to VDC details
- Remove NS Controller ID from Pod details
- Wire VDC name hyperlink and fetch lookup data in InfrastructurePage and PodCard via new region/workload host/VDC data flows

X-Lovable-Edit-ID: edt-c2a4e113-e82e-4fb4-bbbb-70e96d0345a3
2025-12-03 13:03:52 +00:00
gpt-engineer-app[bot] 07245a9f1c Changes 2025-12-03 13:03:51 +00:00
gpt-engineer-app[bot] a95b325a79 Show pod details on expand
Enhance infrastructure containers pod card expanded view to display key pod metadata (pod_id, created_at, region_id, virtual_data_center_id, workload_host_id, nscontroller_workload_id, cloudflare_tunnel) from SPI response. Update Pod interface and mapping to include new fields and render a Pod Details section in the expanded card. Ensure created_at is shown in user local time.

X-Lovable-Edit-ID: edt-b3902e2e-757d-4c14-b09f-bf8f3dca6722
2025-12-03 11:23:33 +00:00
gpt-engineer-app[bot] bd6c9d749f Changes 2025-12-03 11:23:32 +00:00
gpt-engineer-app[bot] 78eff189b1 Treat reconciling as online
Update WorkloadHostsPage to consider hosts with reconciling status as online in the list, instead of marking them offline. Adjust filtering/display logic so reconciling hosts are shown as online.

X-Lovable-Edit-ID: edt-6f070efe-9100-4868-ada9-6d3f20820821
2025-12-03 09:23:11 +00:00
gpt-engineer-app[bot] 9d6bf4039b Changes 2025-12-03 09:23:10 +00:00
gpt-engineer-app[bot] b741e6cb37 Sync running time to local time
Convert UTC created_at to local timezone by parsing with Z suffix when missing,
and update running time display to reflect local time calculations for pod lifetimes.

X-Lovable-Edit-ID: edt-18787742-c4e3-4e22-b709-9629c4f14d17
2025-12-01 23:34:53 +00:00
gpt-engineer-app[bot] 5344378c11 Changes 2025-12-01 23:34:53 +00:00
gpt-engineer-app[bot] afd8932231 Enhance running time live update
Add live per-second running time display for pods under 5 minutes:
- Show seconds precision when running < 5 minutes
- Update every second via a timer
- Stop live updates after reaching 5 minutes
- Integrate with existing getRunningTime logic in PodCard.tsx

X-Lovable-Edit-ID: edt-85232477-29e9-4721-b98a-84bb21f828fb
2025-12-01 23:32:14 +00:00
gpt-engineer-app[bot] 23de67a6e7 Changes 2025-12-01 23:32:14 +00:00
gpt-engineer-app[bot] 1efe6d670b Show running time on pod header
Update PodCard to display running time for the pod header instead of per-container rows by mapping created_at to a new created field and rendering Running: <time> in the pod header.

X-Lovable-Edit-ID: edt-790c15f6-e0b6-42d7-baea-af34ff3311ac
2025-12-01 23:29:52 +00:00
gpt-engineer-app[bot] d1b04ab510 Changes 2025-12-01 23:29:52 +00:00
gpt-engineer-app[bot] fd459ad200 Move running time to pod header
Move the Running time display from the container list to the pod header in PodCard.tsx, showing pod running time in the header section and removing it from the container rows.

X-Lovable-Edit-ID: edt-85e0472f-bd61-43f5-ba99-ad091db9724a
2025-12-01 04:31:56 +00:00
gpt-engineer-app[bot] 96473476a1 Changes 2025-12-01 04:31:55 +00:00
gpt-engineer-app[bot] aff25d9165 Add running time column to pods
Add a Running time column to the containers list in infrastructure/containers, calculating and displaying the duration since each pod's created_at timestamp (reused getRunningTime logic for uptime). Also update PodCard table headers and cells to show the new column for both main containers and sidecars.

X-Lovable-Edit-ID: edt-8e307318-49b7-4893-a4fd-a40533534ea4
2025-12-01 04:30:38 +00:00
gpt-engineer-app[bot] 0f57a08f45 Changes 2025-12-01 04:30:38 +00:00
gpt-engineer-app[bot] 375d0c1916 Update ContainerDetails to use launch params for image and workload type
Parse launch_params to extract docker_image and show in Image field; use workload_type for Type field in ContainerDetails.tsx.

X-Lovable-Edit-ID: edt-cd160a24-a9d3-4c81-b955-81d9c3bdaf7f
2025-12-01 04:11:00 +00:00
gpt-engineer-app[bot] 61e626ddf1 Changes 2025-12-01 04:10:59 +00:00
gpt-engineer-app[bot] 2de00ca470 Show CPU as vCPUs not percent
Update ContainerDetails to display CPU usage as vCPUs (e.g., "10 vCPUs" or "10") instead of percentage, using resource_usage cpu used_amount.

X-Lovable-Edit-ID: edt-87bc0662-4cc4-4d5e-9069-8c2c1dd7cdee
2025-12-01 04:08:15 +00:00
gpt-engineer-app[bot] 9b9cee0815 Changes 2025-12-01 04:08:14 +00:00
gpt-engineer-app[bot] 7360947208 Use resource_usage for CPU RAM
Update container details to display CPU and RAM from the new resource_usage API data in the Resource Allocation section, replacing hardcoded values and aligning with the improved API response.

X-Lovable-Edit-ID: edt-ee131bd4-1213-4289-9180-998227ac28cb
2025-12-01 04:06:37 +00:00
gpt-engineer-app[bot] cfc97ecb30 Changes 2025-12-01 04:06:37 +00:00
gpt-engineer-app[bot] 0da6e3ec03 Revert to text status
Revert the Available for Scheduling display back to text with green for true and red for false (removing the previous button styling).

X-Lovable-Edit-ID: edt-ed5c2166-769b-4f85-8058-19ece4242c5b
2025-11-27 15:06:26 +00:00
gpt-engineer-app[bot] 0b07db14cf Changes 2025-11-27 15:06:26 +00:00
gpt-engineer-app[bot] 116c28e890 Show scheduling as button
Render Available for Scheduling as a colored button (green true, red false) on workload host details and remove text label; keep as toggle button.

X-Lovable-Edit-ID: edt-1c98febe-c0d4-4fec-b497-bb65f5e462f3
2025-11-27 14:51:50 +00:00
gpt-engineer-app[bot] 4e9d62c27a Changes 2025-11-27 14:51:49 +00:00
gpt-engineer-app[bot] d527c96648 Add reconciling status icon
- Extend WorkloadHostsPage status indicator to support a new reconciling state with a yellow icon and label, alongside online/offline.

X-Lovable-Edit-ID: edt-5a9959a9-a727-4b6e-aada-436f6006e89a
2025-11-17 02:44:29 +00:00
gpt-engineer-app[bot] 4b2de0a90b Changes 2025-11-17 02:44:28 +00:00
gpt-engineer-app[bot] 5ae5e1cba4 Fix restart button for sidecars 2025-11-04 01:26:44 +00:00
gpt-engineer-app[bot] f10734130e Implement URL routing for all pages 2025-11-02 14:56:35 +00:00
gpt-engineer-app[bot] accd6315aa Add toggle button for scheduling 2025-10-26 20:58:39 +00:00
gpt-engineer-app[bot] d503a9fa44 feat: Add 'Host bridge' network option 2025-10-26 20:36:34 +00:00
gpt-engineer-app[bot] b5ff5dfa05 Add workload resource usage columns 2025-10-26 12:20:44 +00:00
gpt-engineer-app[bot] 889400d1a8 Add delete network functionality 2025-09-18 07:40:10 +00:00
gpt-engineer-app[bot] ccc14b61cf Add editable IP address ranges to region details 2025-09-18 05:45:27 +00:00
gpt-engineer-app[bot] 873178a025 Fix button click handler 2025-09-18 05:22:03 +00:00
gpt-engineer-app[bot] 1a9a712491 Add network creation to VDC details 2025-09-18 05:13:48 +00:00
gpt-engineer-app[bot] fe5cc6f736 Fix container row width 2025-09-15 03:24:45 +00:00
gpt-engineer-app[bot] 7e7a6e7171 Reset initialPodId in wizard 2025-09-12 05:29:51 +00:00
gpt-engineer-app[bot] cee4acf889 Fix launch wizard state persistence 2025-09-12 05:06:45 +00:00
gpt-engineer-app[bot] f5d8f6c692 Fix invalid prop on Fragment 2025-09-11 04:10:25 +00:00
gpt-engineer-app[bot] 01d24b31b1 Fix Container Console logs button 2025-09-11 04:05:48 +00:00
gpt-engineer-app[bot] cc9b8621a2 Add container lifecycle actions 2025-09-11 03:32:31 +00:00
gpt-engineer-app[bot] 1800aab9ee Add downloaded data to progress bar 2025-09-10 06:54:23 +00:00
gpt-engineer-app[bot] 4dd6e84f27 Add container pull progress bar 2025-09-10 05:57:26 +00:00
gpt-engineer-app[bot] a393e2fa48 Fix: Handle undefined status in getStatusColor 2025-09-04 07:37:06 +00:00
gpt-engineer-app[bot] 5d8027b6f7 Fix: Handle undefined values in toLowerCase 2025-09-04 07:36:04 +00:00
gpt-engineer-app[bot] d0151baac5 Fix container details view 2025-09-04 06:28:18 +00:00
gpt-engineer-app[bot] 14658b4016 Fix landing page background 2025-09-04 05:39:00 +00:00
gpt-engineer-app[bot] 071b107342 Fix landing page background 2025-09-04 05:23:28 +00:00
gpt-engineer-app[bot] ade0673f96 Add passive background to landing page 2025-09-04 04:15:47 +00:00
gpt-engineer-app[bot] 2e9db298c0 Feat: Centralize API requests 2025-09-03 15:20:40 +00:00
gpt-engineer-app[bot] 0e3df2d697 Add container details view 2025-09-03 11:42:15 +00:00
gpt-engineer-app[bot] 458d1f4325 Fix VDC selection validation 2025-09-03 11:13:26 +00:00
gpt-engineer-app[bot] c0f55f6121 Refactor container creation flow
Remove virtual datacenter options when adding a container to an existing pod, as it's not required for this operation.
2025-09-03 06:36:24 +00:00
gpt-engineer-app[bot] 9cb8f2b097 Add refresh button to workload host details
Add a refresh button to the workload host details page to allow users to manually refresh the displayed data.
2025-09-03 04:40:36 +00:00
gpt-engineer-app[bot] e3558064bc Fix: Improve empty state for virtual machines
The AI has implemented the plan to address the blank virtual machines window on the Infrastructure page when no VMs are found. This includes normalizing the API response for VMs to always return an array, hardening the `useVirtualMachines` hook to ensure it always sets an array, and updating `InfrastructurePage.tsx` to correctly display an empty state card when `virtualMachines` is not an array or is empty. This ensures a consistent and informative user experience when no virtual machines are available.
2025-09-03 04:36:51 +00:00
gpt-engineer-app[bot] ef83b6bd56 Fix memory conversion for Workload Hosts
The memory for Workload Hosts on the Resource Overview page was being displayed in MB instead of GB. This commit updates the code to convert the memory values from MB to GB, ensuring accurate representation of resource utilization.
2025-09-03 01:57:37 +00:00
gpt-engineer-app[bot] f415f621c2 Fix Select.Item value prop error
The AI is addressing an error where `<Select.Item />` components are missing a valid `value` prop. This is likely occurring in a component that renders a list of selectable items, such as a dropdown or a similar UI element. The fix will involve ensuring that each `<Select.Item />` has a non-empty string `value` prop.
2025-09-01 15:14:11 +00:00
gpt-engineer-app[bot] 3bab09d2f8 Add shared audit log viewer
Create a shared component for displaying audit logs, which will be used for both pods and containers. This component will fetch and display audit history from the `/audit/pod/<pod_id>` API, including pagination.
2025-09-01 14:49:46 +00:00
gpt-engineer-app[bot] 9f95915d01 Fix: Handle non-array virtualMachines response
The `groupVirtualMachinesByVDC` function in `InfrastructurePage.tsx` was causing a `TypeError` because `virtualMachines` was not an array. This commit adds a check to ensure `virtualMachines` is an array before attempting to iterate over it, preventing the error.
2025-08-25 14:35:12 +00:00
gpt-engineer-app[bot] 21e76d165f Fix: Workload hosts not defined error
The error "filteredAndSortedHosts is not defined" indicates that the variable `filteredAndSortedHosts` is being used before it has been declared or assigned a value in the `WorkloadHostsPage` component. This likely occurred after the recent changes to group workload hosts by region. The fix will involve ensuring that `filteredAndSortedHosts` is properly defined and populated before it is referenced in the component's render method.
2025-08-25 14:24:31 +00:00
gpt-engineer-app[bot] a112a85813 Group workload hosts by region
Group workload hosts by region ID on the workload hosts list page. Remove the "Infrastructure Hosts" heading and ensure regions can be sorted and filtered.
2025-08-25 14:19:56 +00:00
gpt-engineer-app[bot] bc7774a7c2 Auto-select single network
When filtering networks, if only one network is available, automatically select it to improve user experience and save a click.
2025-08-22 15:39:06 +00:00
gpt-engineer-app[bot] 427e153770 Filter networks by VDC ID
Update the container wizard to filter networks by the selected VDC ID when fetching network data. This change modifies the `useNetworks` hook to accept a `vdcId` parameter and uses it to apply the `virtual_datacenter_id={id}` filter in the API call.
2025-08-22 15:29:34 +00:00
gpt-engineer-app[bot] c9083ef911 Add networks to VDC details
List networks in the VDC details page using the new API endpoint `/networks?virtual_datacenter_id={id}`. Display relevant network parameters such as IPv4 CIDR, gateway, DNS servers, IPv6 CIDR, gateway, VNI, encapsulation, and OVS bridge.
2025-08-22 15:17:32 +00:00
gpt-engineer-app[bot] e180b85544 Fix: Display workload hosts on region details
The commit addresses an issue where workload host information was not being displayed on the region details page. It ensures that the workload host data is correctly fetched and rendered in the UI for each region.
2025-08-22 15:12:51 +00:00
gpt-engineer-app[bot] 673952c5f0 feat: Add delete VDC functionality
Adds a button to the VDC details page to delete a Virtual Data Center. Includes a confirmation dialog and API call for deletion.
2025-08-22 14:54:57 +00:00
gpt-engineer-app[bot] a04452aabe Allow editing country and abbreviation
Allow free text editing for country and abbreviation fields when editing a region. This change will be implemented in the region details editing form.
2025-08-22 14:51:35 +00:00
gpt-engineer-app[bot] be08c44931 Refactor back button component
Create a shared component for the "Back to list" button to ensure consistent styling and visibility across all detail pages. This component will be used on various detail views, including project and workload host details.
2025-08-22 14:39:41 +00:00
gpt-engineer-app[bot] 6453334052 Fix duplicate API error logging
The AI implemented the plan to fix duplicate logging of failed API requests. The catch block in `src/services/xcloudifyApi.ts` was modified to prevent re-logging of `XCloudifyApiError` instances, ensuring that only network errors are logged in such cases.
2025-08-22 14:34:46 +00:00
gpt-engineer-app[bot] 02c963f6c0 Update VDC API endpoint
Changed the VDC API endpoint for fetching VDCs by project from `/virtual_data_centers/by_project/<project_id>` to `/virtual_data_centers?project_id=<project_id>`. This change was made in `src/services/xcloudifyApi.ts`.
2025-08-22 14:32:06 +00:00
gpt-engineer-app[bot] 8709fbeba4 Fix: Delete button not working
The delete button on the workload host details page is not performing any action. This commit addresses the issue by ensuring the delete functionality is correctly implemented and triggered.
2025-08-22 14:14:36 +00:00
gpt-engineer-app[bot] 6ec462fe14 feat: Add delete workload host button
Adds a delete button to the workload host details page. This button triggers a confirmation dialog, which is implemented as a reusable component to be used across the application.
2025-08-22 14:08:30 +00:00
gpt-engineer-app[bot] 6673bb2b4f Add filter for offline hosts
Add a 'Hide offline hosts' button to the Infrastructure Hosts list view. This filter is enabled by default and will show only 'online' hosts.
2025-08-22 05:57:59 +00:00
gpt-engineer-app[bot] dc0bd07af7 Update region details API call
Change the API endpoint for fetching virtual data centers by region in the region details page. The call will be updated from `/virtual_data_centers/by_region/<region_id>` to `/virtual_data_centers?region_id=<region_id>`.
2025-08-22 05:49:05 +00:00
gpt-engineer-app[bot] 8f098ed8be Add workload hosts to region details
Fetch and display workload hosts in the region details view. Clicking a workload host will navigate to its details page.
2025-08-22 05:47:00 +00:00
gpt-engineer-app[bot] db5d69d590 Add user profile and console
Add a user profile section in the top right corner displaying the user's name. This section will include a dropdown menu with options for profile management, such as logout and settings. Clicking on "Settings" will display user profile information. Additionally, a developer console section will be included with a checkbox to toggle its visibility. The developer console will be enabled by default, and its state will be managed using a cookie to remember user preferences.
2025-08-22 05:39:46 +00:00
gpt-engineer-app[bot] 69ba7236c0 Log API failure reasons
Log the failure reason for API requests in the developer console, even when the request fails. This ensures that all API call results, including errors, are recorded for debugging purposes.
2025-08-22 05:37:02 +00:00
gpt-engineer-app[bot] f5991638e7 Add VDC list to region details
Fetch and display Virtual Data Centers associated with a region when viewing region details. This involves calling the `/virtual_data_centers/by_region/<region_id>` API endpoint.
2025-08-22 05:29:06 +00:00
gpt-engineer-app[bot] 56241900ea Fix API URL in .env
The API calls were not using the correct URL from the .env file. This commit updates the API URL to use the value specified in the .env file.
2025-08-22 05:25:49 +00:00
gpt-engineer-app[bot] 33fb3b6c58 Add VDC list to project detail
Fetch and display associated Virtual Data Centers when a project detail view is opened.
2025-08-22 05:13:00 +00:00
gpt-engineer-app[bot] be4af152b6 Fix project edit dialog and add region editing
The project edit dialog now appears correctly, similar to the VDC edit dialog fix. Additionally, functionality to edit region names has been added, mirroring the editing capabilities for projects and virtual data centers.
2025-08-22 05:00:52 +00:00
gpt-engineer-app[bot] 6348648b34 Fix VDC edit dialog popup
The VDC edit dialog was not appearing immediately after clicking the "Edit VDC" button. The dialog would only appear after navigating away from the VDC details page and then back to the VDC list. This commit addresses the issue by ensuring the edit dialog pops up correctly when the "Edit VDC" button is clicked.
2025-08-22 04:55:39 +00:00
gpt-engineer-app[bot] 18fa0a9337 Add virtual data center rename
Add functionality to rename virtual data centers, mirroring the project renaming feature.
2025-08-22 04:51:22 +00:00
gpt-engineer-app[bot] e1a5deb646 Add project rename functionality
Implement the ability to rename projects in the admin portal by adding a PUT request to the `/projects/<project_id>` endpoint. This allows updating the project's name, description, status, and visibility.
2025-08-22 04:49:02 +00:00
gpt-engineer-app[bot] 0ab833e00b Fix Dev Bypass button logic
Implement the plan to fix the Dev Bypass button by setting the authentication flag in localStorage and dispatching a custom event before navigating to the dashboard. This ensures the route guard correctly identifies the user as authenticated.
2025-08-22 04:08:00 +00:00
gpt-engineer-app[bot] 5c4c7686e6 Refactor download and copy link functionality
The `triggerDownload` function in `certificatesApi.ts` was updated to correctly derive download URLs for both CA and regular certificates. The function now handles opening the download link in a new tab for downloads and the copy link functionality separately, ensuring consistency and fixing the broken download button.
2025-08-19 07:28:36 +00:00
gpt-engineer-app[bot] bdc71b5017 Refactor: Remove duplicate downloadCertificate
Removes the `downloadCertificate` function from `CertificatesPage.tsx` as it is now handled by `certificatesApi.ts`. This consolidates download logic and eliminates redundancy.
2025-08-19 05:13:39 +00:00
gpt-engineer-app[bot] 416a09781e Refactor download logic
Remove manual blob handling and filename extraction in favor of direct URL opening, allowing the browser and API to manage downloads.
2025-08-19 05:07:30 +00:00
gpt-engineer-app[bot] f092a9e537 Fix: Override filename in download
The `triggerDownload` function was overriding the filename set by the server. This commit modifies the function to respect the server-provided filename when downloading certificates.
2025-08-18 15:10:43 +00:00
gpt-engineer-app[bot] 2ae1529b38 Fix certificate revocation
The API was crashing when revoking a certificate due to an incorrect API call that was not handling the response properly, causing a page refresh. This commit addresses the issue by ensuring the correct API call is made and the response is handled appropriately.
2025-08-15 14:45:02 +00:00
gpt-engineer-app[bot] 1cbba8381a Update download certificate URLs
Update the download URLs for CA certificates to `/certificates/ca/<ca_id>/download` and for regular certificates to `/certificates/<ca_id>/download`.
2025-08-15 14:12:28 +00:00
gpt-engineer-app[bot] 134009a44c Fix duplicate downloadCertificate function
The `downloadCertificate` function was defined twice, once in `certificatespage.tsx` and once in `certificatesAPI.tsx`. This commit removes the duplicate definition in `certificatespage.tsx` to resolve the issue.
2025-08-15 14:10:16 +00:00
gpt-engineer-app[bot] f97f9ad6a0 Remove public key download options
Removed the options to download public keys for both CA certificates and regular certificates. This change affects the actions menu in `src/components/CertificatesPage.tsx`.
2025-08-15 06:12:36 +00:00
gpt-engineer-app[bot] ef76881347 Fix CA private key download
Update CA certificate download to use the correct API route for private keys.
2025-08-15 06:11:30 +00:00