Javascript error in 3.1.13 trying to create a deployment from a release to environment

Not sure how to reproduce but when trying to create a deployment from a release to a specific environment the deploy button stops working. We believe this is a JS issue on the page but I have not been able to reproduce or see the error. I will add more information if I get more information on this bug.

Hey all,

Some additional information to what Brent posted above. To repro:
OS: Windows 7 Enterprise SP1
Chrome: Version 45.0.2454.101 m
NOTE: It does not seem to happen with Chrome on OSX

  • Click a project
  • Click on the first row “Deploy” in an environment that has not already had a deployment.
    You get the latest release in that project automatically selected with the target environment in which you clicked automatically selected.
    Here is the error stack trace:
TypeError: Cannot read property 'filter' of undefined
    at octopus.min.js:119
    at processQueue (octopus.min.js:19)
    at octopus.min.js:19
    at Scope.parent.$get.Scope.$eval (octopus.min.js:19)
    at Scope.parent.$get.Scope.$digest (octopus.min.js:19)
    at Scope.parent.$get.Scope.$apply (octopus.min.js:19)
    at octopus.min.js:116
    at Object.Octopus.Client.OctopusClient.Octopus.Client.PromiseWrapper.Octopus.Client.Util.ajax.success (octopus.min.js:114)
    at XMLHttpRequest.Octopus.Client.Util.ajax.request.onreadystatechange (octopus.min.js:114)(anonymous function) @ octopus.min.js:19
2octopus.min.js:116 Poll loop destroyed

Hi,

Thanks for reaching out. I’m afraid I wasn’t able to reproduce this error with those instructions on Chrome and Firefox on Windows. Would it be possible for any of you guys to send more detailed steps with screenshots to follow along?

Thanks,

Dalmiro

Ummm we have had it again but I havent been able to reproduce it. It happened again on chrome on windows and it has always been on the deploy release to an environment page. I have not personally seen it but devs in our organization have faced this issue.

Here is another javascript exception we see. On the same page, deploying a release to a particular environment

TypeError: Cannot read property 'Form' of undefined
    at octopus.min.js:119:19013
    at Function._.map._.collect (octopus.min.js:77:25631)
    at _.(anonymous function) [as map] (octopus.min.js:79:12990)
    at Scope.$scope.save (octopus.min.js:119:18768)
    at fn (eval at <anonymous> (octopus.min.js:22:31883), <anonymous>:4:203)
    at callback (octopus.min.js:24:28668)
    at Scope.$eval (octopus.min.js:19:25706)
    at Scope.$apply (octopus.min.js:19:26033)
    at HTMLFormElement.<anonymous> (octopus.min.js:24:28775)
    at HTMLFormElement.jQuery.event.dispatch (octopus.min.js:7:7646)

Hi Brent,

One thing that could be causing this is a browser-cached version of the Octopus UI.

As you may know, we push the entire angular application down to the browser, and just access the API to populate the UI. If the server has had an update, the user’s browser may have a mismatched version of the UI.

When it happens, could you try forcing a refresh to see if that fixes it?

Thanks,
Damo

I doubt this is an issue of assets being cached as this is a brand new server and the people trying this have not logged into the machine wiht any previous version. I will try this from someones machine if this occurs again but this is very much a paint point for us at this point.

Hi Brent,

Thanks for the reply.

Ok, if those are brand new machines, that does sound suspicious. I think we’d need as much info as possible to work out what’s happening.

If an API response from the server is returning erroneous data or an error, I would imagine the JavaScript might show failures like this.

It’d be ideal if you could reproduce this with Dev Tools on so you can check the Network tab for failed HTTP requests, but if there’s a machine or configuration that fails consistently, we could tee up a call so we could watch it fail and investigate?

Damo

Hi Brent,

One other thing, can you let me know whether you can reproduce this with a specific user? If so, can you tell me their permissions?

I have a suspicion there’s an issue getting the deployment preview for some reason and it might be related to their permissions.

Thanks,
Damo

We setup are permissions so people can have read only access for all regions but can not edit or deploy for higher regions. The people who are facing this issue are all people who have restricted visibility in terms of deployments but not the same restriction. Something else to look into is a new install where a deployment for a project has not been released to the environment ever. We are migrating from 2.6.4 to 3.1.3 and restored from backup with the migrator option maxage=0 set.

Also I am actually in India right now so Similar timezone :0. If you wanted to communicate via skype I believe I have reproduced it on a windows machine.

Hi Brent,

Thanks for spending the time on Skype today. I’m glad we actually found the issue!

I’ve created an issue in GitHub that you can follow for a fix.

Thanks,
Damo

Damian,

No problem happy to help solve the issue!

Thanks for the awesome support as always with Octopus Deploy

Brent