Commit Graph

226 Commits

Author SHA1 Message Date
Karthic Rao
2175c68319 Preliminary test case for setup/config/ext.go 2015-06-13 09:54:54 +05:30
Abiola Ibrahim
e0f10c2b03 Gzip: Accept MIME types. 2015-06-10 22:02:08 +01:00
Matt Holt
01aca02edc Merge pull request #129 from tw4452852/rename_internal
internal: rename middleware's package name from `internal` to `inner`
2015-06-10 08:04:27 -06:00
Tw
90921a9deb rename middleware's name from internal to inner
The internal package has the special meaning in go
(see https://golang.org/s/go14internal).
So rename it to `inner`.

Signed-off-by: Tw <tw19881113@gmail.com>
2015-06-10 15:48:41 +08:00
AJ ONeal
d6a7dfc1a5 add ability to do meta redirects
Proper Location redirects are disadvantageous in some situations.
For example, you may want a developer to know that a resource is available
via https, but you don't want an insecure call to the API to succeed.
2015-06-10 05:48:40 +00:00
Zac Bergquist
41e1f1ffa5 Update error strings (start with lowercase letters) 2015-06-07 20:49:17 -04:00
Abiola Ibrahim
c42e60a3d2 Git: fix for data races. 2015-06-07 20:39:24 +01:00
Abiola Ibrahim
c9233d7446 Gzip: Added compression level, extension and path filters. 2015-06-07 01:21:54 +01:00
xenolf
b4780a41d3 Added webhook functionality to the git middleware.
The webhook providers reside behind a small interface which determines if
a provider should run. If a provider should run it delegates
responsibility of the request to the provider.
ghdeploy initial commit

Added webhook functionality to the git middleware.
The webhook providers reside behind a small interface which determines if a provider should run. If a provider should run it delegates responsibility of the request to the provider.

Add tests

Remove old implementation

Fix inconsistency with git interval pulling.

Remove '\n' from logging statements and put the initial pull into a startup function
2015-06-04 03:24:16 +02:00
Matt Holt
6c52368124 tls: Fix format string 2015-06-02 07:42:38 -06:00
Matthew Holt
c78eb50eb8 tls: Client authentication 2015-06-01 23:22:11 -06:00
Austin
2d6ff40649 add supported for ws in reverse proxy 2015-05-29 19:21:50 -07:00
Abiola Ibrahim
2013838bfd Git: mock time functions in tests. 2015-05-28 10:20:26 +01:00
Abiola Ibrahim
879558b9ee Git: code refactor. replace Sleep with Ticker 2015-05-26 20:20:57 +01:00
Abiola Ibrahim
6c6e0e3f73 Git: More tests. Code refactor. 2015-05-26 04:44:47 +01:00
Matthew Holt
6f05794bb8 git: Fixed unusual but potent race condition 2015-05-25 15:39:04 -06:00
Guilherme Rezende
69939108e1 removed tls cache option 2015-05-25 14:42:09 -03:00
Matthew Holt
674f454e70 t.Fatal -> t.Fatalf 2015-05-25 08:27:54 -06:00
Zac Bergquist
e4b50aa814 Fix more lint warnings 2015-05-24 22:52:34 -04:00
Matt Holt
cc958947e5 Merge pull request #83 from abiosoft/master
Git: Minor fixes. Refactor. Added tests.
2015-05-22 17:13:29 -06:00
Abiola Ibrahim
f44cd5d740 Git: Minor fixes. Refactor. Added tests. 2015-05-22 20:50:04 +01:00
Matthew Holt
3420bd6e06 Another test case for parser 2015-05-21 23:50:37 -06:00
Matthew Holt
b10d846019 More parser tests 2015-05-21 23:36:17 -06:00
Matthew Holt
11ddb5c6ca Tests for the parser 2015-05-21 18:46:42 -06:00
Matthew Holt
b37fed4cc8 Beginning some tests for the parser 2015-05-21 16:31:01 -06:00
Matthew Holt
5397eef234 Added tests for allTokens 2015-05-21 15:42:49 -06:00
Matthew Holt
d6df615588 tls: Mainstream compatibility improvements, better security rating 2015-05-21 10:37:39 -06:00
Matthew Holt
ee754b4a47 Bug fixes 2015-05-21 00:40:05 -06:00
Matthew Holt
5f72b7438a Created app package, and better TLS compatibility with HTTP/2 2015-05-21 00:06:53 -06:00
Matthew Holt
5e8491cf7f Allow IPv6 address without port (fixes #80) 2015-05-20 20:15:39 -06:00
Guilherme Rezende
b378316103 replace c.ArgErr with c.Err in tls when is the case 2015-05-18 23:27:35 -03:00
Guilherme Rezende
a94c7dd788 change tls ssl3 protocol key and tests 2015-05-18 18:15:41 -03:00
Guilherme Rezende
823a7eac03 Added tls option block including: ciphers, protocols and cache options
Signed-off-by: Guilherme Rezende <guilhermebr@gmail.com>
2015-05-18 16:38:21 -03:00
Abiola Ibrahim
74d162f377 Rewrite: Support for Regular Expressions. 2015-05-16 13:03:48 +01:00
Abiola Ibrahim
ad7b453f03 Rewrite: modified syntax. 2015-05-15 18:47:26 +01:00
Abiola Ibrahim
b2afc30d12 Rewrite: added regexp. awaiting documentation and tests. 2015-05-15 02:43:29 +01:00
Matt Holt
e2273ea676 Merge pull request #69 from peterhellberg/headers_test
headers: Initial test for Headers and change of Rule.Url to Rule.Path
2015-05-10 07:49:11 -06:00
Peter Hellberg
37b1a81fc7 headers: Corrected copy paste (BasicAuth->Headers) 2015-05-10 07:44:43 +02:00
Matthew Holt
4272536518 markdown: sitegen keyword and run generation at startup
Also fixed bug for markdown files that don't contain front matter
2015-05-09 21:12:52 -06:00
Peter Hellberg
0d5a8a7383 headers: Test for Headers and headersParse funcs 2015-05-09 23:10:18 +02:00
Peter Hellberg
df6efe5d88 headers: Replaced usage of Url to Path in setup 2015-05-09 21:57:55 +02:00
Abiola Ibrahim
978aef2ae7 Merge remote-tracking branch 'upstream/master' 2015-05-08 23:51:09 +01:00
Matthew Holt
2501691ea4 lexer: Fixed backslashes in quoted strings (closes #65) 2015-05-08 10:32:57 -06:00
Abiola Ibrahim
2c7de8f328 Merge remote-tracking branch 'upstream/master' 2015-05-08 06:52:14 +01:00
Matt Holt
557410ffd7 Merge pull request #58 from mschoebel/internal_middleware
Adding "internal" middleware
2015-05-07 13:28:09 -06:00
Matthew Holt
40105094e7 Some tests and utilities for setup functions 2015-05-07 13:11:03 -06:00
Matthew Holt
0dba8d406b NextBlock() doesn't enter an empty block 2015-05-07 13:10:00 -06:00
Abiola Ibrahim
7443fd0973 Merge remote-tracking branch 'upstream/master' 2015-05-07 14:02:40 +01:00
Abiola Ibrahim
ba613a1567 markdown: template integration done. awaiting documentation and test 2015-05-07 13:45:27 +01:00
Abiola Ibrahim
0bfdb50ade markdown: working version of template integration. Awaiting static site generation and tests. 2015-05-07 00:19:02 +01:00
Michael Schoebel
0650dd7171 New internal middleware 2015-05-06 22:44:37 +02:00
Matthew Holt
63ccc626f9 Fix parsing bug for one-line Caddyfiles 2015-05-06 08:58:15 -06:00
Matthew Holt
340a53fb80 Disabling fcgiclient tests until they can be rewritten 2015-05-05 22:53:14 -06:00
Matthew Holt
47717fee88 Expanded index file support to other middlewares (fixes #27) 2015-05-05 15:50:42 -06:00
Matthew Holt
21c26f48d0 Ensure a default root is always set in the configs 2015-05-05 15:48:40 -06:00
Matt Holt
97e702b963 Merge pull request #51 from ChannelMeter/tls/disable-http
tls: suggestion - disable tls if port is http?
2015-05-05 13:35:49 -06:00
Nimi Wariboko Jr
accb3e616d Add warning message when tls is disabled when its used on http 2015-05-05 12:30:24 -07:00
Matthew Holt
33786408f0 Startup/shutdown commands now have stdin 2015-05-05 11:20:57 -06:00
Matthew Holt
9a78857b31 Startup/shutdown commands run in background with & 2015-05-05 11:08:45 -06:00
Matt Holt
1e730a74a0 Merge pull request #50 from ChannelMeter/core/bind_address
core: Add the option to specify what address to bind on in Caddyfile
2015-05-05 00:05:42 -06:00
Nimi Wariboko Jr
46f7930787 Rename bindaddr to just bind 2015-05-04 22:58:08 -07:00
Nimi Wariboko Jr
68793ffe13 Disable tls if the port is http 2015-05-04 22:26:28 -07:00
Nimi Wariboko Jr
d3aedbeb9a core: add bindaddr directive, allowing you to specify what address to listen on 2015-05-04 21:38:49 -07:00
Nimi Wariboko Jr
0ed5b364c6 Refactor proxy middleware so that 1.) From() is exposed 2.) Other upstreams can be implemented/plugged in 2015-05-04 19:58:18 -07:00
Matthew Holt
2dbd14b6dc Consistent app name/version info; pipe config data through stdin 2015-05-04 16:23:16 -06:00
Matthew Holt
088f41b334 Began adding tests 2015-05-04 12:04:14 -06:00
Matthew Holt
e4fdf171c7 More refactoring - nearly complete 2015-05-04 11:49:49 -06:00
Matthew Holt
6029973bdc Major refactoring of middleware and parser in progress 2015-05-04 11:04:37 -06:00
Matthew Holt
995edf0566 Bringing in latest from master; refactoring under way 2015-05-04 11:02:46 -06:00
Damian Gryski
a872ff2d77 config: format string fixes from vet 2015-05-03 19:43:04 +02:00
Matthew Holt
747d59b895 Replace Open with Stat 2015-05-02 11:57:53 -06:00
Matthew Holt
782ba32457 Only a warning if site root doesn't exist 2015-05-01 16:23:28 -06:00
Matthew Holt
d11819721d core: Error if root directory is not found 2015-05-01 13:35:57 -06:00
Abiola Ibrahim
479c611420 Implementation of Git middleware
Defaults path to site root.
2015-05-01 16:41:34 +01:00
Matthew Holt
3bc4e84ed3 Default host is now 0.0.0.0 (wildcard)
Doesn't break using localhost to access the site
2015-04-29 22:30:03 -06:00
Matthew Holt
d00bb87f17 -port flag to override default port
Default port used if none is specified in config
2015-04-28 22:13:00 -06:00
Matthew Holt
24d9d23743 Default port is 2015 2015-04-25 14:28:56 -06:00
Matthew Holt
aa89b95075 Replaced cpu directive with command line flag 2015-04-24 20:08:14 -06:00
Matthew Holt
27fc1672d4 Basic auth middleware 2015-04-23 14:57:07 -06:00
Matthew Holt
e6c5482b7c Slightly more helpful parse error message 2015-04-23 14:39:21 -06:00
Matthew Holt
d088194585 Default port is now 80 2015-04-22 13:22:03 -06:00
Matthew Holt
5f187738e6 Better parse support for files with only an address line 2015-04-22 13:21:51 -06:00
Matthew Holt
3ec870cb56 Templates middleware with "include" functionality 2015-04-18 09:57:51 -06:00
Matthew Holt
cd0421ceb8 Package extension -> extensions 2015-04-18 09:55:02 -06:00
Matthew Holt
e6532b6d85 Multiple addresses may be specified per server block 2015-04-15 23:24:39 -06:00
Matthew Holt
7d96cfa424 Turn off log timestamp for parse errors (easier to read) 2015-04-15 23:17:56 -06:00
Matthew Holt
c7af6725ca Removed Host() and Port() functions from Controller
I don't think they'll be necessary; can get same info from request Host header
2015-04-15 23:17:28 -06:00
Matthew Holt
feec7c5b40 Virtual hosts and SNI support 2015-04-15 14:11:32 -06:00
Matthew Holt
07964a6112 Fixed bug in parser; implicit server block with middleware directives 2015-04-14 13:26:35 -06:00
Matthew Holt
b7c8afab2f Respond with 404 if requesting server's config file 2015-04-12 17:44:02 -06:00
Matthew Holt
db2cd9e941 Renamed extensionless to extension, Extensionless to Ext 2015-04-02 21:59:45 -06:00
Matthew Holt
3e6f5de92f Renamed redirect -> redir 2015-03-31 23:57:09 -06:00
Matthew Holt
058ff94828 Better middleware godoc, fixed ordering too 2015-03-28 16:45:12 -06:00
Matthew Holt
2dc39feabd Tweak to parser and main's error handling 2015-03-28 16:24:00 -06:00
Matthew Holt
da72a5fbcd Controller can register functions to run at shutdown 2015-03-26 23:22:48 -06:00
Matthew Holt
2fbfafc408 New startup and shutdown directives 2015-03-26 09:52:03 -06:00
Matthew Holt
00e43197fd Started browse middleware to list directory contents 2015-03-24 20:12:48 -06:00
Matthew Holt
e62b222372 Couple more controller tests 2015-03-21 15:11:31 -06:00
Matthew Holt
a0e93009f0 Controller tests 2015-03-21 14:50:28 -06:00
Matthew Holt
5d4726446d Finished dispenser tests 2015-03-21 14:36:32 -06:00
Matthew Holt
010ac23e8a More tests! 2015-03-21 11:18:37 -06:00
Matthew Holt
cdfc67db01 Some godoc 2015-03-21 11:04:08 -06:00
Matthew Holt
2fa6129c3a Started dispenser tests 2015-03-20 18:22:22 -06:00
Matthew Holt
bb6a921d1e Tests for location context parsing 2015-03-20 18:13:13 -06:00
Matthew Holt
9aaf81328f There's a std lib function for that 2015-03-20 18:12:53 -06:00
Matthew Holt
35225fe2d3 Docs and comments, la la 2015-03-20 18:11:54 -06:00
Matthew Holt
01266ece6b Minor style nit-pick 2015-03-20 00:03:41 -06:00
Matthew Holt
d7ae9fb4a2 Added markdown middleware 2015-03-16 11:45:51 -06:00
Matthew Holt
af56c5033c New method to get remaining arguments on a line 2015-03-16 11:23:17 -06:00
Matthew Holt
811c6a986f Added WebSocket middleware 2015-03-03 09:49:45 -07:00
Matthew Holt
974acbf38c Partial support for location contexts in config files 2015-03-03 09:49:01 -07:00
Matthew Holt
634b8b707f Slight refactoring/renaming 2015-02-07 22:17:15 -07:00
Matthew Holt
5ae1790e52 Moved controller into its own file; other minor cleanups 2015-01-31 10:15:17 -07:00
Matthew Holt
16997d85eb Made 'extensionless' middleware more modular/useful 2015-01-30 11:09:36 -07:00
Matthew Holt
62d7d61381 Refactored the dispenser/controller 2015-01-30 10:00:41 -07:00
Matthew Holt
ba88be0fe9 Allow nil middleware to be returned
In case a middleware actually just wants some code to execute at startup... will expand on that idea later.
2015-01-29 23:09:14 -07:00
Matthew Holt
fe62afd3d9 Beginning to move middleware into their own packages 2015-01-29 22:02:17 -07:00
Matthew Holt
a38a2a0e4f Created basic fastcgi middleware layer 2015-01-21 17:51:47 -07:00
Matthew Holt
fe1978c6f5 New 'cpu' directive; now uses all cores by default (if needed) 2015-01-21 14:10:52 -07:00
Matthew Holt
509db0b08f Wrote basic tests for parser 2015-01-21 13:19:55 -07:00
Matthew Holt
eae024027f Parser fixes, and now using base filename 2015-01-21 13:19:25 -07:00
Matthew Holt
decfda2705 Made parsing easier in middleware 2015-01-21 12:09:49 -07:00
Matthew Holt
318781512b Wrote lexer tests 2015-01-21 12:09:01 -07:00
Matthew Holt
24fc2ae59e Major refactoring; more modular middleware 2015-01-18 23:11:21 -07:00
Matthew Holt
7b3d005662 Started adding tests 2015-01-13 17:25:55 -07:00
Matthew Holt
4497a16fb0 Early prototype; initial commit 2015-01-13 12:43:45 -07:00