chiark / gitweb /
as found, moving from ..
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 18 Jul 2015 15:20:35 +0000 (16:20 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 18 Jul 2015 15:20:35 +0000 (16:20 +0100)
TODO [new file with mode: 0644]
copy-alioth-to-gideon [new file with mode: 0755]
pretest-to-master [new file with mode: 0755]

diff --git a/TODO b/TODO
new file mode 100644 (file)
index 0000000..c45e714
--- /dev/null
+++ b/TODO
@@ -0,0 +1,47 @@
+THINGS FROM IRC TRANSCRIPTS
+
+in copy script
+  set git-daemon-export-ok in template
+  set git-daemon-export-ok in all repos being copied
+  set description in template
+  set description in all repos being copied
+
+arrange push hook to update list of repos for cgit
+arrange cron job to update list of repos for cgit
+
+change to use push.dgit.d.o
+
+set up a way to add userkeys to
+/etc/ssh/userkeys/dgit.more
+
+
+TRANSITION
+
+do things from irc transcripts
+
+make repo move script create refs/heads/master
+
+make announcement when in testing
+
+remove old version from wheezy-backports
+
+wait
+
+switch:
+  - announce
+  - disable write to old repos (by linkfarming)
+  - copy repos
+      check no unexpected branches
+      check none ahead of archive or at least some signed tag, or something
+      check no unexpected enabled hooks
+  - switch divert
+  - test a clone
+  - test a push of dgit-test-dummy
+  - announce
+
+
+CONSULT LATER
+
+ssh for DMs
+
+cgit
diff --git a/copy-alioth-to-gideon b/copy-alioth-to-gideon
new file mode 100755 (executable)
index 0000000..f7cf913
--- /dev/null
@@ -0,0 +1,47 @@
+#!/bin/bash
+set -ex
+
+d=/srv/dgit.debian.org
+
+ssh iwj@gideon.debian.org "
+       set -ex
+
+       d=$d"'
+
+       cd $d
+       mkdir -p transfer.tmp
+       cd transfer.tmp
+
+       rsync -rltHxp --delete iwj@git.debian.org:/git/dgit-repos/repos/. .
+
+       find \(         \( ! -type f ! -type d \) \
+               -o      -perm +5002 -o \! -perm +2555 \
+               -o      -type d \! -perm +2775 \
+               -o      -path \*/hooks/\* ! -name \*.sample \
+               \) -ls \
+               >$d/transfer.bad
+       if [ -s $d/transfer.bad ]; then
+               head $d/transfer.bad
+               echo >&2 " BAD"
+               exit 1
+       fi
+
+       set +x
+       for f in $d/transfer.tmp/*.git; do
+               cp $d/repos/_template/description $f/description
+       done
+
+       cat <<END >$d/transfer.run
+               #!/bin/sh -ex
+               cd $d/transfer.tmp
+               rsync -rltHxp --delete *.git $d/repos/
+               # _template
+               echo done.
+END
+       chmod +x $d/transfer.run
+'
+
+: "on gideon
+       sudo -u dgit bash
+       $d/transfer.run
+"
diff --git a/pretest-to-master b/pretest-to-master
new file mode 100755 (executable)
index 0000000..b093241
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+#
+# run  git fetch main
+# and then this
+
+set -e
+set -o pipefail
+
+git-rev-list main/master..main/pretest | nl -ba | tac | \
+while read num rev; do
+       echo >&2 ""
+       echo >&2 "testing $num $rev"
+       git checkout $rev
+       nice tests/using-intree tests/run-all
+       git push main HEAD:master
+done