diff --git a/devenv/frontend-service/local-cloud-shim/Tiltfile b/devenv/frontend-service/local-cloud-shim/Tiltfile index 1a7f2c2db4b..a1cbd334c5c 100644 --- a/devenv/frontend-service/local-cloud-shim/Tiltfile +++ b/devenv/frontend-service/local-cloud-shim/Tiltfile @@ -1,35 +1,17 @@ -# --- Frontend Build (One-time) +# --- Frontend Build (One-time, no watch) local_resource( 'frontend-assets', cmd='yarn install && yarn dev', dir='../../..', - deps=[ - '../../../public/app', - '../../../packages', - '../../../scripts/webpack', - '../../../tsconfig.json', - '../../../package.json', - '../../../yarn.lock', - ], + allow_parallel=True, labels=["local"] ) -# --- Backend Build +# --- Backend Build (One-time, no watch) local_resource( 'backend-build', cmd='mkdir -p build && bash ./build-grafana.sh', dir='..', - deps=[ - '../../../pkg', - '../../../apps', - '../../../kinds', - '../../../kindsv2', - '../../../local', - '../../../scripts', - '../../../conf', - '../../../go.sum', - '../../../go.mod', - ], allow_parallel=True, labels=["local"] ) @@ -45,5 +27,6 @@ dc_resource("proxy", dc_resource("frontend-service", resource_deps=["frontend-assets", "backend-build"], labels=["services"], + trigger_mode = TRIGGER_MODE_MANUAL ) diff --git a/devenv/frontend-service/local-cloud-shim/mock-data/bootdata.json b/devenv/frontend-service/local-cloud-shim/mock-data/bootdata.json index 9fe61ac82e8..c7c746016aa 100644 --- a/devenv/frontend-service/local-cloud-shim/mock-data/bootdata.json +++ b/devenv/frontend-service/local-cloud-shim/mock-data/bootdata.json @@ -22,7 +22,14 @@ "helpFlags1": 0, "hasEditPermissionInFolders": false, "authenticatedBy": "", - "permissions": {}, + "permissions": { + "datasources:explore": true, + "datasources:query": true, + "datasources:read": true, + "datasources:create": true, + "datasources:write": true, + "datasources:delete": true + }, "analytics": { "identifier": "" } @@ -88,7 +95,7 @@ "http2Enabled": false, "pluginCatalogURL": "https://grafana.com/grafana/plugins/", "pluginAdminEnabled": true, - "pluginAdminExternalManageEnabled": false, + "pluginAdminExternalManageEnabled": true, "pluginCatalogHiddenPlugins": [], "expressionsEnabled": true, "awsAllowedAuthProviders": ["keys"], @@ -133,6 +140,75 @@ "icon": "home-alt", "url": "/", "sortWeight": -4000 + }, + { + "id": "dashboards/browse", + "text": "Dashboards", + "subTitle": "Create and manage dashboards to visualize your data", + "icon": "apps", + "url": "/dashboards", + "sortWeight": -3700, + "children": [ + { + "id": "dashboards/playlists", + "text": "Playlists", + "subTitle": "Groups of dashboards that are displayed in a sequence", + "icon": "presentation-play", + "url": "/playlists" + }, + { + "id": "dashboards/snapshots", + "text": "Snapshots", + "subTitle": "Interactive, publically available, parsing of data", + "icon": "camera", + "url": "/dashboard/snapshots" + }, + { + "id": "dashboards/library-panels", + "text": "Library panels", + "subTitle": "Reusable panels that can be added to multiple dashboards", + "icon": "library-panel", + "url": "/library-panels" + }, + { + "id": "dashboards/public", + "text": "Public dashboards", + "subTitle": "Manage public dashboards", + "url": "/public-dashboards" + }, + { + "id": "dashboards/new", + "text": "New dashboard", + "icon": "plus", + "url": "/dashboard/new", + "hideFromTabs": true, + "isCreateAction": true + }, + { + "id": "dashboards/folder/new", + "text": "New folder", + "icon": "plus", + "url": "/dashboards/folder/new", + "hideFromTabs": true, + "isCreateAction": true + }, + { + "id": "dashboards/import", + "text": "Import dashboard", + "icon": "plus", + "url": "/dashboard/import", + "hideFromTabs": true, + "isCreateAction": true + } + ] + }, + { + "id": "explore", + "text": "Explore", + "subTitle": "Explore your data", + "icon": "compass", + "url": "/explore", + "sortWeight": -3600 } ] } diff --git a/devenv/frontend-service/local-cloud-shim/nginx.conf b/devenv/frontend-service/local-cloud-shim/nginx.conf index d66d54ef4a7..de2536ac213 100644 --- a/devenv/frontend-service/local-cloud-shim/nginx.conf +++ b/devenv/frontend-service/local-cloud-shim/nginx.conf @@ -33,6 +33,10 @@ server { otel_trace_context propagate; otel_span_name "$request_method Request"; + # SSL settings for proxying to HTTPS backend + proxy_ssl_verify off; + proxy_ssl_server_name on; + location ~ ^/-/down/?$ { add_header Set-Cookie "fs_unavailable=true; Max-Age=60; Path=/; HttpOnly" always; return 302 $scheme://$http_host/; @@ -75,7 +79,7 @@ server { } if ($request_method = POST) { - proxy_pass http://backend; + proxy_pass https://backend; break; } @@ -100,7 +104,7 @@ server { return 503 '{"code":"Loading", "message": "Soon!"}'; } - proxy_pass http://backend; + proxy_pass https://backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;