Commit Graph

38 Commits

Author SHA1 Message Date
Klaus Post e1f6bbac9f Create uid/gid convertion function.
Create separate function to convert user ID / group ID of a user to integer.
Windows is a stub, since this doesn't work on Windows (uid/gid is not a number).
2015-08-16 13:16:02 +02:00
Klaus Post 2e7b40baca Make UID/GID '0' on Windows.
We ignore parser errors on Uid/Gid, since they are not numbers on Windows.

UID/GID is usually 'root' on Linux, so I am not sure if 0/0 is a good idea.
Maybe if the type of the fields were changed from uint32 to int, we could set it
to -1 to indicate "no value".
2015-08-14 15:50:14 +02:00
Alexander Neumann 5cdcc99eba Use array instead of hash for backend.ID
Since backend.ID is always a slice of constant length, use an array
instead of a slice. Mostly, arrays behave as slices, except that an
array cannot be nil, so use `*backend.ID` insteaf of `backend.ID` in
places where the absence of an ID is possible (e.g. for the Subtree of a
Node, which may not present when the node is a file node).

This change allows to directly use backend.ID as the the key for a map,
so that arbitrary data structures (e.g. a Set implemented as a
map[backend.ID]struct{}) can easily be formed.
2015-07-25 18:01:57 +02:00
Alexander Neumann cc34401152 Record exclude patterns in snapshot
This adds the exclude patterns used to create a backup in the snapshot,
so we can later compute statistics (like git does) on the data
structure, e.g. added/removed files etc. For that, we need the exclude
pattern.
2015-07-22 22:43:32 +02:00
Alexander Neumann 6e38a8a033 Move FindSnapshot, make Repository.List() return IDs 2015-05-17 20:58:22 +02:00
Alexander Neumann d42242556b Fix restic for i386
Some functions aren't implemented on Linux/i386, e.g. user.LookupId()
and user.Current(), so ignore these errors.
2015-05-14 23:16:35 +02:00
Alexander Neumann 95536e8a21 Rename 'Repo' -> 'Repository' 2015-05-09 23:59:58 +02:00
Alexander Neumann 232c472836 Move package 'repo' to package 'repository' 2015-05-09 23:52:03 +02:00
Alexander Neumann ae21938f3e Rename 'Repository' -> Repo 2015-05-09 17:41:28 +02:00
Alexander Neumann d9b5832034 Rename variables 2015-05-09 13:47:21 +02:00
Alexander Neumann 87ebf12945 Rename 'Server' to 'Repository' 2015-05-09 13:25:52 +02:00
Alexander Neumann 8be9e95d20 Rename package 'server' to 'repo' 2015-05-09 13:24:15 +02:00
Alexander Neumann 9b54fd7bdb server: rename LoadJSONEncrypted -> LoadJSONUnpacked 2015-05-03 18:56:20 +02:00
Alexander Neumann a906b9febe Merge remote-tracking branch 'fw42/snapshot_linux_darwin' 2015-04-30 00:57:39 +02:00
Florian Weingarten f94d3d4b11 Remove snapshot_darwin and snapshop_linux 2015-04-29 17:35:02 -04:00
Alexander Neumann 60a0fe8349 Major restructure, bundle blobs
This commit also breaks the repository format.
2015-04-29 23:27:32 +02:00
Florian Weingarten 77c7c33205 Remove unused struct fields 2015-04-26 11:34:12 -04:00
Alexander Neumann d19b23d4f1 Move Server and Key to new sub-package 2015-04-26 14:46:15 +02:00
Alexander Neumann f157f775da Add checks for Server.Load(), use Blob for load 2015-03-28 15:07:08 +01:00
Alexander Neumann 5e69788eac Refactor backends 2015-03-28 14:36:50 +01:00
Alexander Neumann f167366be5 Add walk for trees, restructure 2015-03-02 19:58:06 +01:00
Alexander Neumann bb777d9a58 Introduce UserID, GroupID for snapshot
Use the fields UID and GID for Unix user and group ID, and the fields
UserID and GroupID for Windows user and group strings.
2015-02-03 22:04:09 +01:00
Alexander Neumann 203a911de9 Refactor repository structure
Merge Map data type into Tree.
2015-01-14 16:34:30 +01:00
Alexander Neumann 5eaa427e80 Save UID and GID as integer in Snapshot 2014-12-21 17:20:49 +01:00
Alexander Neumann 202984a93f Rename snapshot.Content -> snapshot.Tree 2014-12-07 14:14:50 +01:00
Alexander Neumann e2fea0d088 Rename khepri -> restic 2014-12-05 21:45:49 +01:00
Alexander Neumann 3325fa07ea Check timestamps for files 2014-11-30 22:34:21 +01:00
Alexander Neumann 2c5d07a571 List snapshots, accept snapshot id prefix
Example:

    $ ./khepri snapshots
    ID        Date                 Source      Directory
    --------------------------------------------------------------------------------
    fa31d65b  2014-11-24 19:45:11  kasimir     /home/user/testdata
    20bdc140  2014-11-24 20:00:47  kasimir     /home/user/testdata
    326cb59d  2014-11-24 20:01:40  kasimir     /home/user/testdata
    20ff988b  2014-11-24 20:35:35  kasimir     /home/user
2014-11-24 21:12:32 +01:00
Alexander Neumann 33ce4e33aa Store maps in new subdir "maps" 2014-11-23 22:26:01 +01:00
Alexander Neumann d1e4431514 Refactor StorageMap to BlobList 2014-11-22 21:05:18 +01:00
Alexander Neumann 30ab03b7b7 Add decrypt, refactor 2014-10-03 21:44:55 +02:00
Alexander Neumann f0287b2c9a Restructure, adapt for max 16MB chunk size 2014-09-21 16:33:20 +02:00
Alexander Neumann d66996e648 Move restore functionality into khepri package 2014-08-11 23:14:40 +02:00
Alexander Neumann 2428843faa Refactor 2014-08-11 22:47:24 +02:00
Alexander Neumann ad8125d83c Add command 'fsck' 2014-08-04 23:25:58 +02:00
Alexander Neumann b923a2065a Rename field in Snapshot: Tree -> TreeID 2014-08-04 23:25:32 +02:00
Alexander Neumann e8b83e460f Refactor 2014-08-04 22:46:14 +02:00
Alexander Neumann b3c2d82331 Refactor, add Object and Snapshot 2014-08-04 20:51:09 +02:00