-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deployment reorg/refactor as groundwork for multi-language support #723
Conversation
0bff2bf
to
0784308
Compare
}; | ||
|
||
module.exports.py = { | ||
execute: (filepath, relpath) => ['python', filepath + relpath], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've been pruning python
related code for now since nobody is working on it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just here as a placeholder.
@rwaldron this looks like a valuable endeavor. I've was thinking that the only generic behavior that we should keep in |
Transferring, yes. Creating: no. |
3ef11e0
to
263dc0b
Compare
Unless we select a "default language", this is no longer possible:
|
we can't detect a Cargo.toml or Package.json? |
I guess if we special case that scenario. :( The reason this no longer is works is because the whole process needs to already know what language it wants by the time it gets to |
...That still doesn't work. How does
So...
|
@johnnyman727 Almost there. I did not implement Rust deployment, I'll leave that to you. I did implement your changes from |
@johnnyman727 ready for review. |
@rwaldron I won't be able to review until Sunday but I am excited about it. |
|
||
// Internal | ||
var commands = require('./commands'); | ||
var deployLists = require('./deploy-lists'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved to specific language deployment module
var logs = require('../logs'); | ||
var Preferences = require('../preferences'); | ||
// Necessary to ensure that the next line has had the LOCAL_AUTH_PATH descriptor added. | ||
var provision = require('./provision'); // jshint ignore:line | ||
var Tessel = require('./tessel'); | ||
|
||
var binaryModulesUsed = new Map(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved to lib/tessel/deployment/javascript.js
@rwaldron sorry, finally got time to take a look! It looks great with a few minor issues as commented. I was able to reproduce your smoke tests and the path to adding Rust support is clear and logical. 👍 |
0b0da80
to
6d40555
Compare
…mpleExec Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
…ecific deployment commands Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
…TestCode Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
…ipt" centric naming Internals - Renames setExecutablePermissions => chmod; Change signature: (filepath) => (permssion, filepath) Bindings (misc) - t => tessel APIs - Tessel.prototype.deployScript => Tessel.prototype.deploy - Tessel.prototype.restartScript => Tessel.prototype.restart - controller.deployScript => controller.deploy - controller.restartScript => controller.restart - (deploy|actions).runScript => (deploy|actions).run - (deploy|actions).pushScript => (deploy|actions).push Additionally: - Removes unused `script` argument at actions.run/actions.push callsites and defintion Tests: - Primarly updating names - Two cases update the expected arguments for the removal of the unused `script` argument Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
…-specific operations and data Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
…avascript.js Still more granular work to do, but this gets the split in. Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
- deployment.*.lists tests - move js specific stuff: test/unit/deploy => test/unit/deployment/javascript Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
6d40555
to
d09aba5
Compare
@johnnyman727 all review notes are addressed and this has been rebased |
@@ -24,6 +24,7 @@ exports['deployment.resolveLanguage()'] = { | |||
|
|||
jsInferred: function(test) { | |||
test.expect(4); | |||
// Set the stub return value |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the helpful comments
Looks good! Let's merge this behemoth. (assuming Travis gives the green) |
👏 |
🎉 |
1 similar comment
🎉 |
@rwaldron Please take a bow. This is totally awesome. |
WIP
Deployment needs quite a bit of reorganization before any multi-language support can be considered. This PR will track the changes, ideally as each step in a single commit. I'm imposing a strict requirement that all changes must pass the existing tests with little or no changes to the tests (ie. no changes that will alter the operational outcome or semantics).
Much of the work entails:
I will update this list as notable work arises
Signed-off-by: Rick Waldron waldron.rick@gmail.com