Commit Graph

111 Commits (5e264fa99e291375ae989fefa125d39f5b8ba607)

Author SHA1 Message Date
Nikita Sobolev 19941f91f4
Adds release-ci script to test installation (#664)
* Adds release-ci script to test installation

* Fixes CI

* Fixes CI

* Renames some variables to follow the same SECRETS_ convention
3 years ago
sobolevn 5fc8ecbdde Adds hadolint, re-enables shellcheck 3 years ago
sobolevn 28dbdf3fde Adds fedora testing 3 years ago
sobolevn 22d994c372 Adds alpine tests 3 years ago
sobolevn 8f7b9c51de [WIP] New CI 3 years ago
Josh Rabinowitz ee592b8ede
Issue 634 tell duplicate emails (#637)
* support asserting named keyring is missing email(s)
* improve error if git-secret keyring missing email
* new test for telling same email twice
* update tell manpage regarding duplicate emails
* regenerate man pages
* update changelog
4 years ago
Sasha Friedenberg 39ab72f866
add bash string escaping to _add_ignored_file (#626) 4 years ago
Bertjan Broeksema fc51d6f15f
More precise feedback about added files (#614)
* More precise feedback about added files

This adapts the output of the add command in order to report exactly
how many files have been added. Specially with wildcard patterns, this
makes it easier to verify that expected files are added.

With the verbose option, the add command will also tell which files
have been added.

By @bbroeksema bbroeksema
4 years ago
Josh Rabinowitz bdc3560897
Issue 607 fix expired test key (#608)
* updated fixture key for user3, fixes #607
* update tests/fixtures/gpg/README.md
* mention fix of #607 and #609 in changelog
* use shellcheck 0.7.1, not 'latest' for #609
4 years ago
Josh Rabinowitz a0a176fa5d
Issue 552 508 revoked keys (#553)
* warn about 'tell' on expired/revoked/invalid keys
* error if 'tell' used on email with multiple keys
* improve test of 'tell' with subdirs
5 years ago
Josh Rabinowitz 2830ce2ff7
Issue 579 reveal clobbers (#580)
* Don't let reveal clobber secret files, for #579
5 years ago
Josh Rabinowitz 9348cd32e2
Revert "Issue 554 show gpg commands (#556)" (#559)
This reverts commit 9e8438236c.
5 years ago
Josh Rabinowitz 9e8438236c
Issue 554 show gpg commands (#556)
* show most gpg commands used for 'hide', 'reveal', 'tell' and 'killperson (#554)
* fix hang when using ctrl-c during tests (#558)
5 years ago
Josh Rabinowitz 2a1600f2f6
cleanup output when we clean up tmp files (#532)
* cleanup output when we clean up tmp files
5 years ago
Josh Rabinowitz 525305d985
Issue 527 key with comment (#528)
* add key fixture with no email, and 2 word comment
* tests for key without email and with comment
* handle comments in public key uids
* fix tests, you have to use email address
* fix text
* confirm that email addresses contain an @ symbol
* improve comments about keys/fixtures
5 years ago
Josh Rabinowitz 68b64f4aac
make correction to comments (#525) 5 years ago
Josh Rabinowitz 9ff559ca8c
Issue 478 tests in busybox (#523)
* use busybox by not installing coreutils on alpine
* changes for busybox version of ps and stat
* add function to check if exe is from busybox
* update changelog
* cleanup comments, code, and commented out code
* improve comment in alpine Dockerfile
* include platform-specific funcs so we can test perms
5 years ago
Josh Rabinowitz baf6c4113b
Add SECRETS_PINENTRY env var and docs (#490)
* Add SECRETS_PINENTRY env var 

* add docs and tests for SECRETS_PINENTRY

* improve diagnostic output

* fix regex example for bats-core diagnostics
5 years ago
Josh Rabinowitz 10fa2a7be2
Tempfile and temp directory cleanups (#473)
* Tempfile and temp directory cleanups
    Add comments about mktemp on different platforms
    Be more careful about tempfile cleanups
    Don't use find to locate files to cleanup
    Use shorter SECRETS_EXTENSION and SECRETS_DIR env settings in tests
    Set TMPDIR in tests again
    Show DESTDIR used when testing git-secret install
    Change filename passed to mktemp -t in tests
5 years ago
Simon Massey 10879e2253
fix for git secret hide -m doesn't work on first use #466 (#469) 5 years ago
Josh Rabinowitz 44a8745e02
remove duplicate test (#458) 6 years ago
Josh Rabinowitz bbb4d9d3e5
Tmp cleanups (#457)
* Only show 'cleaning up temp file' messages if one
  of SECRETS_VERBOSE or SECRETS_TEST_VERBOSE is set.
* Adjust tests to reflect the change.
* Add note about suppressing 'cleaning up' msgs to CHANGELOG.md and reorder entries
* add comments showing examples of tmpfiles returned
6 years ago
Josh Rabinowitz 24bfc86b74
Fail on extra params (#448)
* fail if user passes unexpected filenames or unknown params
* mention fix of #390
6 years ago
Josh Rabinowitz 2341d1433b
Temp dir fixes (#449)
* perform our test install into TMPDIR
* fix typo
* remove duplicate entry in CHANGELOG.md
* improve commenting
6 years ago
Josh Rabinowitz cb1636a6dc
experimental SECRETS_TEST_VERBOSE shows debug info during tests (#446)
* add a travis target using SECRETS_TEST_VERBOSE=1
* Document SECRETS_TEST_VERBOSE as experimental
* note experimental feature may change or be removed
6 years ago
Josh Rabinowitz 8334d7beef
Reveal verbose (#447)
* add -v option to reveal, for #395
* update reveal man page
* shellcheck exception
* changelog update for 'reveal -v'
6 years ago
Josh Rabinowitz 07af0c19b6
Varnames output and typos (#441)
* rename variable, fix typo, improve comments and output
* fix directory removal after testing
* mention improved user messaging in CHANGELOG.md
6 years ago
Josh Rabinowitz be88da4c0c
test 'DESTDIR=/dir/here make install' support (#438) 6 years ago
Josh Rabinowitz ce8c6b3ae0
Change 'add' to add to .gitignore by default. (#429)
* Change 'add' to add to .gitignore by default.
Also add _message() function and improve output from 'git-secret-add',
alter tests for new code behavior, and update docs.
* change tests since 'add' always adds to .gitignore
* improve output: prepend more message with 'git-secret:'.
* update man page for git-secret-add
6 years ago
Jonas Karlsson 54f74ede6a Fix for windows (#375)
* add test for travis-ci windows support
* Make 'ps' command options platform specific *nix/windows
* Add _clean_path for windows,  apply to all homedir input arguments
* export GITSECRET_DIST="windows" in git hook if running windows
* Bash lint fixes
6 years ago
Josh Rabinowitz 8adb7d5741
Revert "use pgrep & kill $pid, not ps+gawk+regex+system+kill (#400)" (#405)
This reverts commit a2a9bd32ba.
6 years ago
Josh Rabinowitz a2a9bd32ba
use pgrep & kill $pid, not ps+gawk+regex+system+kill (#400)
* use pgrep & kill, not ps+gawk+regex+system+kill
* install shellcheck and enable lint on macos/brew.
* add shellcheck fixes and exception
* reorder CHANGELOG entries
6 years ago
Josh Rabinowitz 22fe1ed2d4
Add support for SECRETS_VERBOSE env var (#393)
* Support SECRETS_VERBOSE env var in addition to -v
* don't use --quiet when decrypting in verbose mode
* show output of gpg encryption in verbose mode
* add tests for SECRETS_VERBOSE env var set to 0 and 1
* update changelog, reorder entries.
* add tests for 'cat' and 'hide' with SECRETS_VERBOSE=1
6 years ago
Josh Rabinowitz c4331693f3
use 'kill', not 'kill -9' (#379) 6 years ago
Josh Rabinowitz 7b06b25c0a
Respect secrets dir on init, and document (#366)
* respect SECRETS_DIR and SECRETS_EXTENSION in tests
* add line regarding fixes to CHANGELOG.md
* test with non-standard SECRETS_EXTENSION
* Add details about init, mention SECRETS_EXTENSION in init page
* update git-secret-init man page
6 years ago
Josh Rabinowitz 505cb1fe42 have lint target run shellcheck over tests (closes #373)
* have lint target run shellcheck over tests

* lint and fix tests/ since shellcheck knows bats

* lint and fix tests/ since shellcheck knows bats

* revert debug output

* changes for shellcheck

* revert unintended change

  [tests/_test_base.bash]

* use 'local' for user/filename vars, not 'export'

* add note about Shellcheck and tests/

* local can only be used in functions - use export

* restore shbang edited in error
6 years ago
Josh Rabinowitz 83b03b61bc
Aspell fixes (#365)
* spellcheck fixes from aspell
6 years ago
Josh Rabinowitz 8ed4f46de6
fix test under git hook (#349)
* fix test under git hook. Actually closes #334
6 years ago
Josh Rabinowitz 5a28744c5d
Fix for tests under bats, fix typos, mention #334 (#342)
* fix test under githooks, fix typos, mention #334 as relevant
6 years ago
Josh Rabinowitz e34248fdc1
remove diagnostic output from tests (#329) 6 years ago
Josh Rabinowitz 65fe4c4127
Add verbose option to 'git secret tell' showing output of key imports (#321)
* add 'git secret tell -v' option to show output of key imports
* add tests for tell with/without -v
* remove unneeded test code and bats diagnostic output
6 years ago
Josh Rabinowitz 913d026537
Fixes for 'changes' and trailing newlines, for #291 (#293)
* tests and comments about 'changes' for #291
* add 'changes' tests, improve diagnostic 
* preserve trailing newlines in diff output
* use bash trickery to preserve trailing newlines in captured text
* test 'changes' on files without newlines and when called on a non-existant file
* improve comments and variable names
6 years ago
Josh Rabinowitz 9cccf162c6 WIP: test with expired key, add 'whoknows -l' (#287)
* test with expired key, add 'whoknows -l'

    * 'whoknows -l' shows key expiration dates
    * also added docs and tests for `whoknows -l`,
    * tests for expired keys,
    * epoch_to_date functions

* update man pages

* fix epoch-to-date conversion on OSX

* test output of 'whoknows -l'

* fix for lint/shellcheck

* fix for osx

* lint fix

* use date as found in $PATH

* disable 'set -e' as little as possible
6 years ago
Josh Rabinowitz 74f8a07166
improve testing regarding expired keys and keys with only email addresses (#262)
* test that hiding secret with expired key fails
* add test of user key without username.
* revert to performing most tests with 'user1'.
* move user4 private/public key fixtures
* factor code fetching emails from keyrings, add comments.
* use factored _warn_or_abort()
* add to, clean up, and clarify comments.
6 years ago
Josh Rabinowitz 4a3877b486
WIP: Force mode for hide and reveal (#263)
* -F (force even if gpg fails) option for hide and reveal
* allow 'reveal' to decrypt a subset of files.
* update and regen man pages
* man pages update and improvements
* text about why all files should be hidden at once
* add _warn() and _warn_or_abort()
* tests for -F option
* glob source .sh files in Makefile better
* add comment about issue #238. cleanup error msg.
* test exact case in #253
* disable gnupg doc building on ubuntu-rolling
6 years ago
Josh Rabinowitz 9e975e4eed make sure email addresses used with 'tell' and 'killperson' exist in keyring (#267)
* name keys after emails, not usernames

* use emails to specify users

* rename and add function to get emails from keyrings
* rename directories holding gpg test fixtures

* deny emails that aren't in the keyring, and test.

* require 'killperson' emails to exist in keyring

* change test to reflect killperson must use email

* remove no-longer-needed test function

* factor function _assert_keychain_contains_emais()

* fix/make lint happy
6 years ago
joshr 4c2c9a9719 remove diagnostic debug output 6 years ago
joshr 6eedaab489 rename test to show SECRETS_DIR. add debug output. 6 years ago
joshr 2287b3e54e test that $_SECRETS_DIR is set as expected 6 years ago
joshr 4dd04a06e0 comment out old debug code 6 years ago