Skip to content

Conversation

@AlliumApotheosis
Copy link
Contributor

@heckj
Copy link
Member

heckj commented Aug 25, 2016

👍

@JenkinsRHD
Copy link
Contributor

*** BUILD #152 ***

};
return workflowApiService.createAndRunGraph(configuration);
} else if (node.type === Constants.NodeTypes.Rack) {
return eventsProtocol.publishNodeEvent(node, 'added')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe it's worth to extend to other types of nodes, not only for rack nodes. if you think it's fine, https://github.com/RackHD/on-http/blob/master/lib/services/nodes-api-service.js#L284 https://github.com/RackHD/on-http/blob/master/lib/services/profiles-api-service.js#L224 http://rackhd.readthedocs.io/en/latest/rackhd/event_notification.html#node-events need to be updated for publish events and update docs. I also find https://github.com/RackHD/on-http/blob/master/lib/services/profiles-api-service.js#L216 createNodeAndRunDiscovery() maybe should be located at nodes-api-service.js, not profiles-api-service.js. it could be refined. Sorry for mentioning so much, and out of your original purpose.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know if the event should be triggered for other types of nodes since there's already a 'discovered' event which should be triggered for most node types. "rack" nodes don't have a discovery process though hence this "added" event.

I think that createNodeAndRunDiscovery() is a method of profiles-api-service just for internal use?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's fine to add 'added' to other types of nodes events. it's a pre-discovered state, otherwise, it will be a little difficult for documents, or confuse users in docs.
Forget createNodeAndRunDiscovery(), let me refine it when get a chance :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can do that, but the "added" event will only represent/trigger for nodes added through posts to the api.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @VulpesArtificem

@anhou
Copy link
Member

anhou commented Aug 25, 2016

👍

@JenkinsRHD
Copy link
Contributor

comment by test Jenkins, you can ignore this error
*** BUILD #157 ***
Test Name: Http.Api.Profiles GET /profiles should send down redirect.ipxe if a node is new
Error Details: expected 200 "OK", got 500 "Internal Server Error" Response body: { name: 'TypeError', message: 'waterline.nodes.create(...).tap is not a function', stack: 'TypeError: waterline.nodes.create(...).tap is not a function\n at ProfileApiService.createNodeAndRunDiscovery (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/lib/services/profiles-api-service.js:9:9175)\n at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/lib/services/profiles-api-service.js:9:5876\n at tryCatcher (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/util.js:26:23)\n at Promise._settlePromiseFromHandler (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/promise.js:503:31)\n at Promise._settlePromiseAt (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/promise.js:577:18)\n at Async._drainQueue (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/async.js:128:12)\n at Async._drainQueues (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/async.js:133:10)\n at Immediate.Async.drainQueues as _onImmediate\n at processImmediate as _immediateCallback', context: {} } Error: expected 200 "OK", got 500 "Internal Server Error" at Test._assertStatus (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:232:12) at Test._assertFunction (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:247:11) at Test.assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:148:18) at assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:127:12) at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:124:5 at Test.Request.callback (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3) at IncomingMessage.<anonymous> (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12) at emitNone (events.js:72:20) at IncomingMessage.emit (events.js:166:7) at endReadableNT (_stream_readable.js:913:12) at nextTickCallbackWith2Args (node.js:442:9) at process._tickDomainCallback (node.js:397:17)
Stack Trace: Error: expected 200 "OK", got 500 "Internal Server Error"
at Test._assertStatus (node_modules/supertest/lib/test.js:232:12)
at Test._assertFunction (node_modules/supertest/lib/test.js:247:11)
at Test.assert (node_modules/supertest/lib/test.js:148:18)
at assert (node_modules/supertest/lib/test.js:127:12)
at node_modules/supertest/lib/test.js:124:5
at Test.Request.callback (node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3)
at IncomingMessage.<anonymous> (node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12)
at endReadableNT (_stream_readable.js:913:12)

Test Name: Http.Api.Profiles GET /profiles/switch/:vendor should throw a 400 on a request from an unknown switch vendor
Error Details: expected 400 "Bad Request", got 500 "Internal Server Error" Response body: { name: 'TypeError', message: 'waterline.nodes.create(...).tap is not a function', stack: 'TypeError: waterline.nodes.create(...).tap is not a function\n at ProfileApiService.createNodeAndRunDiscovery (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/lib/services/profiles-api-service.js:9:9175)\n at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/lib/services/profiles-api-service.js:9:5876\n at tryCatcher (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/util.js:26:23)\n at Promise._settlePromiseFromHandler (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/promise.js:503:31)\n at Promise._settlePromiseAt (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/promise.js:577:18)\n at Async._drainQueue (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/async.js:128:12)\n at Async._drainQueues (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/on-core/node_modules/waterline/node_modules/bluebird/js/main/async.js:133:10)\n at Immediate.Async.drainQueues as _onImmediate\n at processImmediate as _immediateCallback', context: {} } Error: expected 400 "Bad Request", got 500 "Internal Server Error" at Test._assertStatus (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:232:12) at Test._assertFunction (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:247:11) at Test.assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:148:18) at assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:127:12) at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:124:5 at Test.Request.callback (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3) at IncomingMessage.<anonymous> (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12) at emitNone (events.js:72:20) at IncomingMessage.emit (events.js:166:7) at endReadableNT (_stream_readable.js:913:12) at nextTickCallbackWith2Args (node.js:442:9) at process._tickDomainCallback (node.js:397:17)
Stack Trace: Error: expected 400 "Bad Request", got 500 "Internal Server Error"
at Test._assertStatus (node_modules/supertest/lib/test.js:232:12)
at Test._assertFunction (node_modules/supertest/lib/test.js:247:11)
at Test.assert (node_modules/supertest/lib/test.js:148:18)
at assert (node_modules/supertest/lib/test.js:127:12)
at node_modules/supertest/lib/test.js:124:5
at Test.Request.callback (node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3)
at IncomingMessage.<anonymous> (node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12)
at endReadableNT (_stream_readable.js:913:12)

Test Name: Http.Api.Profiles SB 2.0 GET /profiles should send down redirect.ipxe if a node is new
Error Details: expected 200 "OK", got 500 "Internal Server Error" Response body: { message: 'TypeError: waterline.nodes.create(...).tap is not a function', status: '500', UUID: 'cfbc6369-326f-4904-83ea-c1c382989481' } Error: expected 200 "OK", got 500 "Internal Server Error" at Test._assertStatus (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:232:12) at Test._assertFunction (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:247:11) at Test.assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:148:18) at assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:127:12) at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:124:5 at Test.Request.callback (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3) at IncomingMessage.<anonymous> (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12) at emitNone (events.js:72:20) at IncomingMessage.emit (events.js:166:7) at endReadableNT (_stream_readable.js:913:12) at nextTickCallbackWith2Args (node.js:442:9) at process._tickDomainCallback (node.js:397:17)
Stack Trace: Error: expected 200 "OK", got 500 "Internal Server Error"
at Test._assertStatus (node_modules/supertest/lib/test.js:232:12)
at Test._assertFunction (node_modules/supertest/lib/test.js:247:11)
at Test.assert (node_modules/supertest/lib/test.js:148:18)
at assert (node_modules/supertest/lib/test.js:127:12)
at node_modules/supertest/lib/test.js:124:5
at Test.Request.callback (node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3)
at IncomingMessage.<anonymous> (node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12)
at endReadableNT (_stream_readable.js:913:12)

Test Name: Http.Api.Profiles 2.0 GET /profiles/switch/:vendor should throw a 400 on a request from an unknown switch vendor
Error Details: expected body '{"message":"waterline.nodes.create(...).tap is not a function","status":"400","UUID":"cc2d1860-4420-4742-b503-273e2fa1d4dd"}' to match /Unknown._vendor/ Response body: { message: 'waterline.nodes.create(...).tap is not a function', status: '400', UUID: 'cc2d1860-4420-4742-b503-273e2fa1d4dd' } Error: expected body '{"message":"waterline.nodes.create(...).tap is not a function","status":"400","UUID":"cc2d1860-4420-4742-b503-273e2fa1d4dd"}' to match /Unknown._vendor/ at error (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:265:13) at Test._assertBody (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:188:18) at Test._assertFunction (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:247:11) at Test.assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:148:18) at assert (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:127:12) at /home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/lib/test.js:124:5 at Test.Request.callback (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3) at IncomingMessage.<anonymous> (/home/onrack/jenkins_slave/workspace/Maglev-BRI-Test/on-http/build/node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12) at emitNone (events.js:72:20) at IncomingMessage.emit (events.js:166:7) at endReadableNT (_stream_readable.js:913:12) at nextTickCallbackWith2Args (node.js:442:9) at process._tickDomainCallback (node.js:397:17)
Stack Trace: Error: expected body '{"message":"waterline.nodes.create(...).tap is not a function","status":"400","UUID":"cc2d1860-4420-4742-b503-273e2fa1d4dd"}' to match /Unknown.*vendor/
at error (node_modules/supertest/lib/test.js:265:13)
at Test._assertBody (node_modules/supertest/lib/test.js:188:18)
at Test._assertFunction (node_modules/supertest/lib/test.js:247:11)
at Test.assert (node_modules/supertest/lib/test.js:148:18)
at assert (node_modules/supertest/lib/test.js:127:12)
at node_modules/supertest/lib/test.js:124:5
at Test.Request.callback (node_modules/supertest/node_modules/superagent/lib/node/index.js:703:3)
at IncomingMessage.<anonymous> (node_modules/supertest/node_modules/superagent/lib/node/index.js:922:12)
at endReadableNT (_stream_readable.js:913:12)

@pscharla
Copy link
Contributor

@RackHD/corecommitters Looks like this one is ready to be merged

@benbp
Copy link
Contributor

benbp commented Aug 25, 2016

👍

@benbp benbp merged commit 137bb9d into RackHD:master Aug 25, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants