Add NHN Cloud API integration with async task support
Some checks failed
Build and Push Docker Image / build (push) Has been cancelled
Some checks failed
Build and Push Docker Image / build (push) Has been cancelled
- NHN Cloud API packages: token, vpc, compute, nks, storage - REST API endpoints with Swagger documentation - Async task processing for long-running operations - CORS configuration for frontend integration - Enhanced logging for debugging API calls Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
52
nhn/urls.py
Normal file
52
nhn/urls.py
Normal file
@ -0,0 +1,52 @@
|
||||
"""
|
||||
NHN Cloud API URL Configuration
|
||||
"""
|
||||
|
||||
from django.urls import path
|
||||
|
||||
from . import views
|
||||
|
||||
urlpatterns = [
|
||||
# ==================== Token ====================
|
||||
path("token/", views.TokenCreateView.as_view(), name="token-create"),
|
||||
|
||||
# ==================== Compute ====================
|
||||
path("compute/flavors/", views.ComputeFlavorListView.as_view(), name="compute-flavor-list"),
|
||||
path("compute/keypairs/", views.ComputeKeypairListView.as_view(), name="compute-keypair-list"),
|
||||
path("compute/images/", views.ComputeImageListView.as_view(), name="compute-image-list"),
|
||||
path("compute/instances/", views.ComputeInstanceListView.as_view(), name="compute-instance-list"),
|
||||
path("compute/instances/create/", views.ComputeInstanceCreateView.as_view(), name="compute-instance-create"),
|
||||
path("compute/instances/<str:server_id>/", views.ComputeInstanceDetailView.as_view(), name="compute-instance-detail"),
|
||||
path("compute/instances/<str:server_id>/action/", views.ComputeInstanceActionView.as_view(), name="compute-instance-action"),
|
||||
|
||||
# ==================== VPC ====================
|
||||
path("vpc/", views.VpcListView.as_view(), name="vpc-list"),
|
||||
path("vpc/create/", views.VpcCreateView.as_view(), name="vpc-create"),
|
||||
path("vpc/<str:vpc_id>/", views.VpcDetailView.as_view(), name="vpc-detail"),
|
||||
|
||||
# ==================== Subnet ====================
|
||||
path("subnet/", views.SubnetListView.as_view(), name="subnet-list"),
|
||||
path("subnet/create/", views.SubnetCreateView.as_view(), name="subnet-create"),
|
||||
path("subnet/<str:subnet_id>/", views.SubnetDetailView.as_view(), name="subnet-detail"),
|
||||
|
||||
# ==================== Floating IP ====================
|
||||
path("floatingip/", views.FloatingIpListView.as_view(), name="floatingip-list"),
|
||||
|
||||
# ==================== Security Group ====================
|
||||
path("securitygroup/", views.SecurityGroupListView.as_view(), name="securitygroup-list"),
|
||||
|
||||
# ==================== Async Task ====================
|
||||
path("tasks/", views.AsyncTaskListView.as_view(), name="task-list"),
|
||||
path("tasks/<str:task_id>/", views.AsyncTaskDetailView.as_view(), name="task-detail"),
|
||||
|
||||
# ==================== NKS ====================
|
||||
path("nks/clusters/", views.NksClusterListView.as_view(), name="nks-cluster-list"),
|
||||
path("nks/clusters/create/", views.NksClusterCreateView.as_view(), name="nks-cluster-create"),
|
||||
path("nks/clusters/<str:cluster_name>/", views.NksClusterDetailView.as_view(), name="nks-cluster-detail"),
|
||||
path("nks/clusters/<str:cluster_name>/config/", views.NksClusterConfigView.as_view(), name="nks-cluster-config"),
|
||||
|
||||
# ==================== Storage ====================
|
||||
path("storage/containers/", views.StorageContainerListView.as_view(), name="storage-container-list"),
|
||||
path("storage/containers/create/", views.StorageContainerCreateView.as_view(), name="storage-container-create"),
|
||||
path("storage/containers/<str:container_name>/", views.StorageContainerDetailView.as_view(), name="storage-container-detail"),
|
||||
]
|
||||
Reference in New Issue
Block a user