sentry-run

Reload code changes using Sentry.run monitor
0.1.4 released

sentry-run

Build Status

A shard using Sentry for reload code changes with Sentry.run.

Installation

Add this to your application's shard.yml:

development_dependencies:
  sentry-run:
    github: faustinoaq/sentry-run

Then run shards update.

Usage

  1. Create a new process with process = Sentry.config(...)
  2. Execute Sentry.run(process) do ... end
require "kemal"
require "sentry-run"

get "/" do
  "Hello world"
end

process = Sentry.config(
  "App",
  "crystal build " + __FILE__,
  "./" + File.basename(__FILE__, ".cr")
)

Sentry.run process do
  Kemal.run
end

You can use Sentry.run for recompile and reload your code without external sentry.cr.

# Default values
# process_name : String
# build_command : String
# run_command : String
# build_args = [] of String
# run_args = [] of String
# files = ["src/**/*.cr", "src/**/*.ecr"]
# should_build = true

How does it work?

Basically this shard checks a sentry.lock file.

When you run your code Sentry.run create a sentry.lock and then yield a block. After a code change Sentry recompiles your file and rerun a new app instance with run_command in Sentry.config.

Contributing

  1. Fork it ( https://github.com/faustinoaq/sentry-run/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Disclaimer

Sentry.run is intended for use in a development environment.

Contributors

  • faustinoaq Faustino Aguilar - creator, maintainer
sentry-run:
  github: faustinoaq/sentry-run
  version: ~> 0.1.4
License MIT
Crystal none

Authors

Dependencies 1

  • sentry
    {'github' => 'samueleaton/sentry'}

Development Dependencies 0

Dependents 0

Last synced .
search fire star recently