Skip to content

Commit

Permalink
1.39.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
baumandm committed Sep 29, 2016
1 parent d9f6710 commit 6aa99e4
Show file tree
Hide file tree
Showing 25 changed files with 554 additions and 75 deletions.
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
# 1.39.0 (09/28/2016)

## Features

- SSL/TLS: Proxy server initializes itself with a list of trusted root CAs. Added server option for manually providing CAs to trust when executing HTTPS requests

## Bug Fixes

- Parameters: Serialize Parameters with a Moment.js moment value into the URL using ISO 8601 format

- Parameters: Fixed scenarios where changing the URL querystring didn't trigger a change in Parameters

- Table Widget: Fixed Column Grouping when used with Pagination

- Export: Fixed scenarios where Dashboard Parameters were excluded from Export

- Export: Disabled browser check dialog from appearing on exported Dashboards

- Export: Fixed exporting of Dashboards with no pages

- Fixed various HTTP requests to use current protocol and correctly append URI segements

## Breaking Changes

- Removed custom HTTP/HTTPS pool with maxSockets: infinity. This is now the default value in Node.js v0.12.0 and above, so only older versions of Node.js will be affected. As a workaround for older versions of Node.js, set http(s).globalAgent.maxSockets = infinity.

# 1.38.0 (09/02/2016)

## Features
Expand Down
9 changes: 6 additions & 3 deletions cyclotron-site/app/partials/editor/propertySet.jade
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,12 @@
ng-required='{{ value.required }}', placeholder='{{ value.placeholder }}',
type='{{ value.inputType || "text" }}', ng-switch-default)

select.form-control(ng-model='model[value.name]', ng-if='value.options', title='{{ value.description }}'
ng-options='optionValue.value as optionKey for (optionKey, optionValue) in getOptions(value.name, value.options)')
option(value='')
span(ng-if='value.options', ng-switch='value.type')
editor-view-string-array(model='model[value.name]', label='{{ value.label }}', definition='value', ng-switch-when='string[]')

select.form-control(ng-model='model[value.name]', ng-switch-default, title='{{ value.description }}'
ng-options='optionValue.value as optionKey for (optionKey, optionValue) in getOptions(value.name, value.options)')
option(value='')

div(ng-hide='hiddenProperties.length == 0')
label Additional Properties
Expand Down
10 changes: 8 additions & 2 deletions cyclotron-site/app/partials/editor/stringArray.jade
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
.well.well-sm
.form-group#editor-array-item(ng-repeat='v in model track by $index')
input.form-control(ng-model='v', ng-change='updateArrayValue($index, v)', placeholder='{{ definition.placeholder }}')

select.form-control(ng-show='definition.options', ng-model='v', ng-change='updateArrayValue($index, v)', title='{{ definition.description }}'
ng-options='optionValue.value as optionKey for (optionKey, optionValue) in definition.options')
option(value='')

input.form-control(ng-hide='definition.options', ng-model='v', ng-change='updateArrayValue($index, v)', placeholder='{{ definition.placeholder }}')

i#editor-array-remove.inline-delete-icon.fa.fa-times(ng-click='removeArrayValue($index)', title='Remove this value')

.horizontal-add.button-group
button#editor-array-add.btn.btn-default(type='button', ng-click='addArrayValue()', title='Add {{ label }}')
i.fa.fa-plus
span Add {{ label }}


4 changes: 2 additions & 2 deletions cyclotron-site/app/partials/help/3rdparty.jade
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,11 @@ table
tr
td
a(href='http://www.highcharts.com/', target='_blank') Highcharts
td 4.1.9
td 4.2.7
td Highcharts is a charting library written in pure HTML5/JavaScript
tr
td Highcharts-more
td 4.1.9
td 4.2.6
td Additional Highcharts package containing extra modules
tr
td
Expand Down
47 changes: 47 additions & 0 deletions cyclotron-site/app/partials/help/datasources/cloudwatch.jade
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
h3 CloudWatch Data Source

p The CloudWatch Data Source is a thin wrapper around the Amazon CloudWatch API, making it easier to submit queries and retrieve the results. For more fine-tuned control around the requests, it may be preferable to use the JSON Data Source instead.

P Please note that it may be necessary to set the optional
em proxy
| property in the Data Source in order to access web sites or services in other domains.
| This property lists other Cyclotron servers which may have the required connectivity.
| By default, this Data Source uses the current Cyclotron environment to proxy the request.

property-table(properties='config.dashboard.properties.dataSources.options.cloudwatch.properties')

h4 AWS Endpoint

p Amazon Web Services offer various regional endpoints, and the correct endpoint must be used to retrieve the correct CloudWatch metrics. Reger to the list of
a(href='http://docs.aws.amazon.com/general/latest/gr/rande.html#cw_region', target='_blank') AWS Regions and Endpoints
|. The desired Endpoint should be set as the
em url
| property of the Data Source.

h4 Authentication

p The Amazon CloudWatch API requires authentication using AWS IAM credentials, and signs the HTTP requests using Signature Version 4. The
em accessKeyId
| and
em secretAccessKey
| properties are required for this purpose.

h4 CloudWatch Parameters

p The CloudWatch Data Source is configured with one or more CloudWatch API parameters.
em Action
| is required, but other parameters may be optional depending on the chosen action. Please refer to the
a(href='http://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/Welcome.html', target='_blank') Amazon CloudWatch API Reference
| for more information about the available parameters and their useage.


h4 Pre-Processor

p The CloudWatch Data Source supports an optional pre-processor function that will be called before
| the Data Source executes. For more details, see the main Data Sources page.

h4 Post-Processor

p The CloudWatch Data Source supports an optional post-processor function that will be called after
| data is loaded. For more details, see the main Data Sources page.

Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ cyclotronServices.factory 'commonConfigService', ->

exports = {

version: '1.38.0'
version: '1.39.0'

logging:
enableDebug: false
Expand Down Expand Up @@ -581,6 +581,158 @@ cyclotronServices.factory 'commonConfigService', ->
defaultHidden: true
order: 104
options:
cloudwatch:
value: 'cloudwatch'
message: 'Amazon CloudWatch monitors operational and performance metrics for your AWS cloud resources and applications. Refer to the <a href="http://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/Welcome.html" target="_blank">API Documentation</a> for information on configuring the available options.'
icon: 'fa-cloud-download'
properties:
url:
label: 'URL'
description: 'Specifies the Amazon CloudWatch Endpoint for the desired region, e.g. "monitoring.us-west-2.amazonaws.com".'
placeholder: 'CloudWatch Endpoint'
type: 'url'
inlineJs: true
inlineEncryption: true
required: true
order: 10
awsCredentials:
label: 'AWS Credentials'
description: 'AWS IAM signing credentials for making authenticated requests. If set, the request will be signed before it is sent.'
type: 'propertyset'
required: true
order: 12
properties:
accessKeyId:
label: 'Access Key Id'
description: 'AWS access key id'
type: 'string'
placeholder: 'Access Key Id'
inlineJs: true
inlineEncryption: true
order: 1
secretAccessKey:
label: 'Secret Access Key'
description: 'AWS sercet access key'
type: 'string'
placeholder: 'Secret Access Key'
inlineJs: true
inlineEncryption: true
order: 2
parameters:
label: 'CloudWatch Parameters'
description: 'Set of parameters for the CloudWatch API.'
type: 'propertyset'
required: true
order: 13
properties:
Action:
label: 'Action'
description: 'Specifies one of the CloudWatch actions.'
type: 'string'
default: 'auto'
inlineJs: true
options:
ListMetrics:
value: 'ListMetrics'
GetMetricStatistics:
value: 'GetMetricStatistics'
required: true
order: 1
Namespace:
label: 'Namespace'
description: 'The namespace to filter against.'
type: 'string'
inlineJs: true
required: false
order: 2
MeasureName:
label: 'Metric Name'
description: 'The name of the metric to filter against.'
type: 'string'
inlineJs: true
required: false
order: 3
Dimensions:
label: 'Dimensions'
description: 'Optional; a list of Dimension key/values to filter against.'
type: 'hash'
required: false
inlineJsValue: true
inlineEncryption: true
order: 4
Statistics:
label: 'Statistics'
description: 'Specifies one or more Statistics to return.'
type: 'string[]'
inlineJs: true
options:
SampleCount:
value: 'SampleCount'
Average:
value: 'Average'
Sum:
value: 'Sum'
Minimum:
value: 'Minimum'
Maximum:
value: 'Maximum'
required: true
order: 5
Period:
label: 'Period'
description: 'The granularity, in seconds, of the returned datapoints. A Period can be as short as one minute (60 seconds) or as long as one day (86,400 seconds), and must be a multiple of 60.'
type: 'integer'
default: 60
required: false
placeholder: 'Number of Seconds'
order: 6
StartTime:
label: 'Start Time'
description: 'The date/time of the first datapoint to return. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z).'
type: 'string'
inlineJs: true
required: false
order: 8
EndTime:
label: 'End Time'
description: 'The date/time of the last datapoint to return. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z).'
type: 'string'
inlineJs: true
required: false
order: 9
refresh:
label: 'Auto-Refresh'
description: 'Optional; specifies the number of seconds after which the Data Source reloads'
type: 'integer'
required: false
placeholder: 'Number of Seconds'
order: 15
preProcessor:
label: 'Pre-Processor'
description: 'Specifies an optional JavaScript function that can inspect and modify the Data Source properties before it is executed. This method will be called before the Data Source is executed, and passed the Data Source object as an argument. This object can be modified, or a new/modified object returned. If this value is not an JavaScript function, it will be ignored.'
placeholder: 'JavaScript Function'
type: 'editor'
editorMode: 'javascript'
required: false
defaultHidden: true
order: 16
postProcessor:
label: 'Post-Processor'
description: 'Specifies an optional JavaScript function that can inspect and modify the result before it is sent to the Widgets. If this value is not an JavaScript function, it will be ignored.'
placeholder: 'JavaScript Function'
type: 'editor'
editorMode: 'javascript'
required: false
order: 17
proxy:
label: 'Proxy Server'
description: 'Specifies which Proxy server to route the requests through. If omitted, the default proxy sever will be used.'
type: 'url'
inlineJs: true
required: false
defaultHidden: true
order: 11

cyclotronData:
value: 'cyclotronData'
icon: 'fa-cloud-download'
Expand Down Expand Up @@ -917,6 +1069,30 @@ cyclotronServices.factory 'commonConfigService', ->
required: false
defaultHidden: true
order: 11
awsCredentials:
label: 'AWS Credentials'
description: 'Optional AWS IAM signing credentials for making authenticated requests. If set, the request will be signed before it is sent.'
type: 'propertyset'
required: false
defaultHidden: true
order: 17
properties:
accessKeyId:
label: 'Access Key Id'
description: 'AWS access key id'
type: 'string'
placeholder: 'Access Key Id'
inlineJs: true
inlineEncryption: true
order: 1
secretAccessKey:
label: 'Secret Access Key'
description: 'AWS sercet access key'
type: 'string'
placeholder: 'Secret Access Key'
inlineJs: true
inlineEncryption: true
order: 2

mock:
value: 'mock'
Expand Down
Loading

0 comments on commit 6aa99e4

Please sign in to comment.