2016-02-21 13:26:17 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
|
|
|
|
function killperson {
|
2016-02-22 10:49:26 +00:00
|
|
|
OPTIND=1
|
|
|
|
|
2016-06-30 19:32:42 +00:00
|
|
|
while getopts 'h' opt; do
|
2016-02-22 10:49:26 +00:00
|
|
|
case "$opt" in
|
2016-06-30 19:32:42 +00:00
|
|
|
h) _show_manual_for 'killperson';;
|
2017-09-27 19:38:01 +00:00
|
|
|
|
2017-09-28 13:58:07 +00:00
|
|
|
*) _invalid_option_for 'killperson';;
|
2016-02-22 10:49:26 +00:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2016-05-14 11:03:33 +00:00
|
|
|
shift $((OPTIND-1))
|
|
|
|
[ "$1" = "--" ] && shift
|
|
|
|
|
2016-02-21 13:26:17 +00:00
|
|
|
_user_required
|
|
|
|
|
2017-03-05 21:46:49 +00:00
|
|
|
# Command logic:
|
|
|
|
|
Version 0.2.2 pre-release
There are a lot of changes, multiple things were refactored: tests,
some commands, building and meta.
Several critical bugs fixed.
Changes:
1. Fixed #74, when `_user_required` was not working after reimporting keys
2. Closes #73, now it is possible to provide multiple emails to the `killperson` command
3. Closes #72, now it is possible to provide multiple emails to the `tell` command
4. Closes #71, now every doc in this project refer to `git-secret.io` instead of old `gh-pages` website
5. Closes #70, now installation section is removed from main `man` file
6. Closes #69, now "See also" section in the `man`s are clickable
7. Closes #61, added "Manual" section to the manuals
8. Refs #38, added `centos` Dockerfile, but `ci` testing is still failing
9. Refs #52, tests are refactored. Added `clean` command tests, removed a lot of hardcoded things, moved tests execution from `./temp` folder to `/tmp`, added a lot of new check in old tests, and some new test cases
10. Refactored `hide` and `clean` commands to be shorter
11. `shellcheck` is now supported with `make lint`
Additional features are not comming to 0.2.2 after this commit.
2017-02-26 13:38:46 +00:00
|
|
|
local emails=( "$@" )
|
|
|
|
|
|
|
|
if [[ ${#emails[@]} -eq 0 ]]; then
|
2018-04-17 02:52:06 +00:00
|
|
|
_abort "at least one email is required for killperson."
|
2016-02-21 13:26:17 +00:00
|
|
|
fi
|
|
|
|
|
2018-06-30 20:00:53 +00:00
|
|
|
# Getting the local git-secret `gpg` key directory:
|
|
|
|
local secrets_dir_keys
|
|
|
|
secrets_dir_keys=$(_get_secrets_dir_keys)
|
Version 0.2.2 pre-release
There are a lot of changes, multiple things were refactored: tests,
some commands, building and meta.
Several critical bugs fixed.
Changes:
1. Fixed #74, when `_user_required` was not working after reimporting keys
2. Closes #73, now it is possible to provide multiple emails to the `killperson` command
3. Closes #72, now it is possible to provide multiple emails to the `tell` command
4. Closes #71, now every doc in this project refer to `git-secret.io` instead of old `gh-pages` website
5. Closes #70, now installation section is removed from main `man` file
6. Closes #69, now "See also" section in the `man`s are clickable
7. Closes #61, added "Manual" section to the manuals
8. Refs #38, added `centos` Dockerfile, but `ci` testing is still failing
9. Refs #52, tests are refactored. Added `clean` command tests, removed a lot of hardcoded things, moved tests execution from `./temp` folder to `/tmp`, added a lot of new check in old tests, and some new test cases
10. Refactored `hide` and `clean` commands to be shorter
11. `shellcheck` is now supported with `make lint`
Additional features are not comming to 0.2.2 after this commit.
2017-02-26 13:38:46 +00:00
|
|
|
for email in "${emails[@]}"; do
|
2018-06-30 19:38:46 +00:00
|
|
|
$SECRETS_GPG_COMMAND --homedir "$secrets_dir_keys" --no-permission-warning --batch --yes --delete-key "$email"
|
2018-06-13 18:03:30 +00:00
|
|
|
local exit_code=$?
|
|
|
|
if [[ "$exit_code" -ne 0 ]]; then
|
2018-06-13 18:32:15 +00:00
|
|
|
_abort "problem deleting key for '$email' with gpg: exit code $exit_code"
|
2018-06-13 18:03:30 +00:00
|
|
|
fi
|
Version 0.2.2 pre-release
There are a lot of changes, multiple things were refactored: tests,
some commands, building and meta.
Several critical bugs fixed.
Changes:
1. Fixed #74, when `_user_required` was not working after reimporting keys
2. Closes #73, now it is possible to provide multiple emails to the `killperson` command
3. Closes #72, now it is possible to provide multiple emails to the `tell` command
4. Closes #71, now every doc in this project refer to `git-secret.io` instead of old `gh-pages` website
5. Closes #70, now installation section is removed from main `man` file
6. Closes #69, now "See also" section in the `man`s are clickable
7. Closes #61, added "Manual" section to the manuals
8. Refs #38, added `centos` Dockerfile, but `ci` testing is still failing
9. Refs #52, tests are refactored. Added `clean` command tests, removed a lot of hardcoded things, moved tests execution from `./temp` folder to `/tmp`, added a lot of new check in old tests, and some new test cases
10. Refactored `hide` and `clean` commands to be shorter
11. `shellcheck` is now supported with `make lint`
Additional features are not comming to 0.2.2 after this commit.
2017-02-26 13:38:46 +00:00
|
|
|
done
|
2017-03-05 21:46:49 +00:00
|
|
|
|
|
|
|
echo 'removed keys.'
|
|
|
|
echo "now [$*] do not have an access to the repository."
|
|
|
|
echo 'make sure to hide the existing secrets again.'
|
2016-02-21 13:26:17 +00:00
|
|
|
}
|