monotone updates
- Try to configure a wrapper - Fix (?) ikiwiki-makerepo repo name mangling - Add big warning about passphrases - Doc updatesmaster
parent
db73f81258
commit
4643233c18
|
@ -52,6 +52,9 @@ sub import (@) { #{{{
|
||||||
elsif ($config{rcs} eq 'svn') {
|
elsif ($config{rcs} eq 'svn') {
|
||||||
$config{svn_wrapper}=$config{repository}."/hooks/post-commit";
|
$config{svn_wrapper}=$config{repository}."/hooks/post-commit";
|
||||||
}
|
}
|
||||||
|
elsif ($config{rcs} eq 'monotone') {
|
||||||
|
$config{mtn_wrapper}=$config{srcdir}."_MTN/ikiwiki-netsync-hook";
|
||||||
|
}
|
||||||
elsif ($config{rcs} eq 'bzr') {
|
elsif ($config{rcs} eq 'bzr') {
|
||||||
# TODO
|
# TODO
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@ ikiwiki-makerepo - check an ikiwiki srcdir into revision control
|
||||||
|
|
||||||
# SYNOPSIS
|
# SYNOPSIS
|
||||||
|
|
||||||
ikiwiki-makerepo svn|git srcdir repository
|
ikiwiki-makerepo svn|git|monotone srcdir repository
|
||||||
|
|
||||||
ikiwiki-makerepo mercurial srcdir
|
ikiwiki-makerepo mercurial srcdir
|
||||||
|
|
||||||
|
@ -17,6 +17,9 @@ mercurial repository.
|
||||||
Note that for mercurial, the srcdir is converted into a mercurial
|
Note that for mercurial, the srcdir is converted into a mercurial
|
||||||
repository. There is no need to have a separate repository with mercurial.
|
repository. There is no need to have a separate repository with mercurial.
|
||||||
|
|
||||||
|
Note that for monotone, you are assumed to already have run "mtn genkey" to generate
|
||||||
|
key.
|
||||||
|
|
||||||
# AUTHOR
|
# AUTHOR
|
||||||
|
|
||||||
Joey Hess <joey@ikiwiki.info>
|
Joey Hess <joey@ikiwiki.info>
|
||||||
|
|
|
@ -181,28 +181,9 @@ about using the git repositories.
|
||||||
|
|
||||||
[[!toggle id=monotone text="Monotone"]]
|
[[!toggle id=monotone text="Monotone"]]
|
||||||
[[!toggleable id=monotone text="""
|
[[!toggleable id=monotone text="""
|
||||||
# These instructions are standard instructions to import a directory into monotone
|
# This assumes that you have already used "mtn genkey you@hostname".
|
||||||
# and set it up so that you don't need any passwords to use it
|
REPOSITORY=~/wiki.monotone
|
||||||
REPOSITORY=~/.ikiwiki/mtn.db
|
ikiwiki-makerepo git $SRCDIR $REPOSITORY
|
||||||
BRANCH=com.company.wikiname
|
|
||||||
# remember the password you use in the next step and
|
|
||||||
# substitute it for 'wikiKeyPass' in the get_passphrase() hook below
|
|
||||||
# note the you should never generate two monotone keys with the same name
|
|
||||||
mtn genkey web@example.com
|
|
||||||
mtn db init --db=$REPOSITORY
|
|
||||||
mv $SRCDIR $SRCDIR-old
|
|
||||||
cd $SRCDIR-old
|
|
||||||
echo ".ikiwiki" > $SRCDIR-old/.mtn-ignore
|
|
||||||
mtn --db=$REPOSITORY --branch=$BRANCH import . -m "initial import"
|
|
||||||
cd ..
|
|
||||||
mtn --db=$REPOSITORY --branch=$BRANCH checkout $SRCDIR
|
|
||||||
mv $SRCDIR-old/.ikiwiki $SRCDIR
|
|
||||||
cat << EOF > $SRCDIR/_MTN/monotonerc
|
|
||||||
function get_passphrase (branchname)
|
|
||||||
return "wikiKeyPass"
|
|
||||||
end
|
|
||||||
EOF
|
|
||||||
rm -r $SRCDIR-old
|
|
||||||
"""]]
|
"""]]
|
||||||
|
|
||||||
## Configure ikiwiki to use revision control.
|
## Configure ikiwiki to use revision control.
|
||||||
|
|
|
@ -94,12 +94,12 @@ monotone)
|
||||||
fi
|
fi
|
||||||
repodir=$(dirname "$repository")
|
repodir=$(dirname "$repository")
|
||||||
mkdir -p "$repodir"
|
mkdir -p "$repodir"
|
||||||
file_basename=$(basename -s .monotone "$repository" |\
|
file_basename=$(basename "$repository" | sed -e 's/\.monotone$//' |\
|
||||||
tr -s "[:space:]" "_" | sed 's/_$//g')
|
tr -s "[:space:]" "_" | sed 's/_$//g')
|
||||||
reverse_hostname=$((hostname -f 2>/dev/null || hostname) |\
|
reverse_hostname=$( (hostname -f 2>/dev/null || hostname) |\
|
||||||
tr "." "\n" | tail -r | tr "\n" ".")
|
tr "." "\n" | tac | tr "\n" ".")
|
||||||
branch_name="$reverse_hostname$file_basename"
|
branch_name="$reverse_hostname$file_basename"
|
||||||
reponame_with_ext="$file_basename.mtn"
|
reponame_with_ext="$file_basename.monotone"
|
||||||
mtn db init -d "$repodir/$reponame_with_ext"
|
mtn db init -d "$repodir/$reponame_with_ext"
|
||||||
mtn setup -d "$repodir/$reponame_with_ext" -b "$branch_name" "$srcdir"
|
mtn setup -d "$repodir/$reponame_with_ext" -b "$branch_name" "$srcdir"
|
||||||
cd "$srcdir"
|
cd "$srcdir"
|
||||||
|
@ -109,6 +109,17 @@ monotone)
|
||||||
# with a default key floating around...
|
# with a default key floating around...
|
||||||
mtn ci -m "initial import"
|
mtn ci -m "initial import"
|
||||||
echo "Directory $srcdir is now set up as a monotone repository"
|
echo "Directory $srcdir is now set up as a monotone repository"
|
||||||
|
echo ""
|
||||||
|
echo "Note: If your monotone key has a passphrase, you need to configure"
|
||||||
|
echo "monotone to automatically use it. Otherwise, web commits to ikiwiki"
|
||||||
|
echo "will fail."
|
||||||
|
echo ""
|
||||||
|
echo "You can create a $srcdir/_MTN/monotonerc"
|
||||||
|
echo "containing the passphrase:"
|
||||||
|
echo ""
|
||||||
|
echo "function get_passphrase (branchname)"
|
||||||
|
echo ' return "passphrasehere"'
|
||||||
|
echo "end"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Unsupported revision control system $rcs" >&2
|
echo "Unsupported revision control system $rcs" >&2
|
||||||
|
|
Loading…
Reference in New Issue