Files
msa-django-nhn/nhn/urls.py
icurfer 8c7739ffad
Some checks failed
Build and Push Docker Image / build (push) Has been cancelled
Add NHN Cloud API integration with async task support
- 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>
2026-01-14 01:29:21 +09:00

53 lines
3.0 KiB
Python

"""
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"),
]