Commit Graph

468 Commits

Author SHA1 Message Date
ekatek
f83c08e8fa introduces the 'meteor admin get-machine' command; changes publish not to publish binary builds
This commit does the following:
- Introduces the get-machine command. This command contacts the build farm server
 gets back a machine reservation and then opens    a secure shell to the machine (Alternatively,
 you can ask for a json). This also involved factoring out some   commands to deal with authenticated
 ddp from package-client into a more general auth-client.

- No longer publish binary builds in publish or publish-release; instead give the user a warning
to run get-machine and then publish-for-arch. Someone could ignore this: --existing-version and
publish-for-arch both publish binary builds, but you need to be    at least somewhat familiar with
what you are doing to run them.      Hopefully, you are running them  from a certified build machine,   but
if you are not,    then, well, it    is your    package.

Stuff remaining:
  - We are going to have a url to external documentation, but I haven't written it yet.
  - We are currently talking to   the test-build server, instead of the build server, so mac doesn't
work.
(Neither of those changes require significant tool changes)
2014-10-14 16:49:50 -07:00
Slava Kim
50338758a4 Bring backwards-compatibility to meteor bundle
This commit introduces some conviluted logic to keep the old behavior of the
meteor bundle command. Hopefully we will drop it soon so we will simplify the
logic.
2014-10-10 13:55:28 -07:00
Emily Stark
cc3fbff888 Clean up error handling for meteor build tarball creation.
Write errors to `Console.stderr`, and exit 1 instead of going on to do
the mobile builds (if any) and exiting 0.
2014-10-09 22:31:15 -07:00
David Greenspan
d7bae95deb Merge branch 'dgreensp-selftests' into 0.9.4
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2014-10-08 15:08:21 -07:00
David Glasser
5590d194c5 debug-only flag only affects bundler, not compiler 2014-10-07 18:26:21 -07:00
Nick Martin
4aa895aa20 Tweak READMEs for built app bundles. 2014-10-07 16:09:20 -07:00
ekatek
192aeed694 move the call to setDebug into the same buildmessage that calls getPackageLoader to be safer about ensureDepsUpToDate 2014-10-07 16:07:25 -07:00
David Greenspan
746fd0f792 Take a ––file regex; comments and usage 2014-10-07 15:59:05 -07:00
ekatek
43eace5af8 allow publication of debugOnly packages 2014-10-07 15:55:50 -07:00
ekatek
e0414f2ed5 allow user to mark packages as debugOnly and not have them bundle in production mode
(still outstanding: changes to package publication workflow)

A package marked debugOnly in the package source is not to be bundled in production.
Moreover, if a package/app depends on a debugOnly package, that entire tree should
not be bundled. (But we should take it into account when figuring out versions!)

Does the following:

- In the catalog, we have a function that takes in a set of versions and a set of original
constraints and traverses it, recursively, to build a subset of versions that we *should*
bundle, and the corresponding subset of versions that we shouldn't (because they are either
debugOnly themselves or pulled in by debugOnly packages). (We do this in the catalog because
it is an addon onto the results of the constraint solver, tied deeply into our representation
of data)

- In the packageLoader, we keep track packages & versions that we should bundle, and also,
packages that we should exclude. We do this in the package-loader because, essentially, that's the
object that we use to keep the results of the constraint-solver, and we already propagate it to all
functions that care about it. (Possibly we should subsequently rename it later).

- In the compiler, when we figure out buildTimeDependencies, we ask if we need to bundle debug
builds. If not, we filter them out (see above). Also, when we actually build together unibuilds,
we don't touch the ones that the packageloader tells us to exclude (which ensures that they don't make
it into the final product).

- In the project, we keep track of whether this project is building in debug mode. That's because the project
is where we keep the state of our curent project that we are building, and if we are ever in the state of
building multiple things, then that's the code that we would need to touch (see also that we make a similar
assumption when solving constraints).

- Adds the option to keepthe project debug-build-free and calls it in commands when approporiate.
2014-10-07 15:55:50 -07:00
David Greenspan
4b1a781755 Support ––file option to self-test 2014-10-07 15:22:20 -07:00
Avital Oliver
18f36bd3c4 Add README for publishing mobile apps on meteor build
1. Add README files for both the ios/ and android/
   subdirectories of a build directory linking to a
   Wiki page with instructions on how to go through
   the publish process for both app stores.

2. To make the README file more visible in iOS projects,
   and to make the ios directory tree mirror the android
   one, place what used to go in <BUILD DIR>/ios/ into
   <BUILD DIR>/ios/project/. <BUILD DIR>/ios/ now only
   contains the README file.
2014-10-07 14:51:45 -07:00
Slava Kim
13861d80e1 meteor build outputs apk 2014-10-06 23:26:55 -07:00
David Glasser
94ab470b2f fix test-packages and clarify utils.parseUrl docs 2014-10-06 21:18:51 -07:00
David Greenspan
ceda65f24b Refactor selftest.runTests and create listTests
Not extensively tested.  Needs comments describing options to the new functions (e.g. getFilteredTests) and updated usage for `meteor self-test ––list`.

Filtering and running tests now proceeds in stages
- Add “pseudo-tags” like non-matching and unchanged
- Remove tests whose tags are in a list of “tags to skip”
- Run or list the resulting TestList
- Optionally report skipped tests
- Optionally save the testState
2014-10-06 17:20:39 -07:00
Emily Stark
87bd6f87d5 Remove warning about --mobile-server.
We no longer need this because we have a decent default for
--mobile-server now.
2014-10-06 11:59:34 -07:00
Sashko Stubailo
94074d5972 Very carefully handle all of the different cases for servers and ports
1. mobile-server passed
2. running on device
3. running on simulator
2014-10-03 21:06:22 -07:00
Emily Stark
07f0c56a85 Preserve --mobile-server setting across hot code pushes.
The server sends hot code push updates to mobile clients with ROOT_URL
and DDP_DEFAULT_CONNECTION_URL taken from the MOBILE_ROOT_URL and
MOBILE_DDP_URL environment variables. These are set by the main meteor
process when it starts the app runner.
2014-10-03 15:46:43 -07:00
Emily Stark
3069788e01 Rework --mobile-server defaults.
* --port now requires a port ('meteor run --port example.com' isn't valid).
* --mobile-server defaults to your detected IP address and the port from
    --port.
* If you provide a value for --mobile-server, we default to http:// as
  the protocol. A host is required for --mobile-server if you don't omit
  the option entirely. Similar for the --server argument to 'meteor
  build'.

This commit includes the 'netroute' npm module as a core package (which
has binary dependencies) for IP detection. It would be nice to put it in
packages/non-core, but I think it has to be a core package in order to
uniload it.
2014-10-03 12:11:44 -07:00
Slava Kim
d42030989d Document the test-app-path option in test-packages
As using it is the only way to run tests on iOS
2014-10-03 12:07:39 -07:00
Justin SB
c50bdca142 Check platform readiness on run & print errors appropriately 2014-10-03 08:07:45 -07:00
Sashko Stubailo
3641e48eb6 Update package skel to include package name and omit "METEOR@" 2014-10-02 17:24:22 -07:00
Slava Kim
55621b5a85 Print the ios-device warning after the tool checked that every platfrom is added 2014-10-02 00:43:42 -07:00
Slava Kim
ef68181947 Use plugins configuration from the mobile control file instead of --settings 2014-09-30 21:25:14 -07:00
Nick Martin
bcacef436e Fix velocity test command for new parsedUrl (e7037b72) 2014-09-30 11:51:16 -07:00
Nick Martin
fc194393b2 Merge branch 'devel' into release-0.9.4
Conflicts:
	tools/help.txt
2014-09-29 21:38:47 -07:00
Sashko Stubailo
7e4848d939 Merge branch 'isopack' into release-0.9.4
Conflicts:
	tools/uniload.js
2014-09-29 20:08:02 -07:00
Ben Newman
f53c12815e Implement a meteor debug command.
Summary:
The `node-inspector` NPM package was added to the dev_bundle by this
recent commit: 64a624ae5c

Task: https://app.asana.com/0/15750483766338/16241466809965

Test Plan:
Add `debugger` statements to server code, run `meteor debug`, visit the
node-inspector URL in a browser, continue the application, and verify that
the debugger stops at the `debugger` statements that were set.

Reviewers: nim, slava, emily, avital, dgreenspan

CC: sashko

Differential Revision: https://phabricator.meteor.com/D827
2014-09-29 22:50:49 -04:00
Nick Martin
99f7c4cd66 comments 2014-09-29 19:27:49 -07:00
Nick Martin
4ba382eff3 Move velocity code to a separate file for easier maintenance. 2014-09-29 18:47:18 -07:00
Emily Stark
59db2ff04b Rename --mobile-server to --server for 'meteor build'. 2014-09-29 18:38:52 -07:00
rissem
251763f2eb clean up velocity --test pull request
- remove hardcoded localhost:3000
- add documentation to command
- remove emoji
2014-09-29 17:58:42 -07:00
rissem
22d48ee0db add --test flag to Meteor CLI for velociy CI support
- establish a DDP connection to Meteor
- subscribe to test results
- hit running web server
- exit with appropriate status code after tests have completed
2014-09-29 17:58:42 -07:00
Sashko Stubailo
8bd7a14993 Merge branch 'release-0.9.4' into isopack 2014-09-29 17:57:15 -07:00
Emily Stark
8aeb0f7e44 Tweak 'meteor build' with no --mobile-server error message. 2014-09-29 17:53:01 -07:00
Emily Stark
1aa1b268b5 Fix 'meteor build' handling of missing --mobile-server 2014-09-29 17:53:01 -07:00
Emily Stark
3746f20e58 Fix default protocol in 'meteor run --mobile-server' 2014-09-29 17:53:01 -07:00
Emily Stark
e4cae7e105 Add back --mobile-port for back compat 2014-09-29 17:53:01 -07:00
Emily Stark
c5fdf45568 Rename 'parseHostPort' to 'parseUrl' and add tests 2014-09-29 17:53:00 -07:00
Emily Stark
257de8a62e WIP: '--mobile-port' to '--mobile-server', and allow https 2014-09-29 17:53:00 -07:00
David Greenspan
98eff9059e Capitalize buildmessages 2014-09-29 16:18:38 -07:00
Sashko Stubailo
7cd12072ea Rename unipackage to isopack in almost all cases 2014-09-29 16:01:08 -07:00
Slava Kim
fff18dc595 Merge branch 'cordova-0.9.4' into release-0.9.4
Some Cordova fixes and the new on-device server
2014-09-29 13:20:31 -07:00
Justin SB
0e79787c17 Make 'meteor run' pretty 2014-09-24 15:53:05 -07:00
Slava Kim
182b80734c Always print a warning when running on a remote device
the new warning message gives user the exact ip address they can use
2014-09-24 11:56:52 -07:00
Sashko Stubailo
b312c1f6e6 Rename Unipackage to Isopack 2014-09-23 19:19:58 -07:00
Sashko Stubailo
4bf93172b6 Rename unipackage.js to isopack.js 2014-09-23 19:17:03 -07:00
Slava Kim
75a1c4c718 Refactor build/bundle. Error when -p is not supplied. 2014-09-23 17:36:56 -07:00
Justin SB
b1e6a2a0ae Cleanup Console code, and make sure we cleanup the poller on exit
Not cleaning up the poller was preventing 'meteor mongo' from exiting cleanly
2014-09-23 05:40:29 -07:00
Justin SB
b9713a02f7 Make deploy pretty also
Still pausing until we merge in the minification changes
2014-09-19 16:20:58 -07:00