Skip to content

Releases: zodern/meteor-up

1.3.0

22 Aug 18:28
Compare
Choose a tag to compare

Hooks

It is now possible to add hooks that run before or after commands. The new --show-hook-names option shows all of the available hooks for a cli command while it is running. Hooks can be a command to run locally or on the servers, or a function.

Plugins

Plugins are npm packages that can add commands (commands can be run from the mup cli or by other plugins), hooks, and config validators. All of the included cli commands and task lists have been moved to plugins.

Changes to Deployment and Deployment validation

This is currently only enabled for the abernix/meteord docker image.

After the bundle is uploaded to each server, a new task is run called "Prepare bundle". It installs the Meteor npm dependencies, rebuilds native modules, and stores the result in a docker image. This has a few benefits:

  • The time in meteor.deployCheckWaitTime no longer needs to include the time to install npm dependencies
  • When installing dependencies fails, it does not continuously restart until meteor.deployCheckWaitTime expires, and running with --verbose shows the full logs from npm install
  • Dependencies are only installed once during each deploy. This means that mup start, mup restart, and mup reconfig are all much faster.

Improved Support for Multiple Servers

  • mup restart restarts only one server at a time
  • Add --servers option to list which servers to use
  • Add support for server specific env variables, which can be configured in meteor.servers.<server name>.env

Config Changes

  • The meteor object has been renamed to app. The meteor object will be supported until Mup 2.0
  • You can remove mongo.port and mongo.oplog from your config since they have never been used

Docs

  • Remove meteor.docker.imagePort, mongo.port, and mongo.oplog from example configs
  • Document meteor.docker.imagePort
  • Update documentation for meteor.deployCheckWaitTime
  • Improve mongo, migration, proxy, and troubleshooting docs

Other Changes

  • The reverse proxy can redirect http to https, configured with proxy.ssl.forceSSL
  • mup setup updates Docker if it is older than 1.13
  • Add mup proxy reconfig-shared to update the server after changing proxy.shared in the config.
  • Remove meteor.deployCheckWaitTime, meteor.docker.imagePort, and mongo.port from default config
  • Renamed the meteor object in the default config to app
  • Improve cli help output (commands have a description, command specific options are documented)
  • Show link to docs when there are validation errors
  • Show validation error when server.pem is a path to a public key
  • Show validation error when app.name has a period
  • Improve some of the validation messages
  • Fix validating proxy.shared.clientUploadLimit
  • Mup displays message and exits if the node version is older than v4
  • Remove unnecessary stack traces when the app's path is incorrect or meteor build fails
  • Add mup meteor restart command
  • Remove mup mongo dump command since it did nothing

1.2.11

14 Jun 17:09
Compare
Choose a tag to compare
  • Deployment verifier shows last 100 lines of the app's log when it fails (it previously was 50 lines)
  • Fix mup setup restarting docker

1.2.10

04 Jun 13:19
Compare
Choose a tag to compare

Deployment verifier no longer requires the HTTP status code to be 200.

1.2.9

03 Jun 18:34
Compare
Choose a tag to compare
  • Add shared nginx proxy
    • Is configured with a proxy object instead of using meteor.ssl and meteor.nginx
    • If multiple apps are deployed to a server, routes requests to the correct container
    • Adds mup proxy command. For a list of subcommands, run mup proxy help
    • Supports using custom certificates. This should be used instead of meteor.ssl since the previous image used for custom certificates had a security vulnerability.
    • Also can set up Let's Encrypt
    • Supports configuring the env variables for the nginx and let's encrypt containers.

Big thanks to @shaiamir for his work on the shared proxy.

  • mup stop also stops nginx proxy and let's encrypt containers
  • App inside container's port is set to docker.imagePort. The app is still accessible on env.PORT.
  • Will build app if cached build is not found and --cached-build flag is set
  • Fix some bugs with verifying deployment
  • Add support for zodern:mup-helpers package. Since version 1.2.7, verifying deployment fails if the app's / route's http code is other than 200, or if it does not redirect on the server to a page that does have that http code. Adding zodern:mup-helpers allows meteor up to sucessfully validate the deployment.

1.2.7

05 May 14:12
Compare
Choose a tag to compare
  • Fix verifying deployment when using ssl autogenerate
  • Add default host to nginx-proxy to redirect unknown hosts to the app when accessed over http
  • Remove force-ssl warning and add a note about redirects to the Troubleshooting guide in the readme
  • Fix example config in readme @meteorplus
  • Fix setting HTTPS_METHOD for nginx-proxy. It will no longer redirect http to https
  • Validator warns when using ssl autogenerate and setting env.PORT.

1.2.5

23 Mar 02:52
Compare
Choose a tag to compare
  • Support changing docker exposed port @abernix
  • New mup docker restart command
  • New mup docker ps command. It accepts all arguments that docker ps accepts
  • Old ssh key and bundle are deleted before uploading new ones
  • Setting up Mongo and Meteor are no longer in parallel
  • --verbose flag also shows output from scripts run on the server
  • MongoDB is safely shutdown for Start Mongo and Stop Mongo task lists
  • Reduced number of dependencies installed
  • Better error message on meteor build spawn error
  • Setup tasks are consistently capitilized
  • Clearer validator message for ROOT_URL
  • Add warning message when using force-ssl without ssl setup
  • Validate meteor.ssl.upload @markreid

1.2.4

13 Mar 15:25
Compare
Choose a tag to compare
  • Add tips to default config, and comment what needs to be changed
  • mup init and mup setup suggests what to do next
  • Startup script is updated during mup reconfig
  • Default build path is consistent between deploys for each app
  • Add --cached-build flag to mup deploy which uses the build from the previous deploy
  • Configure additional docker networks, ip binding, and verification port @giordanocardillo
  • Add --verbose flag to show output from meteor build
  • Handles promise rejections
  • Fix docker not always disconnecting containers from networks @joaolboing
  • Fix stderr sometimes in wrong place in logs
  • Fix some lines in logs would be missing the host name
  • Fix validating buildLocation
  • Fix path to temp folder on Windows

1.2.3

04 Mar 13:59
Compare
Choose a tag to compare
  • Default config uses meteor.docker object instead of dockerImage @maxmatthews
  • Docker args from config are no longer escaped @maxmatthews
  • Add buildLocation for validator @stubbegianni
  • Improved messages from validator
  • Fix nginx-proxy not starting on server restart
  • Fix documentation on changing port @maxmatthews

1.2.2

11 Feb 22:50
Compare
Choose a tag to compare
  • Configure nginx max client upload size, and increase default to 10M (@shadowcodex)
  • Displays better message if it can not find the meteor app
  • Displays message if can not find pem for server
  • Improve validating server's host in config
  • Validator checks for http:// or https:// in ROOT_URL
  • Update documentation on using mup on Windows

1.2.1

09 Feb 02:06
Compare
Choose a tag to compare
  • All paths support "~"
  • Add server and allowIncompatibleUpdates to build config (@alvelig)
  • Allow mobile-settings build option to use settings.json file (@alvelig)
  • Add mup --version command
  • Fix validating env variables and imageFrontendServer