]> code.delx.au - gnu-emacs-elpa/commitdiff
Refine the deployment script to avoid deploying unstable code.
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 5 Dec 2012 15:31:58 +0000 (10:31 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Wed, 5 Dec 2012 15:31:58 +0000 (10:31 -0500)
admin/update-archive.sh
packages/README [new file with mode: 0644]

index e5de7872c5669ce2bb65a80d947d246b0e20dd8c..8d06f1a1cd02c5f8a38c133ae5f5272c39bacac5 100755 (executable)
@@ -84,10 +84,12 @@ latest="emacs-packages-latest.tgz"
      # FIXME: it'd be better to only rebuild the packages that have been
      # modified, rather than rely on md5 to try and abort the refresh
      # when we don't want it!
-     if [ -r "$dst" ] && [ "$(md5sum <"$f")" = "$(md5sum <"$dst")" ]; then
-         rm "$f"
-     else
-         mv "$f" "$dst"
+     # Actually, let's never overwrite an existing version.  So changes can
+     # be installed without causing a new package to be build until the
+     # version field is changed.
+     if [ -r "$dst" ] # && [ "$(md5sum <"$f")" = "$(md5sum <"$dst")" ]
+     then rm "$f"
+     else mv "$f" "$dst"
      fi
  done
  mv build/archive/"$latest" staging/
diff --git a/packages/README b/packages/README
new file mode 100644 (file)
index 0000000..80cd975
--- /dev/null
@@ -0,0 +1,11 @@
+This directory contains most of the source code of the GNU ELPA packages.
+
+Each directory in here corresponds to a package, which can be
+either a single-file package or a multifile package.
+
+A nightly cron job refreshes the GNU ELPA archive from this repository.
+
+This cron job only creates a new package when the "version" of a package
+is modified.  This means that you can safely work on the next version here
+without worrying about the unstable code making it to GNU ELPA, and simply
+update the "version" when you want to release the new code.