1
0
Fork 0
mirror of synced 2024-06-26 08:41:10 -04:00
Commit graph

139 commits

Author SHA1 Message Date
Tim Byrne 4b5f16d73a
Improve support for default branches (#231, #232)
Unless a branch is specified, the default remote HEAD is used during
clone. Also a local master branch is not created if it is not the remote
HEAD.
2020-12-06 13:23:25 -06:00
Tim Byrne 4cb13d5d08
Remove unnecessary LEGACY_WARNING_ISSUED flag 2020-11-25 23:18:26 -06:00
Tim Byrne 13a3cdc8a8
Remove reporting of invalid alts 2020-11-25 23:18:25 -06:00
Tim Byrne 7997dc9a3d
Update upgrade
Upgrade will only move 2.0.0 paths to 3.0.0 standards
2020-11-25 23:18:25 -06:00
Tim Byrne 62b109ad2d
Rename yadm_y -> yadm_cmd
-Y is no longer used when running commands
2020-11-22 17:09:44 -06:00
Tim Byrne 8efe2c8fad
Improve tests to use XDG* variables
Instead of overriding YADM_DIR via -Y, set the XDG* environment
variables.
2020-11-22 17:09:44 -06:00
Tim Byrne fc66b6b71b
Support XDG_DATA_HOME (#208)
* Create a YADM_DATA base (that is the source for repo & archive)
* Add --yadm-data to override
* Default YADM_DATA will be determined by XDG_DATA_HOME
2020-11-22 17:09:44 -06:00
Tim Byrne b19c78b8e2
Remove support for YADM_COMPATIBILITY=1 (#242) 2020-10-17 17:41:09 -05:00
Tim Byrne a66d3c148c
Remove tests for deprecated alternate processing 2020-10-17 17:39:24 -05:00
Erik Flodin 9bcf070dfe
Add support for including files using the default template processor
The syntax is '{% include "file" %}' where file is either an absolute path or a
path relative to the current template file's directory.

Variables in the included file will be replaced as for the main template. But
the included file can't include files itself.
2020-10-12 16:13:50 +02:00
Tim Byrne e0daf86334
Add encryption unit tests 2020-10-07 01:44:35 -05:00
Tim Byrne 59c60a4675
Change default archive name to "archive" 2020-09-25 12:10:34 -05:00
Tim Byrne 05ae6f0257
Add config yadm.openssl-old
The newer versions (OpenSSL 1.1.1 or LibreSSL 2.9.1) support the pbkdf2
key derivation function, while older versions do not. In addition the
new versions have changed the default digest to SHA256 instead of MD5.

Files encrypted with older versions would throw warnings about
deprecated key derivation used files encrypted with newer versions +
pbkdf2 would not be decryptable using older versions These problems
matter, when many users maintain their dotfiles across different systems
with different levels of OpenSSL support.

A new boolean config option has been added, yadm.openssl-old

* If false, use options -pbkdf2 -iter 100000 -md sha512
* If true, use options -md md5 (and if decrypting with newer versions
  warnings will be printed)
2020-09-25 10:04:18 -05:00
Tim Byrne 4ae504c533
Merge alternative cyphers changes into develop 2020-07-17 14:07:10 -05:00
Tim Byrne 102ba5d558
Preserve file mode of template (#193)
Any processed templates will inherit the file mode of the source
template.
2020-07-11 21:52:28 -05:00
Tim Byrne 6654e29c62
Merge pull request #220 2020-07-08 16:17:24 -05:00
Tim Byrne 87f81143b2
Add unit test for alternate order
Ensure that any alternates for YADM_CONFIG are processed prior to
templates.
2020-07-08 16:16:48 -05:00
Tim Byrne 6d8494a35f
Fix linting errors 2020-07-08 15:30:15 -05:00
jonasc 9ee83c4b3f
Update test/test_config.py 2020-07-08 15:13:06 -05:00
jonasc 60b23e33e8
Assert existence of config file's parent directory
Fixes TheLocehiliosan/yadm#226

When a config file path is passed to yadm whose parent directory does
not exist, git (and hence yadm) fails without writing the file.
Yadm should, however, make sure that the directory exists s.t. git can
just write to the file.
2020-07-08 15:13:03 -05:00
Jonathan Daigle f348e154c7
Add support for ESH 2020-05-27 19:38:15 -04:00
Tim Byrne 0995f38b06
Merge pull request #138 from ldotlopez/master
I signed all commits first
2020-02-27 08:24:25 -06:00
Luis López 831c9ec09d
Testing: add new config items to tests 2020-02-27 08:21:48 -06:00
Tim Byrne 4b99ece480
Support transcrypt (#197)
Support is inherently provided by `enter`, which supports a command.
I've added a `transcrypt` command, which is really just an alias
under-the-hood for "enter transcrypt".
2020-02-21 08:05:56 -06:00
Tim Byrne 45f1d93193
Add test for WSL identification 2020-02-03 08:30:34 -06:00
Tim Byrne 9a2883985b
Test for escaped values in YADM_HOOK_FULL_COMMAND 2020-01-24 08:33:30 -06:00
Tim Byrne 3b820835ab
Test for warnings from man (#195) 2020-01-21 07:26:10 -06:00
Tim Byrne 76c82c763e
Improve identification of WSL (#196)
Ignore case when searching for Microsoft inside /proc/version.
2020-01-20 07:52:50 -06:00
Tim Byrne 75d2747aa0
Add test for multiple recipients 2020-01-15 09:17:26 -06:00
Tim Byrne d9f68978fa
Add test for quoted os-release 2020-01-14 07:21:02 -06:00
Tim Byrne 6e444736ab
Tests for encrypt_with_checksums hooks 2020-01-13 08:06:15 -06:00
Tim Byrne ba5829ad48
Confirm exit status for enter w/cmd 2019-12-16 17:11:07 -06:00
Tim Byrne d3a2a06184
Support git-crypt (#168)
Support is inherently provided by `enter`, which now supports a command.
I've added a `git-crypt` command, which is really just an alias
under-the-hood for "enter git-crypt".
2019-12-16 17:11:06 -06:00
Tim Byrne b9f5fdaafa
Support GNUPGHOME environment variable (#134) 2019-12-14 13:24:39 -06:00
Tim Byrne 84a173551e
Only assert private dirs, when worktree = $HOME (#171) 2019-12-14 13:24:32 -06:00
Tim Byrne 46105aae47
Set YADM_WORK within configure_paths 2019-12-12 08:00:10 -06:00
Tim Byrne 18e5fcfacc
Only assert private dirs, when worktree = $HOME 2019-12-11 08:37:45 -06:00
Tim Byrne e7d2406af3
Export GIT_WORK_TREE during yadm enter (#160) 2019-12-08 15:17:47 -06:00
Tim Byrne 32baf81b56
Support specifying a command after yadm enter 2019-12-08 15:17:47 -06:00
Tim Byrne 397d45ccd0
Suppress insecure memory warnings 2019-12-05 15:02:47 -06:00
Tim Byrne 437ae2b719
Add --force-linters option to pylint (#179)
When this option is provided, linters will be run regardless of the
version installed. Normally tests are skipped if the linters are not the
supported version.
2019-12-05 15:02:47 -06:00
Tim Byrne 5d484ca825
Test with GnuPG 2 (#179)
Take advantage of pinentry-mock to obtain passphrases, instead of using
"expect" (which requires GnuPG 1).
2019-12-05 15:02:47 -06:00
Tim Byrne e5ff95d09c
Create gnupg fixture
This fixture is a session scoped gnupg home directory, along with a
method to set the mocked password which will be used by the
pinentry-mock program.
2019-12-05 15:02:46 -06:00
Tim Byrne 3aefeeff0f
Create pinentry-mock
This is a program which adheres to the pinentry protocol. It always
provides the password located in /etc/mock-password.
2019-12-05 15:02:43 -06:00
Tim Byrne f7485915ed
Update tests for gawk support 2019-12-04 22:18:55 -06:00
Tim Byrne c1f779521c
Confirm LEGACY_WARNING_ISSUED is set appropriately 2019-12-04 17:36:43 -06:00
Tim Byrne 66a3969c8a
Add unit tests for reporting invalid alternates (#183) 2019-12-04 17:36:43 -06:00
Tim Byrne 59da359e63
Remove old-style alts from test data 2019-12-04 08:17:03 -06:00
Tim Byrne 6bf0852609
Use /etc/os-release if lsb_release is missing (#175) 2019-11-30 18:31:27 -06:00
Tim Byrne 24e6e81713
Test support for double-star globs 2019-11-26 16:24:36 -06:00