diff --git a/elements/source-repositories/README.md b/elements/source-repositories/README.md index 5243c441..82c3a257 100644 --- a/elements/source-repositories/README.md +++ b/elements/source-repositories/README.md @@ -36,6 +36,9 @@ fetch/pull section of a review. For example: DIB_REPOLOCATION_nova=https://review.openstack.org/openstack/nova DIB_REPOREF_nova=refs/changes/72/61972/8 +Additionally, the lines in the source-repository scripts are eval'd, so they +may contain environment variables. + Git sources will be cloned to \ Tarballs will be extracted to \. Tarballs should contain a diff --git a/elements/source-repositories/extra-data.d/98-source-repositories b/elements/source-repositories/extra-data.d/98-source-repositories index 6ebd0cb4..86b1275a 100755 --- a/elements/source-repositories/extra-data.d/98-source-repositories +++ b/elements/source-repositories/extra-data.d/98-source-repositories @@ -12,7 +12,9 @@ function get_repos_for_element(){ local REGEX="^([^ ]+) (git|tar|file|package) ?(/[^ ]+)? ?([^ ]+)? ?([^ ]*)$" - while read line ; do + while read line; do + # expand variables + line=$(eval echo $line) # ignore blank lines and lines beginning in '#' [[ "$line" == \#* ]] || [[ -z "$line" ]] && continue