Commit graph

65 commits

Author SHA1 Message Date
Dominik Sander
8054945593 Merge pull request #2112 from baip/master
Make Docker image runnable as non-root user
2017-10-22 21:42:50 +02:00
Dominik Sander
36ece6cd3b Fix running specs with guard and spring
Updated spring to allow running the specs with guard and spring again.
2017-10-15 12:13:21 +02:00
Peng Bai
c6efb548d7 Make Docker image runnable as non-root user
docker/single-process: add DOCKER_CMD environment variable to trigger
                     worker task (e.g., -e DOCKER_CMD='bin/threaded')
bin/docker_wrapper: a wrapper to chmod -R g=u
2017-10-11 11:29:28 -05:00
Akinori MUSHA
30a4a67a0f Replace references to https://github.com/cantino/huginn with huginn/huginn 2017-09-01 18:56:10 +09:00
Andrew Cantino
69f062f537 Cleanup openshift configuration since it is not supported (#1954) 2017-04-10 15:03:18 +12:00
Dominik Sander
5fbeb105b2 Update gems and configs to Rails5 2016-10-05 22:47:38 +02:00
Akinori MUSHA
fd5bd093ef Update binstubs (spring binstub --all) 2016-10-04 18:57:18 +09:00
Dominik Sander
c608294358 Allow to use spring by setting SPRING in .env 2016-02-14 11:56:58 +01:00
Dominik Sander
06b022f161 Merge pull request #819 from dsander/agent-runner
Add AgentRunner and LongRunnable to support long running agents
2015-09-09 16:36:56 +02:00
Andrew Cantino
84d60e8226 Update setup_heroku 2015-08-31 18:41:27 -07:00
Dominik Sander
991777ca29 Background worker load Dotenv if APP_SECRET_TOKEN is not set
Unified background worker initialization into pre_runner_boot

Set Rails.configuration.cache_classes = true for background workers
2015-08-23 16:58:44 +02:00
Dominik Sander
0f64e4e6b9 Add AgentRunner and LongRunnable to support long running agents
This changes HuginnScheduler and TwitterStream to use the new
AgentRunner

TwitterStream now uses the `twitter` gem to access the streaming API
which removes the `eventmachine` dependency (in production).

Make JabberAgent FormConfigurable and LongRunnable

Expect LongRunnable::Worker#run to be overridden
2015-08-23 16:58:44 +02:00
Andrew Cantino
50ccc2ad34 remove spring loads too 2015-08-16 16:16:04 -07:00
Andrew Cantino
ffe9626475 remove spring because it frequently conflicts with foreman 2015-08-14 19:59:20 -07:00
Andrew Cantino
ea1fb447ca Merge remote-tracking branch 'origin/master' into js_agent_can_be_dryrun 2015-05-23 15:22:12 -07:00
Dominik Sander
fb7e173563 Merge pull request #806 from dsander/fix-class-reloading
requiring twitter_stream in threaded worker fixes ArgumentError
2015-04-25 16:28:33 +02:00
Andrew Cantino
cf5aaf5646 add the postgres addon if no DATABASE_URL is known. 2015-04-25 05:26:22 -07:00
Dominik Sander
582db44791 requiring twitter_stream in threaded worker fixes ArgumentError
The threaded worker threw 'A copy of TwitterStream has been removed from
the module tree but is still active!' when running in development,
explicitly requiring 'twitter_stream' fixes that exception.
2015-04-25 11:11:13 +02:00
Dominik Sander
f3b1176c43 Set rufus sleep interval to 0.3 seconds by default
Before rufus would use 0.0 as the sleep interval if SCHEDULER_FREQUENCY
was not set which caused a significant amout of load due to rufus
running in a loop without sleeping at all
2015-04-22 23:08:20 +02:00
Akinori MUSHA
2352896442 Upgrade spring to 1.3.2 and undo our local patch. 2015-02-16 17:59:03 +09:00
Andrew Cantino
a475066a08 escape passwords going into Heroku; default some questions 2015-02-08 14:13:54 -08:00
Andrew Cantino
5d7b4361fb detect expired heroku creds 2014-12-07 15:39:19 -08:00
Andrew Cantino
22e3d01ab2 clarify openshift 2014-11-02 18:53:16 -08:00
Andrew Cantino
598aa45a2d fix heroku 2014-11-02 15:02:37 -08:00
Andrew Cantino
225d73aca3 Merge branch 'master' into openshift2
Conflicts:
	bin/setup_heroku
2014-11-02 14:31:36 -08:00
Akinori MUSHA
002436fcb0 Change deprecated File.exists? to File.exist?.
Pointed out in #595.
2014-10-28 10:45:27 +09:00
Akinori MUSHA
15484db084 Make the scheduler frequency tunable via ENV. 2014-10-09 19:49:17 +09:00
Andrew Cantino
cffd6dc48a Merge remote-tracking branch 'origin/master' into openshift2
Conflicts:
	bin/setup_heroku
2014-10-05 01:26:04 -07:00
Andrew Cantino
b071f6170d openshift setup is working 2014-10-05 01:13:47 -07:00
Akinori MUSHA
c42489b637 Set origin and rebase on the master if it has not been done.
Fixes #521.
2014-09-29 17:20:18 +09:00
Akinori MUSHA
4ea8752b91 Do not capture stderr when reading heroku config. 2014-09-29 16:39:20 +09:00
Andrew Cantino
7cbd7e6ae3 Merge branch 'master' into twitter_is_optional_too
Conflicts:
	Gemfile
2014-09-23 22:01:24 -07:00
Andrew Cantino
67fa336fb9 fix twitter bug 2014-09-23 21:59:48 -07:00
Andrew Cantino
fdf3565199 twitter agents can be disabled too 2014-09-23 21:22:03 -07:00
Andrew Cantino
ca0234b02d refactor bin/setup_heroku so button users get admin accounts 2014-09-22 22:21:15 -07:00
Akinori MUSHA
53e2c8b4ed Readd Spring fixing a problem with a git-sourced gem.
cf. #478
2014-09-16 18:22:02 +09:00
Akinori MUSHA
1245a1ec9f Load huginn_scheduler first before each thread starts to auto-load files.
This should fix #501.
2014-09-16 17:07:48 +09:00
Akinori MUSHA
8d3159a9f7 Introduce Spring for faster development. 2014-09-04 18:30:29 +09:00
Akinori MUSHA
6691e6db98 Support installation via Heroku button. 2014-08-27 19:32:01 +09:00
Akinori MUSHA
e3f9ac50a9 Enable Graphviz on Heroku.
Graphviz is installed via heroku-buildpack-graphviz-src and the location
of dot(1) is automatically added to PATH.

There is also heroku-buildpack-graphviz-deb which should be easier to
install, but the Debian package installed has a font style problem.
2014-08-08 21:22:21 +09:00
Andrew Cantino
0c63622eb2 exit when username is wrong 2014-07-18 20:38:33 -07:00
Andrew Cantino
8781fd16b5 try again 2014-07-18 19:23:18 -07:00
Andrew Cantino
e21c859dfc Gemfile trickery for Heroku 2014-07-18 18:47:38 -07:00
Andrew Cantino
1f3553dddd trying a custom buildpack to customize Procfile 2014-07-18 18:31:54 -07:00
Andrew Cantino
732d353517 add params to db/seed.rb; provide better heroku login detection 2014-07-16 23:09:39 -07:00
Andrew Cantino
f0697b6db2 heroku setup script 2014-07-15 22:29:30 -07:00
Dominik Sander
8a51dbc4bd Provide an optional threaded background worker
Due to the three background workers (scheduler, twitter stream and delayed job)
huginn needs a lot of memory to run (about 520MB on my dev machine). This PR
introduces an optional threaded background worker which combines the three current
separated processed into one (reducing the memory footprint to ~260MB).
Since just one instance of the of every background processor is running at a time
there should not be any threading related issues.
The main gotcha of this is, that it's most likely not possible to run multiple
delayed job workers concurrently. The ultimate solution would probably be switching
to sidekiq with sidetiq as scheduler, but that is a different task :)

When running on MRI the GIL should not be an issue because it is released for most IO
bound operations (waiting for the database/website/sleeping).
2014-05-12 00:28:07 +02:00
Maximilian Clarke
0f0208a608 Fixed timezones for scheduler 2014-05-04 08:27:51 +02:00
Andrew Cantino
b688c56c67 Merge branch 'master' into dsander-rails41
Conflicts:
	Gemfile
2014-04-24 12:58:09 -05:00
Akinori MUSHA
f059af6f81 Add a schedule every_1m. 2014-04-22 09:31:58 +09:00