Die folgenden Variablen sind innerhalb von Shell-Skripten sichtbar:
BUILD_NUMBER
Die aktuelle Build-Nummer, z.B. "153".
BUILD_ID
Die aktuelle Build-ID, z.B. "2005-08-22_23-59-59" (YYYY-MM-DD_hh-mm-ss).
JOB_NAME
Projektname des Builds, z.B. "foo".
BUILD_TAG
Eine Zeichenkette in der Form "hudson-${JOBNAME}-${BUILD_NUMBER}". Diese Variable läßt sich sehr bequem zur späteren Identifikation in eine Resource-Datei, JAR-Datei usw. ablegen.
EXECUTOR_NUMBER
Die laufende Nummer des Build-Prozessors, der den aktuellen Build ausführt (aus den Build-Prozessoren desselben Rechners). Dies ist die Nummer, die Sie auch im Build-Prozessor Status sehen - mit der Ausnahme, daß bei der Umgebungsvariable die Zählung bei 0 und nicht bei 1 beginnt.
JAVA_HOME
Falls Ihr Job so konfiguriert ist, daß ein spezielles JDK verwendet werden soll, wird diese Variable auf den Wert von JAVA_HOME für dieses spezielle JDK gesetzt. Falls diese Variable gesetzt ist, wird PATH ebenfalls so aktualisiert, daß $JAVA_HOME/bin enthalten ist.
WORKSPACE
Der absolute Pfad zum Arbeitsbereich.
HUDSON_URL
Die absolute URL der Hudson-Instanz, z.B. http://server:port/hudson/.
BUILD_URL
Die absolute URL dieses Builds, z.B. http://server:port/hudson/job/foo/15/.
JOB_URL
Die absolute URL dieses Jobs, z.B. http://server:port/hudson/job/foo/.
SVN_REVISION
Bei Subversion-basierten Projekten enthält diese Variable die Revisionsnummer des Modules.
CVS_BRANCH
Bei CVS-basierten Projekten enthält diese Variable den Zweig des Moduls. Falls CVS so konfiguriert ist, daß der Trunk ausgecheckt wird, wird diese Variable nicht gesetzt.

Das folgende Beispiel zeigt, wie von Hudson bereitgestellte Umgebungsvariablen in Ant-Skripten verwendet werden können:

<target name="printinfo">
  <property environment="env" />
  <echo message="${env.BUILD_TAG}"/>
</target>