Commit Graph

457 Commits

Author SHA1 Message Date
Joris Vink
a477c9a2a3 Move contrib/examples/generic into the new build framework 2014-08-03 16:59:19 +02:00
Joris Vink
93fd33e00e Big changes to how we handle "static" files.
* Rename static files to assets
* static_* has become asset_*
* Always generate asset.h with the right external symbols
2014-08-03 16:55:16 +02:00
Joris Vink
4b0e4c63f8 Correct http_argument_get_string() macro 2014-08-03 16:43:37 +02:00
Joris Vink
380b7dc1d7 Improvement on the cli commands a bit.
* kore build will now only rebuild what was changed (checking on
  last modified timestamp, not 100% accurate but it'll do).

* introduce kore clean which cleans out object files and the
  resulting .so file
2014-08-03 16:36:16 +02:00
Joris Vink
e74921222c Check if conf/appl.conf exists before continuing with build or run 2014-08-03 15:30:53 +02:00
Joris Vink
f538e92172 Correct typo 2014-08-03 15:22:08 +02:00
Joris Vink
0e2f478c75 Fix http_argument_get_*() integer functions. 2014-08-03 15:20:20 +02:00
Joris Vink
a2897f790c Better sane defaults for kore build (gen certs + ssl_no_compression) 2014-08-03 15:17:03 +02:00
Joris Vink
c078c8a306 Correct order for linking 2014-08-02 13:01:58 +02:00
Joris Vink
5b8c880a62 Don't write the static output to a tmp buf, just write it to disk 2014-08-01 20:25:02 +02:00
Joris Vink
6495e84005 Show the uri to the running kore instance in foreground mode 2014-08-01 20:00:09 +02:00
Joris Vink
23164f636f Sprinkle KORE_BENCHMARK through cli.c 2014-08-01 17:17:34 +02:00
Joris Vink
38edc7d23b Add a warning about the generated certificates 2014-08-01 17:13:38 +02:00
Joris Vink
47ad4fbc28 Have "kore build" generate temp certs as well 2014-08-01 17:10:47 +02:00
Joris Vink
448f1a7912 Don't run cli_cleanup_files() in cli_fatal if theres no rootdir 2014-08-01 16:39:12 +02:00
Joris Vink
5fa964c5c0 gettimeofday() requires sys/time.h 2014-08-01 16:10:37 +02:00
Joris Vink
67c3bd84ba Make cli compile under freebsd 2014-08-01 16:01:33 +02:00
Joris Vink
e29a5461ca Allow kore build to compile static files 2014-08-01 15:55:09 +02:00
Joris Vink
61f56b8da0 Bump copyright 2014-08-01 14:14:46 +02:00
Joris Vink
5d8c29af13 Allow kore build to take compiler via KORE_COMPILER 2014-08-01 14:09:57 +02:00
Joris Vink
ea5b89d20b Move orbit functionality into kore directly.
Makes more sense and reads easier:

kore create myapp
kore build myapp
kore run myapp

Note that kore retains its cli options (if no command was given),
meaning you can still start kore in the traditional way as well.

The command options are simply to make development easier.
2014-08-01 13:59:47 +02:00
Joris Vink
818dd84acd No longer generate .objs as a default for orbit create. 2014-08-01 12:45:31 +02:00
Joris Vink
e57a91a4e0 Create .objs when doing orbit build if it doesnt exist 2014-08-01 12:40:37 +02:00
Joris Vink
0c21c08b6d Hook orbit into the build 2014-08-01 10:46:50 +02:00
Joris Vink
a2a87adf19 Euhm, revert last commit. 2014-08-01 10:33:26 +02:00
Joris Vink
cee7d34020 Properly check for EWOULDBLOCK as well 2014-08-01 10:32:31 +02:00
Joris Vink
a047758df1 Note the BENCHMARK option in README 2014-08-01 10:30:29 +02:00
Joris Vink
c2e4d55235 Add a BENCHMARK compile option which compiles without OpenSSL.
Personally use this for testing Kore its performance without
letting the OpenSSL stack get in the way too much.

Note that it leaves data structures as is, and just removes
any calls to OpenSSL (and removes the linking vs OpenSSL).
2014-08-01 10:22:32 +02:00
Joris Vink
8ff870a352 Remove the ability to pass libs on the cli again.
Sorry, this no longer makes sense in terms of what
orbit is suppose to be doing.
2014-08-01 09:39:09 +02:00
Joris Vink
d6f0b8f8fe Start kore from inside the rootdir when doing orbit run 2014-08-01 09:05:14 +02:00
Joris Vink
65a28e3db3 Allow orbit to build things under OSX 2014-07-31 23:19:18 +02:00
Joris Vink
7a038fce91 Add initial orbit code.
Orbit is a tool used to create/build/run kore code
in a more straight forward way.

Right now, orbit can do the following:

orbit create myapp
orbit build myapp
orbit run myapp

All in the motivation of making it easier to get
started with building Kore libraries and making
life easier on the people hacking Kore things.
2014-07-31 23:12:14 +02:00
Joris Vink
b17eefde1f Allow developers to pass the lib to load on the cli.
When running in -f (foreground) you can now specify
the library Kore needs to load on the command line:

kore -fnc module.conf myapp.so

This has the benefit that your configuration file no
longer needs the load directive when hacking on your code.

Note that you can still specify load in your config file
regardless, if you so chose.

All of this is being done in order to try and move away
from the backwards way of getting up and running with Kore.
2014-07-31 17:15:51 +02:00
Joris Vink
105fb272a0 In foreground mode don't show kore_log() in fatal 2014-07-31 15:12:05 +02:00
Joris Vink
20e2447c90 When running Kore in foreground mode, log to stdout 2014-07-31 14:26:51 +02:00
Joris Vink
ef49a0d4e1 Don't use pidfile if we're in foreground mode 2014-07-31 14:02:33 +02:00
Joris Vink
a664e2a655 Make some configuration options fallback to defaults.
* If no runas_user is given, use current user.
* If no chroot path is given, don't complain if -n
* If no workers is set, use the default 1.
2014-07-31 13:59:42 +02:00
Joris Vink
2d9940e197 Add foreground 2014-07-31 13:43:37 +02:00
Joris Vink
9b76afc5fb Whoops, remove KORE_BENCHMARK that sneaked in 2014-07-31 13:35:39 +02:00
Joris Vink
8812d6989a Allow Kore to be started in foreground mode (-f)
Sending SIGINT or Ctrl-c will reap all workers and
exit again. Useful for development.
2014-07-31 13:27:04 +02:00
Joris Vink
9c4e7c888f kill newline 2014-07-31 12:27:41 +02:00
Joris Vink
7fd936bb94 Add coverity badge, cause why not 2014-07-31 10:41:30 +02:00
Joris Vink
22e1e1c425 Add worker_rlimit_nofiles as a configurable option. 2014-07-31 09:14:03 +02:00
Joris Vink
26d4d5d63b Rework the accept lock.
Kore no longer passes the accept lock to the "next in line"
worker but instead all workers will attempt to grab the lock
if they can.

Also remember if we had the lock previous iteration of the
event loop and don't constantly disable/enable the accepting sockets.

Makes Kore scale even better across multiple cpu's.
2014-07-30 15:20:09 +02:00
Joris Vink
83f890e89e No longer preallocate worker_max_connections for the http pools.
Instead use 10% of worker_max_connections up to a maximum of 1000.
2014-07-30 13:20:27 +02:00
Joris Vink
e1dff2e051 We've become a framework really 2014-07-30 09:43:29 +02:00
Joris Vink
9b13f57711 Add 1.2 release date + spelling 2014-07-30 09:14:36 +02:00
Joris Vink
efe732cc1f Update readme 2014-07-30 09:12:59 +02:00
Joris Vink
cb3322cd9f Make accesslogs optional 2014-07-30 09:11:21 +02:00
Joris Vink
3f853a79ce Add example configuration under conf/ 2014-07-30 09:02:34 +02:00