Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4832ecf3e7 | |||
| 2e8ed97355 | |||
| d98839fc19 | |||
| 75555c470b | |||
| b3f3b70b90 | |||
| 924800b7df | |||
| d27da57b02 | |||
| f1a01aed7e | |||
| c1a5771fcd | |||
| 8ac5c36735 | |||
| 6355896584 | |||
| 6216ce455f | |||
| c0832995ae | |||
| 9469b20cbd | |||
| 573457c03f | |||
| 5c395424c6 |
+8
-1
@@ -1,4 +1,11 @@
|
||||
# 3.0.0-beta4 (unreleased)
|
||||
# 3.0.0-beta5 (2016-04-15
|
||||
|
||||
### Bug fixes
|
||||
* **Grafna-cli**: Fixed issue grafana-cli tool, did not detect the right plugin dir, fixes [#4723](https://github.com/grafana/grafana/issues/4723)
|
||||
* **Graph**: Fixed issue with light theme text color issue in tooltip, fixes [#4702](https://github.com/grafana/grafana/issues/4702)
|
||||
* **Snapshot**: Fixed issue with empty snapshots, fixes [#4706](https://github.com/grafana/grafana/issues/4706)
|
||||
|
||||
# 3.0.0-beta4 (2016-04-13)
|
||||
|
||||
### Bug fixes
|
||||
* **Home dashboard**: Fixed issue with permission denied error on home dashboard, fixes [#4686](https://github.com/grafana/grafana/issues/4686)
|
||||
|
||||
@@ -73,7 +73,7 @@ func main() {
|
||||
grunt("test")
|
||||
|
||||
case "package":
|
||||
// grunt("release", fmt.Sprintf("--pkgVer=%v-%v", linuxPackageVersion, linuxPackageIteration))
|
||||
grunt("release", fmt.Sprintf("--pkgVer=%v-%v", linuxPackageVersion, linuxPackageIteration))
|
||||
createLinuxPackages()
|
||||
|
||||
case "pkg-rpm":
|
||||
|
||||
@@ -11,7 +11,7 @@ page_keywords: grafana, installation, debian, ubuntu, guide
|
||||
Description | Download
|
||||
------------ | -------------
|
||||
Stable .deb for Debian-based Linux | [grafana_2.6.0_amd64.deb](https://grafanarel.s3.amazonaws.com/builds/grafana_2.6.0_amd64.deb)
|
||||
Beta .deb for Debian-based Linux | [grafana_3.0.0-beta41460581169_amd64.deb](https://grafanarel.s3.amazonaws.com/builds/grafana_3.0.0-beta41460581169_amd64.deb)
|
||||
Beta .deb for Debian-based Linux | [grafana_3.0.0-beta51460725904_amd64.deb](https://grafanarel.s3.amazonaws.com/builds/grafana_3.0.0-beta51460725904_amd64.deb)
|
||||
|
||||
## Install Stable
|
||||
|
||||
@@ -21,9 +21,9 @@ Beta .deb for Debian-based Linux | [grafana_3.0.0-beta41460581169_amd64.deb](h
|
||||
|
||||
## Install 3.0 Beta
|
||||
|
||||
$ wget https://grafanarel.s3.amazonaws.com/builds/grafana_3.0.0-beta41460581169_amd64.deb
|
||||
$ wget https://grafanarel.s3.amazonaws.com/builds/grafana_3.0.0-beta51460725904_amd64.deb
|
||||
$ sudo apt-get install -y adduser libfontconfig
|
||||
$ sudo dpkg -i grafana_3.0.0-beta41460581169_amd64.deb
|
||||
$ sudo dpkg -i grafana_3.0.0-beta51460725904_amd64.deb
|
||||
|
||||
## APT Repository
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ page_keywords: grafana, installation, centos, fedora, opensuse, redhat, guide
|
||||
Description | Download
|
||||
------------ | -------------
|
||||
Stable .RPM for CentOS / Fedora / OpenSuse / Redhat Linux | [grafana-2.6.0-1.x86_64.rpm](https://grafanarel.s3.amazonaws.com/builds/grafana-2.6.0-1.x86_64.rpm)
|
||||
Beta .RPM for CentOS / Fedor / OpenSuse / Redhat Linux | [grafana-3.0.0-beta41460581169.x86_64.rpm](https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.0-beta41460581169§.x86_64.rpm)
|
||||
Beta .RPM for CentOS / Fedor / OpenSuse / Redhat Linux | [grafana-3.0.0-beta51460725904.x86_64.rpm](https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.0-beta51460725904§.x86_64.rpm)
|
||||
|
||||
## Install Stable Release from package file
|
||||
|
||||
@@ -34,18 +34,18 @@ Or install manually using `rpm`.
|
||||
|
||||
You can install Grafana using Yum directly.
|
||||
|
||||
$ sudo yum install https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.0-beta41460581169.x86_64.rpm
|
||||
$ sudo yum install https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.0-beta51460725904.x86_64.rpm
|
||||
|
||||
Or install manually using `rpm`.
|
||||
|
||||
#### On CentOS / Fedora / Redhat:
|
||||
|
||||
$ sudo yum install initscripts fontconfig
|
||||
$ sudo rpm -Uvh grafana-3.0.0-beta41460581169.x86_64.rpm
|
||||
$ sudo rpm -Uvh grafana-3.0.0-beta51460725904.x86_64.rpm
|
||||
|
||||
#### On OpenSuse:
|
||||
|
||||
$ sudo rpm -i --nodeps grafana-3.0.0-beta41460581169.x86_64.rpm
|
||||
$ sudo rpm -i --nodeps grafana-3.0.0-beta51460725904.x86_64.rpm
|
||||
|
||||
|
||||
## Install via YUM Repository
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"stable": "2.6.0",
|
||||
"testing": "3.0.0-beta3"
|
||||
"testing": "3.0.0-beta4"
|
||||
}
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
"company": "Coding Instinct AB"
|
||||
},
|
||||
"name": "grafana",
|
||||
"version": "3.0.0-beta4",
|
||||
"version": "3.0.0-beta5",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "http://github.com/grafana/grafana.git"
|
||||
|
||||
@@ -8,6 +8,7 @@ import (
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/grafana/grafana/pkg/cmd/grafana-cli/commands"
|
||||
"github.com/grafana/grafana/pkg/cmd/grafana-cli/log"
|
||||
"strings"
|
||||
)
|
||||
|
||||
var version = "master"
|
||||
@@ -17,7 +18,7 @@ func getGrafanaPluginDir() string {
|
||||
defaultNix := "/var/lib/grafana/plugins"
|
||||
|
||||
if currentOS == "windows" {
|
||||
return "..\\data\\plugins"
|
||||
return "C:\\opt\\grafana\\plugins"
|
||||
}
|
||||
|
||||
pwd, err := os.Getwd()
|
||||
@@ -28,16 +29,16 @@ func getGrafanaPluginDir() string {
|
||||
}
|
||||
|
||||
if isDevenvironment(pwd) {
|
||||
return "../data/plugins"
|
||||
return "../../../data/plugins"
|
||||
}
|
||||
|
||||
return defaultNix
|
||||
}
|
||||
|
||||
func isDevenvironment(pwd string) bool {
|
||||
// if ../conf/default.ini exists, grafana is not installed as package
|
||||
_, err := os.Stat("../conf/default.ini")
|
||||
return err != nil
|
||||
// if grafana-cli is executed from the cmd folder we can assume
|
||||
// that its in development environment.
|
||||
return strings.HasSuffix(pwd, "/pkg/cmd/grafana-cli")
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -65,7 +65,7 @@ class MetricsPanelCtrl extends PanelCtrl {
|
||||
var data = this.panel.snapshotData;
|
||||
// backward compatability
|
||||
if (!_.isArray(data)) {
|
||||
data = data;
|
||||
data = data.data;
|
||||
}
|
||||
|
||||
this.events.emit('data-snapshot-load', data);
|
||||
|
||||
@@ -161,7 +161,7 @@ class GraphCtrl extends MetricsPanelCtrl {
|
||||
|
||||
onDataSnapshotLoad(snapshotData) {
|
||||
this.annotationsPromise = this.annotationsSrv.getAnnotations(this.dashboard);
|
||||
this.onDataReceived(snapshotData.data);
|
||||
this.onDataReceived(snapshotData);
|
||||
}
|
||||
|
||||
onDataError(err) {
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
<div class="pluginlist">
|
||||
<div class="pluginlist-section" ng-repeat="category in ctrl.viewModel">
|
||||
<h6 class="pluginlist-section-header">
|
||||
{{category.header}}
|
||||
</h6>
|
||||
<div class="pluginlist-item" ng-repeat="plugin in category.list">
|
||||
<div class="pluginlist-link pluginlist-link-{{plugin.state}} pointer" ng-click="ctrl.gotoPlugin(plugin)">
|
||||
<a href="plugins/{{plugin.id}}/edit">
|
||||
<img ng-src="{{plugin.info.logos.small}}" class="pluginlist-image">
|
||||
<span class="pluginlist-title">{{plugin.name}}</span>
|
||||
<span class="pluginlist-version">v{{plugin.info.version}}</span>
|
||||
</a>
|
||||
<a class="pluginlist-message pluginlist-message--update" ng-show="plugin.hasUpdate" ng-click="ctrl.updateAvailable(plugin, $event)" bs-tooltip="'New version: ' + plugin.latestVersion">
|
||||
Update available!
|
||||
</a>
|
||||
<span class="pluginlist-message pluginlist-message--enable" ng-show="!plugin.enabled && !plugin.hasUpdate">
|
||||
Enable now
|
||||
</span>
|
||||
<span class="pluginlist-message pluginlist-message--no-update" ng-show="plugin.enabled && !plugin.hasUpdate">
|
||||
Up to date
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pluginlist-item" ng-show="category.list.length === 0">
|
||||
<a class="pluginlist-link pluginlist-link-{{plugin.state}}" href="http://grafana.net/plugins/">
|
||||
<span class="pluginlist-none-installed">No additional panels installed. <span class="pluginlist-emphasis">Browse Grafana.net</span></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pluginlist-section" ng-repeat="category in ctrl.viewModel">
|
||||
<h6 class="pluginlist-section-header">
|
||||
{{category.header}}
|
||||
</h6>
|
||||
<div class="pluginlist-item" ng-repeat="plugin in category.list">
|
||||
<a class="pluginlist-link pluginlist-link-{{plugin.state}} pointer" href="plugins/{{plugin.id}}/edit">
|
||||
<span>
|
||||
<img ng-src="{{plugin.info.logos.small}}" class="pluginlist-image">
|
||||
<span class="pluginlist-title">{{plugin.name}}</span>
|
||||
<span class="pluginlist-version">v{{plugin.info.version}}</span>
|
||||
</span>
|
||||
<span class="pluginlist-message pluginlist-message--update" ng-show="plugin.hasUpdate" ng-click="ctrl.updateAvailable(plugin, $event)" bs-tooltip="'New version: ' + plugin.latestVersion">
|
||||
Update available!
|
||||
</span>
|
||||
<span class="pluginlist-message pluginlist-message--enable" ng-show="!plugin.enabled && !plugin.hasUpdate">
|
||||
Enable now
|
||||
</span>
|
||||
<span class="pluginlist-message pluginlist-message--no-update" ng-show="plugin.enabled && !plugin.hasUpdate">
|
||||
Up to date
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="pluginlist-item" ng-show="category.list.length === 0">
|
||||
<a class="pluginlist-link pluginlist-link-{{plugin.state}}" href="http://grafana.net/plugins/">
|
||||
<span class="pluginlist-none-installed">No additional panels installed. <span class="pluginlist-emphasis">Browse Grafana.net</span></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -35,12 +35,14 @@ class PluginListCtrl extends PanelCtrl {
|
||||
this.addEditorTab('Options', 'public/app/plugins/panel/pluginlist/editor.html');
|
||||
}
|
||||
|
||||
gotoPlugin(plugin) {
|
||||
this.$location.path(`plugins/${plugin.id}/edit`);
|
||||
gotoPlugin(plugin, evt) {
|
||||
if (evt) { evt.stopPropagation(); }
|
||||
this.$location.url(`plugins/${plugin.id}/edit`);
|
||||
}
|
||||
|
||||
updateAvailable(plugin, $event) {
|
||||
$event.stopPropagation();
|
||||
$event.preventDefault();
|
||||
|
||||
var modalScope = this.$scope.$new(true);
|
||||
modalScope.plugin = plugin;
|
||||
|
||||
@@ -56,7 +56,7 @@ class SingleStatCtrl extends MetricsPanelCtrl {
|
||||
|
||||
this.events.on('data-received', this.onDataReceived.bind(this));
|
||||
this.events.on('data-error', this.onDataError.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataSnapshotLoad.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataReceived.bind(this));
|
||||
this.events.on('init-edit-mode', this.onInitEditMode.bind(this));
|
||||
}
|
||||
|
||||
@@ -71,10 +71,6 @@ class SingleStatCtrl extends MetricsPanelCtrl {
|
||||
this.render();
|
||||
}
|
||||
|
||||
onDataSnapshotLoad(snapshotData) {
|
||||
this.onDataReceived(snapshotData.data);
|
||||
}
|
||||
|
||||
onDataError(err) {
|
||||
this.onDataReceived({data: []});
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ class TablePanelCtrl extends MetricsPanelCtrl {
|
||||
|
||||
this.events.on('data-received', this.onDataReceived.bind(this));
|
||||
this.events.on('data-error', this.onDataError.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataSnapshotLoad.bind(this));
|
||||
this.events.on('data-snapshot-load', this.onDataReceived.bind(this));
|
||||
this.events.on('init-edit-mode', this.onInitEditMode.bind(this));
|
||||
this.events.on('init-panel-actions', this.onInitPanelActions.bind(this));
|
||||
}
|
||||
@@ -86,10 +86,6 @@ class TablePanelCtrl extends MetricsPanelCtrl {
|
||||
return super.issueQueries(datasource);
|
||||
}
|
||||
|
||||
onDataSnapshotLoad(data) {
|
||||
this.onDataReceived(data.data);
|
||||
}
|
||||
|
||||
onDataError(err) {
|
||||
this.dataRaw = [];
|
||||
this.render();
|
||||
|
||||
@@ -102,7 +102,9 @@ $tight-form-func-bg: #333;
|
||||
$tight-form-func-highlight-bg: #444;
|
||||
|
||||
$modal-background: $black;
|
||||
$code-tag-bg: #444;
|
||||
$code-tag-bg: $dark-5;
|
||||
$code-tag-border: lighten($code-tag-bg, 2%);
|
||||
|
||||
|
||||
// Lists
|
||||
$grafanaListBackground: $dark-3;
|
||||
|
||||
@@ -109,7 +109,8 @@ $tight-form-func-bg: $gray-5;
|
||||
$tight-form-func-highlight-bg: $gray-6;
|
||||
|
||||
$modal-background: $body-bg;
|
||||
$code-tag-bg: $dark-5;
|
||||
$code-tag-bg: $gray-6;
|
||||
$code-tag-border: darken($code-tag-bg, 3%);
|
||||
|
||||
// Lists
|
||||
$grafanaListBackground: $gray-6;
|
||||
@@ -281,7 +282,7 @@ $tooltipColor: $popover-help-color;
|
||||
$tooltipBackground: $popover-help-bg;
|
||||
$tooltipArrowWidth: 5px;
|
||||
$tooltipArrowColor: $tooltipBackground;
|
||||
$tooltipLinkColor: $link-color;
|
||||
$tooltipLinkColor: lighten($popover-help-color, 5%);
|
||||
$graph-tooltip-bg: $gray-5;
|
||||
|
||||
// images
|
||||
|
||||
@@ -10,7 +10,7 @@ pre {
|
||||
font-size: $font-size-base - 2;
|
||||
background-color: $code-tag-bg;
|
||||
color: $text-color;
|
||||
border: 1px solid darken($code-tag-bg, 15%);
|
||||
border: 1px solid $code-tag-border;
|
||||
padding: 10px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
@@ -236,6 +236,7 @@
|
||||
white-space: nowrap;
|
||||
font-size: $font-size-sm;
|
||||
background-color: $graph-tooltip-bg;
|
||||
color: $text-color;
|
||||
|
||||
.graph-tooltip-time {
|
||||
text-align: center;
|
||||
@@ -248,7 +249,7 @@
|
||||
display: table-row;
|
||||
|
||||
&--highlight {
|
||||
color: $link-color;
|
||||
color: $text-color-emphasis;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user