diff --git a/.travis.yml b/.travis.yml index 7c9864bc..83fefcb9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,7 @@ before_script: - "bundle exec rakep" - "phantomjs --version" after_script: - - "test $TEST_SUITE = \"ruby\" && travis-artifacts upload --target-path assets/$TRAVIS_BRANCH --path public/scripts:scripts --path public/styles:styles || true" + - "test $TEST_SUITE = \"ruby\" && test $TRAVIS_PULL_REQUEST = \"false\" && travis-artifacts upload --target-path assets/$TRAVIS_BRANCH --path public/scripts:scripts --path public/styles:styles || true" notifications: irc: "irc.freenode.org#travis" diff --git a/assets/scripts/app/controllers/sidebar.coffee b/assets/scripts/app/controllers/sidebar.coffee index ae1d7750..6be0bca5 100644 --- a/assets/scripts/app/controllers/sidebar.coffee +++ b/assets/scripts/app/controllers/sidebar.coffee @@ -1,5 +1,8 @@ Travis.reopen SidebarController: Em.ArrayController.extend + needs: ['runningJobs'] + jobsBinding: 'controllers.runningJobs' + init: -> @_super.apply this, arguments @tickables = [] diff --git a/assets/scripts/app/helpers/helpers.coffee b/assets/scripts/app/helpers/helpers.coffee index a0f28ec5..1268ff15 100644 --- a/assets/scripts/app/helpers/helpers.coffee +++ b/assets/scripts/app/helpers/helpers.coffee @@ -91,3 +91,6 @@ require 'config/emoij' _escape: (text) -> text.replace(/&/g, '&').replace(//g, '>' + configKeys: (config) -> + return [] unless config + $.intersect($.keys(config), Travis.CONFIG_KEYS) diff --git a/assets/scripts/app/models/branch.coffee b/assets/scripts/app/models/branch.coffee index 4b7ce750..3d45d52d 100644 --- a/assets/scripts/app/models/branch.coffee +++ b/assets/scripts/app/models/branch.coffee @@ -1,6 +1,6 @@ require 'travis/model' -@Travis.Branch = Travis.Model.extend Travis.Helpers, +@Travis.Branch = Travis.Model.extend repoId: DS.attr('number', key: 'repository_id') commitId: DS.attr('number') state: DS.attr('string') diff --git a/assets/scripts/app/models/build.coffee b/assets/scripts/app/models/build.coffee index ca3bb292..9906e770 100644 --- a/assets/scripts/app/models/build.coffee +++ b/assets/scripts/app/models/build.coffee @@ -45,12 +45,21 @@ require 'travis/model' @get('jobs').filter (data) -> data.get('allowFailure') ).property('jobs.@each.allowFailure') + rawConfigKeys: (-> + keys = Travis.Helpers.configKeys(@get('config')) + + @get('jobs').forEach (job) -> + Travis.Helpers.configKeys(job.get('config')).forEach (key) -> + keys.pushObject key unless keys.contains key + + keys + ).property('config', 'jobs.@each.config') + configKeys: (-> - return [] unless config = @get('config') - keys = $.intersect($.keys(config), Travis.CONFIG_KEYS) + keys = @get('rawConfigKeys') headers = (I18n.t(key) for key in ['build.job', 'build.duration', 'build.finished_at']) $.map(headers.concat(keys), (key) -> return $.camelize(key)) - ).property('config') + ).property('rawConfigKeys.length') canCancel: (-> @get('state') == 'created' # TODO diff --git a/assets/scripts/app/models/job.coffee b/assets/scripts/app/models/job.coffee index e54a717c..30251213 100644 --- a/assets/scripts/app/models/job.coffee +++ b/assets/scripts/app/models/job.coffee @@ -61,14 +61,14 @@ require 'travis/model' ).property('log.workerName') configValues: (-> - config = @get('config') - buildConfig = @get('build.config') - if config && buildConfig - keys = $.intersect($.keys(buildConfig), Travis.CONFIG_KEYS) + config = @get('config') + keys = @get('build.rawConfigKeys') + + if config && keys keys.map (key) -> config[key] else [] - ).property('config') + ).property('config', 'build.rawConfigKeys.length') canCancel: (-> @get('state') == 'created' || @get('state') == 'queued' # TODO diff --git a/assets/scripts/app/models/log.coffee b/assets/scripts/app/models/log.coffee index 125cdec9..f24711d5 100644 --- a/assets/scripts/app/models/log.coffee +++ b/assets/scripts/app/models/log.coffee @@ -64,7 +64,7 @@ Travis.Log.Request = Em.Object.extend endpoint = Travis.config.api_endpoint staging = if endpoint.match(/-staging/) then '-staging' else '' host = endpoint.replace(/^https?:\/\//, '').split('.').slice(-2).join('.') - "https://s3.amazonaws.com/archive#{staging}.#{host}#{path}/jobs/#{@id}/log.txt" + "https://s3.amazonaws.com/archive#{staging}.#{host}/jobs/#{@get('id')}/log.txt" isJson: (xhr, body) -> # Firefox can't see the Content-Type header on the xhr response due to the wrong diff --git a/assets/scripts/app/templates/builds/show.hbs b/assets/scripts/app/templates/builds/show.hbs index 64ab8d8d..5dc0751b 100644 --- a/assets/scripts/app/templates/builds/show.hbs +++ b/assets/scripts/app/templates/builds/show.hbs @@ -26,7 +26,7 @@
{{t builds.commit}}
{{formatCommit build.commit}}
{{#if build.pullRequest}} -
{{t builds.pullRequest}}
+
{{t builds.pull_request}}
#{{build.pullRequestNumber}} {{build.pullRequestTitle}}
{{else}} {{#if commit.compareUrl}} diff --git a/assets/scripts/app/templates/jobs/running.hbs b/assets/scripts/app/templates/jobs/running.hbs index 44f4e396..6be98a9a 100644 --- a/assets/scripts/app/templates/jobs/running.hbs +++ b/assets/scripts/app/templates/jobs/running.hbs @@ -1,5 +1,3 @@ -

Running Jobs ({{view.jobs.length}})

-