Commit graph

167 commits

Author SHA1 Message Date
995593a3b7 Add string input 2016-09-09 16:34:19 +02:00
66d8b71bdf Add dep: libimaginteraction 2016-09-09 16:34:19 +02:00
47c3d0e483 Implement commit_message() 2016-09-09 16:34:19 +02:00
636674b059 All StoreIds point to files, so this check does not make sense here 2016-09-09 12:56:29 +02:00
e49050932a Fix missing parentheses in impl Debug for UpdateHook 2016-09-08 16:53:12 +02:00
0dc2baaee2 Write index after committing 2016-09-08 14:23:10 +02:00
bee4c2002d Write the tree before finding the parent commits 2016-09-08 14:23:10 +02:00
0366d0f8cb Add some debug output if commit worked 2016-09-08 14:23:10 +02:00
0cfeda8652 We only need to pass the local part to git2 here 2016-09-08 14:23:10 +02:00
a4231ac5d8 Add debug output in UpdateHook::access() 2016-09-08 14:23:10 +02:00
8f01cf15e4 Move hook impl to update hook as Store::create() is lazy
As Store::create() is lazy and does not write to disk, we do not have a
file on disk when the post-create-hook runs.

Therefor, the implementation of the git logic has to be in the update
hook.
2016-09-08 14:23:10 +02:00
c19f269f59 Adapt ensure_cfg_branch_is_checked_out() for new Runtime::repository() interface 2016-09-07 22:06:07 +02:00
b50aacbf55 Move error output to Runtime::repository() getter 2016-09-07 22:06:07 +02:00
f86b450cfa Simplify error printing if config value fetching failed 2016-09-07 22:06:07 +02:00
4e2a980599 Refactor Index fetching into helper function 2016-09-07 22:06:07 +02:00
032110e6d8 Rewrite fetch_repo() so we have less overhead in calling this helper 2016-09-07 22:06:07 +02:00
ca47744108 Add StoreAction::uppercase() utility function
For debugging output convenience
2016-09-07 22:06:07 +02:00
741ebff2da Outsource repository fetching into helper fn 2016-09-07 22:06:07 +02:00
fddd6ec4cb Remove unused fn: mkrepo() 2016-09-07 22:06:07 +02:00
9c2f4db03d Remove unused fn: hasrepo() 2016-09-07 22:06:07 +02:00
513a99fca7 Add initial implementation for UpdateHook 2016-09-07 22:05:50 +02:00
6ef6262e54 Add error kind for parent fetching error 2016-09-07 22:05:50 +02:00
242fa863b2 The helper commit_message() really should return an Result<String> 2016-09-07 22:05:50 +02:00
6444f95b58 Reimplement Hook::set_config() for UpdateHook 2016-09-07 22:05:50 +02:00
bcf91780aa impl Debug for UpdateHook 2016-09-07 22:05:50 +02:00
c9c535f46c Add Runtime for UpdateHook 2016-09-07 22:05:50 +02:00
ced6342d01 Use MapIntoHookError for mapping into hook error 2016-09-07 22:05:31 +02:00
ec1b5f7e8b Add IntoHookError for convenience function map_into_hook_error() 2016-09-07 22:05:31 +02:00
ca94a6cb7c Add error kind for index writing error 2016-09-07 22:05:31 +02:00
132d0d2698 Rewrite hook implementation 2016-09-07 22:05:31 +02:00
2929b77248 Add more error kinds 2016-09-07 22:05:31 +02:00
a24981b6b6 use Runtime as GRuntime, for clearness 2016-09-07 22:05:31 +02:00
0e7d1730fc Fix get_bool_cfg() 2016-09-07 22:05:30 +02:00
9e5932f57c Commit with "Initial commit" if there is no parent 2016-09-07 22:05:30 +02:00
ffd71b0907 Add errors for HEAD fetching HEAD-target fetching errors 2016-09-07 22:05:30 +02:00
3f43fa1172 [TMP] 2016-09-07 22:05:30 +02:00
3a6f469b7d Refactor to use Result::map_dbg_err_str() 2016-09-07 22:05:30 +02:00
3ea3e03cab Add dependency: libimagutil 2016-09-07 22:05:30 +02:00
39c3e3f7e0 Insert dummy commit message 2016-09-07 22:05:30 +02:00
be34dddf87 Add StoreId prefix removal 2016-09-07 22:05:30 +02:00
c1e430e1ff Add error kind for error when stripping store id path prefix 2016-09-07 22:05:30 +02:00
79b0693fe8 Add debugging output in CreateHook 2016-09-07 22:05:30 +02:00
30c672821d Add debugging output in Runtime 2016-09-07 22:05:30 +02:00
112646c002 Do not store reference to store path in the hook objects 2016-09-07 22:05:30 +02:00
6714f4e3c7 Implement CreateHook::access() 2016-09-07 22:05:30 +02:00
989c1790be Simplify error creating code snippet, as we have From<> now implemented 2016-09-07 22:05:30 +02:00
e5a066ed0b Add error kind and impl From<Git2Error> for HE 2016-09-07 22:05:30 +02:00
204ebc884c Runtime::repository() should return HookResult 2016-09-07 22:05:29 +02:00
5615ad12df Let the commit_message() helper always return a proper commit msg 2016-09-07 22:05:29 +02:00
ba1b4682d7 Remove lifetimes from Runtime struct 2016-09-07 22:05:29 +02:00
068c731857 Remove author/committer fetching, the git2 crate can do this 2016-09-07 22:05:29 +02:00
2dbad3f232 Revert "Add stubs for getting information from the config"
This reverts commit 8f7f89ae10325a2f7f2e64378c3342c14780563b.
2016-09-07 22:05:29 +02:00
d59b139f23 Revert "Add Runtime::new_committer_sig()"
This reverts commit 883a3392279baddc3a1305874e7c7e92e1d485dc.
2016-09-07 22:05:29 +02:00
81c0a9e170 Impl From<GitHookError> for HookError 2016-09-07 22:05:29 +02:00
21c6945a46 Add missing import of HookResult 2016-09-07 22:05:29 +02:00
9d9338d0e4 Add Runtime::new_committer_sig() 2016-09-07 22:05:29 +02:00
e0a390d840 Add Runtime::has_repository() 2016-09-07 22:05:29 +02:00
d498ed75d9 Use Runtime object rather than own Repository object 2016-09-07 22:05:29 +02:00
9ed13f265d Move config to Runtime 2016-09-07 22:05:29 +02:00
2ef530b462 Add error kind if config is not available 2016-09-07 22:05:29 +02:00
e5503116ad Add Runtime::ensure_configured_branch_is_checked_out 2016-09-07 22:05:29 +02:00
e13722accb Make Runtime pub 2016-09-07 22:05:29 +02:00
464a9c4e4e Make Runtime fields nonpublic 2016-09-07 22:05:29 +02:00
57fbeb54e7 Add Runtime::repository() 2016-09-07 22:05:29 +02:00
edd37b0e88 Add stubs for getting information from the config 2016-09-07 22:05:29 +02:00
3c80632d4d Add error kind for runtime info setup errors 2016-09-07 22:05:28 +02:00
3b138d2add Add Runtime object for git hooks 2016-09-07 22:05:28 +02:00
4de051e1bb Start impl of StoreIdAccessor for CreateHook 2016-09-07 22:05:28 +02:00
830d170518 Add GitHookError::inside_if() 2016-09-07 22:05:28 +02:00
189ebb2aea Add error kinds for repository interaction errors 2016-09-07 22:05:28 +02:00
554ec2ca5c Refactor: Use helper function internally 2016-09-07 22:05:28 +02:00
a356a96a99 Add helper to check whether to try to checkout the ensure_branch branch 2016-09-07 22:05:28 +02:00
c972b5706d Add helper to get the branch which must be checked out before any action takes place 2016-09-07 22:05:28 +02:00
c09f0b302f Add error kinds for configuration errors 2016-09-07 22:05:28 +02:00
4436a294e2 Add helper to check config whether to abort the hook failing
This helper can be used to check the configuration of the hook whether
it should abort if the repository cannot be opened.
2016-09-07 22:05:28 +02:00
af089952c8 Add Repository instantiation 2016-09-07 22:05:28 +02:00
e19121f43a Impl Debug for CreateHook 2016-09-07 22:05:28 +02:00
a8ea51460c Add store path member for update hook 2016-09-07 22:05:28 +02:00
0e765cd5b6 Add store path member for retrieve hook 2016-09-07 22:05:28 +02:00
f4a71831c9 Add store path member for delete hook 2016-09-07 22:05:28 +02:00
397c38d805 Add store path member for create hook 2016-09-07 22:05:27 +02:00
010109a3c3 Disable lints 2016-09-07 22:05:27 +02:00
6ecd97956f Add boilerplate for update hook 2016-09-07 22:05:27 +02:00
9ef0271893 Add boilerplate for retrieve hook 2016-09-07 22:05:27 +02:00
bcd728a930 Add boilerplate for delete hook 2016-09-07 22:05:27 +02:00
1f6a983a51 Add boilerplate for create hook 2016-09-07 22:05:27 +02:00
da0c4cf06b Add missing imports 2016-09-07 22:05:24 +02:00
7f02f818da Add (unimplemented) config helper functions 2016-09-07 22:05:12 +02:00
61c3519d45 Impl Debug, Clone, Display for StoreAction 2016-09-07 22:05:12 +02:00
d03b13be10 Add enum to represent store action 2016-09-07 22:05:12 +02:00
24e747029c Implement util::mkrepo() 2016-09-07 22:05:12 +02:00
8f8568a03a Add error module setup 2016-09-07 22:05:12 +02:00
07a3a32265 Add basic module setup 2016-09-07 22:05:07 +02:00
20d938877b Add dependency: git2 2016-09-07 17:11:23 +02:00
66782ca87b Refactor file opening in helper function 2016-09-06 15:31:55 +02:00
46123622b2 Have and use internal error types for better error messages 2016-09-06 15:31:55 +02:00
04166dd7a3 Import libimagerror with macros, so we can have own error types internally 2016-09-06 15:31:55 +02:00
144a8bf897 Flock hook: Rewrite EntryFlock trait to return HookResult 2016-09-06 15:31:55 +02:00
4eaa0c2147 We can call StoreId::{exists, is_file} here instead of converting to PathBuf 2016-08-31 08:26:54 +02:00
f46d4f4dfd Fix libimagstorestdhook::{flock, linkverify}::* for new StoreId interface 2016-08-28 18:41:55 +02:00