mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
CDN: Fixes cdn path when Grafana is under sub path (#30822)
This commit is contained in:
parent
76d02048fa
commit
64254eaa82
@ -1320,7 +1320,7 @@ func (cfg *Cfg) GetContentDeliveryURL(prefix string) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
url.Path = path.Join(url.Path, prefix, preReleaseFolder, cfg.BuildVersion)
|
url.Path = path.Join(url.Path, prefix, preReleaseFolder, cfg.BuildVersion)
|
||||||
return url.String()
|
return url.String() + "/"
|
||||||
}
|
}
|
||||||
|
|
||||||
return ""
|
return ""
|
||||||
|
@ -398,8 +398,13 @@ func TestGetCDNPath(t *testing.T) {
|
|||||||
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com")
|
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
require.Equal(t, "http://cdn.grafana.com/grafana-oss/v7.5.0-11124", cfg.GetContentDeliveryURL("grafana-oss"))
|
require.Equal(t, "http://cdn.grafana.com/grafana-oss/v7.5.0-11124/", cfg.GetContentDeliveryURL("grafana-oss"))
|
||||||
require.Equal(t, "http://cdn.grafana.com/grafana/v7.5.0-11124", cfg.GetContentDeliveryURL("grafana"))
|
require.Equal(t, "http://cdn.grafana.com/grafana/v7.5.0-11124/", cfg.GetContentDeliveryURL("grafana"))
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestGetContentDeliveryURLWhenNoCDNRootURLIsSet(t *testing.T) {
|
||||||
|
cfg := NewCfg()
|
||||||
|
require.Equal(t, "", cfg.GetContentDeliveryURL("grafana-oss"))
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetCDNPathWithPreReleaseVersionAndSubPath(t *testing.T) {
|
func TestGetCDNPathWithPreReleaseVersionAndSubPath(t *testing.T) {
|
||||||
@ -408,8 +413,8 @@ func TestGetCDNPathWithPreReleaseVersionAndSubPath(t *testing.T) {
|
|||||||
cfg.BuildVersion = "v7.5.0-11124pre"
|
cfg.BuildVersion = "v7.5.0-11124pre"
|
||||||
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com/sub")
|
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com/sub")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, "http://cdn.grafana.com/sub/grafana-oss/pre-releases/v7.5.0-11124pre", cfg.GetContentDeliveryURL("grafana-oss"))
|
require.Equal(t, "http://cdn.grafana.com/sub/grafana-oss/pre-releases/v7.5.0-11124pre/", cfg.GetContentDeliveryURL("grafana-oss"))
|
||||||
require.Equal(t, "http://cdn.grafana.com/sub/grafana/pre-releases/v7.5.0-11124pre", cfg.GetContentDeliveryURL("grafana"))
|
require.Equal(t, "http://cdn.grafana.com/sub/grafana/pre-releases/v7.5.0-11124pre/", cfg.GetContentDeliveryURL("grafana"))
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adding a case for this in case we switch to proper semver version strings
|
// Adding a case for this in case we switch to proper semver version strings
|
||||||
@ -419,6 +424,6 @@ func TestGetCDNPathWithAlphaVersion(t *testing.T) {
|
|||||||
cfg.BuildVersion = "v7.5.0-alpha.11124"
|
cfg.BuildVersion = "v7.5.0-alpha.11124"
|
||||||
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com")
|
cfg.CDNRootURL, err = url.Parse("http://cdn.grafana.com")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, "http://cdn.grafana.com/grafana-oss/pre-releases/v7.5.0-alpha.11124", cfg.GetContentDeliveryURL("grafana-oss"))
|
require.Equal(t, "http://cdn.grafana.com/grafana-oss/pre-releases/v7.5.0-alpha.11124/", cfg.GetContentDeliveryURL("grafana-oss"))
|
||||||
require.Equal(t, "http://cdn.grafana.com/grafana/pre-releases/v7.5.0-alpha.11124", cfg.GetContentDeliveryURL("grafana"))
|
require.Equal(t, "http://cdn.grafana.com/grafana/pre-releases/v7.5.0-alpha.11124/", cfg.GetContentDeliveryURL("grafana"))
|
||||||
}
|
}
|
||||||
|
@ -24,15 +24,15 @@
|
|||||||
|
|
||||||
<link
|
<link
|
||||||
rel="preload"
|
rel="preload"
|
||||||
href="[[.ContentDeliveryURL]]/public/fonts/roboto/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2"
|
href="[[.ContentDeliveryURL]]public/fonts/roboto/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2"
|
||||||
as="font"
|
as="font"
|
||||||
crossorigin
|
crossorigin
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<link rel="icon" type="image/png" href="[[.FavIcon]]" />
|
<link rel="icon" type="image/png" href="[[.FavIcon]]" />
|
||||||
<link rel="apple-touch-icon" sizes="180x180" href="[[.AppleTouchIcon]]" />
|
<link rel="apple-touch-icon" sizes="180x180" href="[[.AppleTouchIcon]]" />
|
||||||
<link rel="mask-icon" href="[[.ContentDeliveryURL]]/public/img/grafana_mask_icon.svg" color="#F05A28" />
|
<link rel="mask-icon" href="[[.ContentDeliveryURL]]public/img/grafana_mask_icon.svg" color="#F05A28" />
|
||||||
<link rel="stylesheet" href="[[.ContentDeliveryURL]]/public/build/grafana.[[ .Theme ]].<%= webpack.hash %>.css" />
|
<link rel="stylesheet" href="[[.ContentDeliveryURL]]public/build/grafana.[[ .Theme ]].<%= webpack.hash %>.css" />
|
||||||
|
|
||||||
<script nonce="[[.Nonce]]">
|
<script nonce="[[.Nonce]]">
|
||||||
performance.mark('css done blocking');
|
performance.mark('css done blocking');
|
||||||
@ -236,8 +236,9 @@
|
|||||||
preloader[0].className = "preloader preloader--done";
|
preloader[0].className = "preloader preloader--done";
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
[[if .ContentDeliveryURL]]
|
||||||
window.public_cdn_path = '[[.ContentDeliveryURL]]/public/build/';
|
window.public_cdn_path = '[[.ContentDeliveryURL]]public/build/';
|
||||||
|
[[end]]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
[[if .GoogleTagManagerId]]
|
[[if .GoogleTagManagerId]]
|
||||||
@ -281,7 +282,7 @@
|
|||||||
<% if (htmlWebpackPlugin.files.jsIntegrity) { %>
|
<% if (htmlWebpackPlugin.files.jsIntegrity) { %>
|
||||||
<script
|
<script
|
||||||
nonce="[[.Nonce]]"
|
nonce="[[.Nonce]]"
|
||||||
src="[[.ContentDeliveryURL]]/<%= htmlWebpackPlugin.files.chunks[key].entry %>"
|
src="[[.ContentDeliveryURL]]<%= htmlWebpackPlugin.files.chunks[key].entry %>"
|
||||||
type="text/javascript"
|
type="text/javascript"
|
||||||
integrity="<%= htmlWebpackPlugin.files.jsIntegrity[htmlWebpackPlugin.files.js.indexOf(htmlWebpackPlugin.files.chunks[key].entry)] %>"
|
integrity="<%= htmlWebpackPlugin.files.jsIntegrity[htmlWebpackPlugin.files.js.indexOf(htmlWebpackPlugin.files.chunks[key].entry)] %>"
|
||||||
crossorigin="<%= webpackConfig.output.crossOriginLoading %>">
|
crossorigin="<%= webpackConfig.output.crossOriginLoading %>">
|
||||||
@ -289,7 +290,7 @@
|
|||||||
<% } else { %>
|
<% } else { %>
|
||||||
<script
|
<script
|
||||||
nonce="[[.Nonce]]"
|
nonce="[[.Nonce]]"
|
||||||
src="[[.ContentDeliveryURL]]/<%= htmlWebpackPlugin.files.chunks[key].entry %>"
|
src="[[.ContentDeliveryURL]]<%= htmlWebpackPlugin.files.chunks[key].entry %>"
|
||||||
type="text/javascript">
|
type="text/javascript">
|
||||||
</script>
|
</script>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
Loading…
Reference in New Issue
Block a user