# How to pass an environment variable to a downstream build when running locally?

**URL:** <https://drone.discourse.group/t/how-to-pass-an-environment-variable-to-a-downstream-build-when-running-locally/8217>\
**Category:** Drone Support\
**Created:** [December 24, 2019, 4:32am UTC](https://drone.discourse.group/t/how-to-pass-an-environment-variable-to-a-downstream-build-when-running-locally/8217 "2019-12-24T04:32:22Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![quantonganh](https://yyz1.discourse-cdn.com/flex003/user_avatar/drone.discourse.group/quantonganh/32/5446_2.png) [@quantonganh](https://drone.discourse.group/u/quantonganh)\
**Post date:** [December 24, 2019, 4:32am UTC](https://drone.discourse.group/t/how-to-pass-an-environment-variable-to-a-downstream-build-when-running-locally/8217/1 "2019-12-24T04:32:22Z")

</div>

upstream:

```
steps:
- name: trigger
  image: plugins/downstream:linux-amd64
  settings:
    params:
      - SOURCE_BRANCH=${DRONE_SOURCE_BRANCH}

```

downstream:

```
  - name: repo
    image: docker.domain.com/owner/repo:${SOURCE_BRANCH}

```

The thing is it does not work when running locally by using `drone exec --env-file env`:

> mapping values are not allowed in this context

If I tried to escape the dollar sign (`$${SOURCE_BRANCH})`, then the error is:

> invalid reference format

---

<div class="post-metadata">

**Author:** ![quantonganh](https://yyz1.discourse-cdn.com/flex003/user_avatar/drone.discourse.group/quantonganh/32/5446_2.png) [@quantonganh](https://drone.discourse.group/u/quantonganh)\
**Post date:** [December 24, 2019, 11:31pm UTC](https://drone.discourse.group/t/how-to-pass-an-environment-variable-to-a-downstream-build-when-running-locally/8217/2 "2019-12-24T23:31:35Z")

</div>

Created: [https://github.com/drone/drone-cli/issues/164](https://github.com/drone/drone-cli/issues/164)
