Code Monkey home page Code Monkey logo

monorail's People

Contributors

aartiles avatar ant30 avatar davidmatas avatar dependabot[bot] avatar deploy-systems avatar isartmontane avatar isartmontane-socialbro avatar ivandelcz avatar ivanguardado avatar joncolas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

monorail's Issues

Better copy when deploy ends

Currently, when a deploy ends, the slack messages are just the release create per each project. Should be great if we have a global "Deploy done" before the releases, and in the projects deployed, if there are failures a link to the ciJob which fails instead of "Unhandled error. Monorail will not deploy anything.".

/create-release endpoint fails when pull request body is empty

/create-release monorail endpoint fails when pull request body is empty

image

That happened with these pull requests labeled to be deployed with monorail:

Erros found in monorail logs:

2019-06-03T11:15:18        const match = text.match(regex);
2019-06-03T11:15:18                          ^
2019-06-03T11:15:18
2019-06-03T11:15:18 Cannot read property 'match' of null
2019-06-03T11:15:18    at Object.extract (/app/core/services/boundIssueExtractor.js:22:27)
2019-06-03T11:15:18    at getBoundIssue (/app/core/services/issueReleaseInfo.js:16:48)
2019-06-03T11:15:18    at nextTask (/app/node_modules/async/dist/async.js:5310:14)
2019-06-03T11:15:18    at next (/app/node_modules/async/dist/async.js:5317:9)
2019-06-03T11:15:18    at /app/node_modules/async/dist/async.js:958:16
2019-06-03T11:15:18    at /app/node_modules/github/api/v3.0.0/issues.js:174:17
2019-06-03T11:15:18    at callCallback (/app/node_modules/github/index.js:743:17)
2019-06-03T11:15:18    at IncomingMessage.<anonymous> (/app/node_modules/github/index.js:796:25)
2019-06-03T11:15:18    at emitNone (events.js:110:20)
2019-06-03T11:15:18    at IncomingMessage.emit (events.js:207:7)

Erros found in Check and deploy jenkins job:

curl -s -X POST "http://monorail.host/create-release" -d "pr=10714,10711" -d "tag=v12.2117.0"

<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
</body>
</html>
No JSON object could be decoded
<https://github.com/AudienseCo/socialbro/issues/|#> 

If you need to do rollback, please read https://github.com/AudienseCo/docs/blob/master/Culture/Workflow/Monorail-rollbacks.md
Or use in #systeam_requests : `!monorail rollback on `
curl -s -X POST --data-urlencode payload={"channel": "dev","attachments":[{"pretext": "<https://github.com/AudienseCo/socialbro/releases/tag/v12.2117.0|v12.2117.0 Release>", "text": "<https://github.com/AudienseCo/socialbro/issues/|#> 

If you need to do rollback, please read https://github.com/AudienseCo/docs/blob/master/Culture/Workflow/Monorail-rollbacks.md
Or use in #systeam_requests : `!monorail rollback on `"}], "link_names": 1} https://hooks.slack.com/services/XXXXXX/XXXXXX/XXXXX
ok
curl -s http://monorail.host/release-notes?pr=10714,10711&labels=notify-to:staff -o response-release-notes.txt
No JSON object could be decoded

Bad copy in release message in projects without changes after deploy

When we have multiple projects, when one of them didn't have changes to deploy, so monorail did nothing this message is show:

Monorail will not deploy anything as there are no changes since the last deploy.

And it should be something like:

Monorail didn't deploy anything as there was no changes to deploy.

Is it possible to make the `deployTo` configuration key not mandatory?

I think servicesParam is only usefull when the jenkins job (ciJob) to be executed by monorail is going to deploy over various services, in example, when the jenkins job type is multijob. So it would be nice that deployTo key shouldnt be mandatory.

This is error trace i refer:

Error getting repo config socialbro Error: "servicesParam.paramName" [object Object] c
iJob setting is missing at either system of repository config

Concurrency problem when there are two invocations to deploy

I think the current flow for deploy is:

  1. Create the new branch in git
  2. Call to the ciJob (minutes)
  3. Merge changes in the deployment branch with development branch.
  4. Create the release in git.

If a new deploy is launched before the merges are done in the development branch (step 3), the job en-queued in the ciJob are going to receive different branch names but with the same origin commit. So if we make some changes in the ciJob like generate a code release name, update changelog.txt or similar, the second job is going to fail or break things.

Maybe we could reject the second requested deployment telling the user that there are already one running deployment.

And could be useful if the show changes endpoint report you about this thing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.