sashakoshka
0f3c563dbf
cmd/stepd: Set up logging after dropping privelege
...
This has to be done because we can't just create a log file as
root and not be able to open it later
2024-12-11 03:13:07 -05:00
sashakoshka
728d50f6b5
openrc: Make init script executable
2024-12-11 02:59:04 -05:00
sashakoshka
45b8eb2a26
Fix install target
2024-12-11 02:54:46 -05:00
sashakoshka
7e708f84f1
Never mind, maybe root shouldn't be building things
2024-12-11 02:53:23 -05:00
sashakoshka
ce6c5b6285
cmd/stepd: Surpress some go vet warnings
2024-12-11 02:50:20 -05:00
sashakoshka
f8b739ac4d
cmd/step: Fix calls to template parsing/loading functions
2024-12-11 02:43:46 -05:00
sashakoshka
09fa576873
Make check target work
2024-12-11 02:42:14 -05:00
sashakoshka
5ba3dfd26f
Improved Makefile install target
2024-12-11 02:41:06 -05:00
sashakoshka
b865dd251c
Improve Makefile
2024-12-11 02:32:08 -05:00
sashakoshka
cbc31b64a8
Add Makefile
2024-12-11 02:28:24 -05:00
sashakoshka
0a040cad92
Ignore build directory
2024-12-11 02:28:15 -05:00
sashakoshka
c48e67e022
openrc: Add untested init script
2024-12-11 02:00:52 -05:00
sashakoshka
f8bbf7f3fc
cmd/stepd: Add privelege dropping
2024-12-11 02:00:24 -05:00
sashakoshka
d24cf1cdc1
cmd/stepd: Remove periods in help text
2024-12-11 01:04:51 -05:00
sashakoshka
32d10ef7c6
providers/http: Remove unnecessary FIXME
2024-12-10 22:07:30 -05:00
sashakoshka
79ac18c8c3
providers/http: Make redirect function better
2024-12-10 21:32:50 -05:00
sashakoshka
efc3fc0990
http: Add an HTTP redirect senteniel error
2024-12-10 21:32:12 -05:00
sashakoshka
bf668b0cf7
Things I did while unable to commit
...
- Log rotation
- Execution cancellation
- HTTP redirect, error functions
- Changed naming of document parsing/loading functions
2024-12-10 20:37:40 -05:00
sashakoshka
f112a2e564
Plugins work now oughghgghughgghg
2024-12-10 15:51:34 -05:00
sashakoshka
c2ccaff8ab
Progress on plugin loading
2024-12-10 14:03:02 -05:00
sashakoshka
df7f3bdadc
Ignore shared objects
2024-12-10 14:02:53 -05:00
sashakoshka
d694a8acf6
examples/testplugin: Add test plugin example
2024-12-10 14:02:21 -05:00
sashakoshka
4c3f0056fd
cmd/stepd: Load plugins from STEP_PLUGIN_PATH
2024-12-10 13:25:32 -05:00
sashakoshka
209270a179
Add untested plugin support
2024-12-10 13:25:20 -05:00
sashakoshka
9a6607494f
cmd/stepd: List all loaded providers on startup
2024-12-10 12:53:15 -05:00
sashakoshka
ab167234d0
Providers are now required to state their name/package
2024-12-10 12:22:58 -05:00
sashakoshka
4a1b78b857
cmd/stepd: Fix pid file being spawned even if not specified
2024-12-10 02:58:50 -05:00
sashakoshka
666a9b0c77
cmd/step: Fix setting providers
2024-12-10 02:53:54 -05:00
sashakoshka
eb7da68de6
providers/os: readDir now returns a slice of fs.DirEntry
2024-12-10 02:18:42 -05:00
sashakoshka
dc378008d6
cmd/stepd: Add config key and arguments for the directory document
2024-12-10 02:12:14 -05:00
sashakoshka
70a1194bca
http: Add the ability to serve a directory
2024-12-10 02:11:45 -05:00
sashakoshka
68c8deb269
cmd/stepd: Automatically forbid the configuration file
2024-12-10 00:39:25 -05:00
sashakoshka
7480742e9e
http: Add mechanism to forbid certain files/directories
2024-12-10 00:38:47 -05:00
sashakoshka
11e8e7460a
cmd/stepd: Configuration file is read and used for the HTTP server
...
Closes #7
2024-12-10 00:29:33 -05:00
sashakoshka
d4d882c40e
Rename Environment.Conf to Config
2024-12-09 23:36:02 -05:00
sashakoshka
a2680c40d2
Silly idea I had
2024-12-09 23:34:14 -05:00
sashakoshka
8084b7749a
Environment configures providers
2024-12-09 23:27:58 -05:00
sashakoshka
433a112875
Add Provider interface
2024-12-09 22:57:59 -05:00
sashakoshka
952ce8f184
Rename plugin.go to provider.go in accordance with #12
2024-12-09 19:32:45 -05:00
sashakoshka
adcb195f78
Add configurable interface
2024-12-09 18:22:48 -05:00
sashakoshka
380a5b9223
Metadata keys can have multiple values
...
Closes #6
2024-12-09 15:53:29 -05:00
sashakoshka
ccff4e56c0
Add DecodeMeta function for decoding metadata from an io.Reader.
2024-12-09 13:48:55 -05:00
sashakoshka
43084fb5bb
Add ability to parse quoted strings in meta
...
This should actually make migration from Caddy easier, because
Caddy's YAML front matter seems to support quoted strings? IDK,
the current Holanet has them. Closes #11
2024-12-09 12:56:16 -05:00
sashakoshka
b14d92205c
Rename a bunch of internal things from frontmatter to meta
2024-12-09 11:58:23 -05:00
sashakoshka
37022e051a
Rename front matter errors to meta errors
2024-12-09 11:56:20 -05:00
sashakoshka
847eff17b9
Split ParseMeta out of SplitMeta
2024-12-09 11:54:53 -05:00
sashakoshka
88c5ef2922
Rename frontmatter.go files to meta.go equivalents
2024-12-09 02:23:06 -05:00
sashakoshka
67480bb974
Rename FrontMatter to Meta
2024-12-09 02:22:37 -05:00
sashakoshka
c618d7bc5e
Add .editorconfig
2024-12-08 20:24:19 -05:00
sashakoshka
a12377b7d6
Ignore stepd.pid
2024-12-08 20:23:50 -05:00
sashakoshka
04149fe218
cmd/stepd: PID file is properly removed now
2024-12-08 20:22:35 -05:00
sashakoshka
e79417ec9d
cmd/stepd: Add periods in the help text
2024-12-08 20:05:04 -05:00
sashakoshka
b6cd237ed3
cmd/stepd: Serve a named directory
...
Closes #8
2024-12-08 20:02:28 -05:00
sashakoshka
d06b03bbfe
cmd/stepd: Write PID file
...
Closes #9
2024-12-08 19:45:14 -05:00
sashakoshka
deb3d7e935
providers/slice: Make the slice functions way better
2024-12-08 19:20:18 -05:00
sashakoshka
947cbc1440
Add type mismatch error
2024-12-08 16:12:54 -05:00
sashakoshka
860d083c11
providers/mime: use Document.Rel
2024-12-08 03:28:57 -05:00
sashakoshka
52b8b5a347
providers/import: use Document.Rel
2024-12-08 03:28:48 -05:00
sashakoshka
25541dadfe
providers/os: use Document.Rel
2024-12-08 03:28:33 -05:00
sashakoshka
cc13abd8f8
Documents now make use of relative paths to parse parent documents
2024-12-08 02:57:49 -05:00
sashakoshka
f1fccdc2ae
Add ParseRelative to Environment
2024-12-08 02:51:13 -05:00
sashakoshka
3c9f91a2c9
Add Abs method on Document
2024-12-08 02:51:01 -05:00
sashakoshka
17b6253211
Add Abs method to Document
2024-12-08 02:18:14 -05:00
sashakoshka
efb1f455c9
http: Wrap the recorder instead of the actual response writer
2024-12-08 01:55:02 -05:00
sashakoshka
6f635825a9
http: Make methods of .Data.Res actually work
2024-12-08 01:50:15 -05:00
sashakoshka
3c9eb01790
providers/os: Add appendFile
2024-12-08 01:30:00 -05:00
sashakoshka
889850c04c
Move all http stuff into the http package
2024-12-08 01:01:10 -05:00
sashakoshka
6f04353512
providers/import: Add panic function
2024-12-08 01:00:50 -05:00
sashakoshka
b654829428
providers: Add mime provider
2024-12-08 00:08:38 -05:00
sashakoshka
d76374719d
providers: Add slice functions provider
2024-12-07 22:18:45 -05:00
sashakoshka
7f64686323
providers/os: isFile, isDir no longer return errors, just false
2024-12-07 21:51:57 -05:00
sashakoshka
0d456b7508
providers/os: Change name of fileExists to exists
2024-12-07 21:50:53 -05:00
sashakoshka
891e4dc140
Fix bugs surrounding adding funcs to a template
2024-12-07 21:47:36 -05:00
sashakoshka
5e3421a0a7
providers/path: Add functions to check if a file is hidden
2024-12-07 21:47:11 -05:00
sashakoshka
b7952cf8eb
providers/os: Add functions to check if something is a dir or file
2024-12-07 21:46:43 -05:00
sashakoshka
b66b64a327
Make frontmatter splitting work with CRLF files
2024-12-07 16:25:34 -05:00
sashakoshka
bc08186d30
cmd/stepd: Include error document flag
2024-12-07 13:07:44 -05:00
sashakoshka
5c9168c9b0
providers/http: Include status text in func map
2024-12-07 13:07:26 -05:00
sashakoshka
d67738b29a
assets: Add icon
2024-12-07 13:07:02 -05:00
sashakoshka
a2edaf30e1
Add some TODOs
2024-12-07 03:13:58 -05:00
sashakoshka
006a311aeb
cmd/stepd: Add ability to specify error document
2024-12-07 03:11:12 -05:00
sashakoshka
a7b360cc09
http: Error template documents are supported
2024-12-07 03:10:45 -05:00
sashakoshka
62885b2e37
http: Handler now uses redirects to ensure dirs end on a /
2024-12-07 02:34:40 -05:00
sashakoshka
7c9e1a429e
Move handler out of cmd and into separate pacakge
2024-12-07 02:27:34 -05:00
sashakoshka
e7e31f0e60
providers: Add path functions to supplement sprig's
2024-12-07 02:13:06 -05:00
sashakoshka
30323c0d59
providers/import: Add execute function that returns ExecutionResult
2024-12-07 01:57:53 -05:00
sashakoshka
1b3c1d3585
cmd/stepd: Fix goofy mistakes
2024-12-07 01:41:05 -05:00
sashakoshka
561e72427f
Fix HTTPResponseRecorder playing back a zero status code
2024-12-07 01:40:35 -05:00
sashakoshka
e292c9fbb2
FuncProviderFor now implies FuncProvider
2024-12-07 01:36:06 -05:00
sashakoshka
17bb6a383b
providers: Add import/include provider
2024-12-07 01:35:44 -05:00
sashakoshka
e6415a250b
Add method to Document to get the current environment
2024-12-07 01:29:33 -05:00
sashakoshka
243659e9ee
cmd/stepd: Resetting makes a bit more sense now
2024-12-07 01:20:11 -05:00
sashakoshka
60f1b62965
cmd/stepd: Buffer templates
2024-12-07 00:59:20 -05:00
sashakoshka
c85bd09ac5
Make HTTPResponseRecorder more useful
2024-12-07 00:53:39 -05:00
sashakoshka
af6c705d8c
Add HTTPResponseRecorder
2024-12-07 00:46:24 -05:00
sashakoshka
ed1cdf4e89
cmd/stepd: Get content-type information from front matter
2024-12-06 02:01:10 -05:00
sashakoshka
5b88d13052
Export Document.FrontMatter
2024-12-06 02:00:08 -05:00
sashakoshka
ceff4d1205
Remove ContentType from Document
2024-12-06 01:49:41 -05:00
sashakoshka
489e6a8425
providers: Rename url provider to http
2024-12-06 01:12:09 -05:00
sashakoshka
90183a2759
providers/url: Add ability to parse POST form data
2024-12-06 01:10:29 -05:00