* Initialization for new repos AUTOMATED.
* Adding new users AUTOMATED. * Update docs for the new, more simplified installation processes. * Remove dependency on any particular paths, etc. Copy "bin" into a place along your path and everything should "just work". * Add support for Mercurial (not tested). * blackbox_addadmin now adds keys to the keyring for you. * Unified #! lines to "#!/usr/bin/env bash" so it works better on FreeBSD. * BUGFIX: (BugId#1) blackbox_update_all_files.sh expects hg, fails for git. * BUGFIX: (BugId#2) blackbox_postdeploy.sh assumes certain directory layout. * BUGFIX: Temporary files aren't deleted. * NEW FILE: bin/blackbox_initialize: Automates enabling BB for a repo (creates directories, files, and updates .gitignore). * NEW FILE: bin/blackbox_removeadmin: Automates removing an admit. * NEW FILE: tools/confidence_test.sh: A battery of tests to verify operations. * NEW FILE: bin/Makefile: Automate package creation. * NEW FILE: bin/_stack_lib.sh: A library of shell routines from StackExchange.
This commit is contained in:
46
bin/blackbox_initialize
Executable file
46
bin/blackbox_initialize
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#
|
||||
# blackbox_initialize -- Enable blackbox for a GIT or HG repo.
|
||||
#
|
||||
#
|
||||
# Example:
|
||||
# blackbox_initialize
|
||||
#
|
||||
|
||||
. _blackbox_common.sh
|
||||
|
||||
_determine_vcs_base_and_type # Sets VCS_TYPE
|
||||
|
||||
if [[ $1 != 'yes' ]]; then
|
||||
read -p "Enable blackbox for this $VCS_TYPE repo? (yes/no) " ans
|
||||
if [[ $ans = 'no' || $ans = 'n' || $ans = '' ]]; then
|
||||
echo 'Exiting...'
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo cd "$REPOBASE"
|
||||
cd "$REPOBASE"
|
||||
|
||||
# Update .gitignore or .hgignore
|
||||
|
||||
IGNOREFILE=".${VCS_TYPE}ignore"
|
||||
if ! grep -sx >/dev/null 'pubring.gpg~' "$IGNOREFILE" ; then
|
||||
echo 'pubring.gpg~' >>"$IGNOREFILE"
|
||||
fi
|
||||
if ! grep -sx >/dev/null 'secring.gpg' "$IGNOREFILE" ; then
|
||||
echo 'secring.gpg' >>"$IGNOREFILE"
|
||||
fi
|
||||
|
||||
# Make directories
|
||||
mkdir -p "${KEYRINGDIR}"
|
||||
vcs_add "${KEYRINGDIR}"
|
||||
touch "$BLACKBOXDATA/$BB_ADMINS_FILE" "$BLACKBOXDATA/$BB_FILES_FILE"
|
||||
vcs_add "$IGNOREFILE" "$BLACKBOXDATA/$BB_ADMINS_FILE" "$BLACKBOXDATA/$BB_FILES_FILE"
|
||||
|
||||
# Make a suggestion:
|
||||
echo
|
||||
echo
|
||||
echo 'NEXT STEP: You need to manually check these in:'
|
||||
echo ' ' $VCS_TYPE commit -m\'INITIALIZE BLACKBOX\' keyrings "$IGNOREFILE"
|
||||
Reference in New Issue
Block a user