dependabot / dependabot/dependabot-core

Dependabot environment variables

Open
#4,660 16 comments 36 reactions 0 assignees View on GitHub
T: feature-request
Dominant language
Ruby
Stars
5.8k
Forks
1.5k
Avg merge
2d 18h
Merged PRs (30d)
149

Description

I would like to specify an environment variable during dependabot runs.

I'm attempting to authenticate against a private cloudsmith python repository. I arrived at a working configuration [here](https://github.com/dependabot/dependabot-core/issues/4539). However, this working configuration means my Pipfile looks like so:

```
[[source]]
url = "https://dl.cloudsmith.io/basic/company/repo/python/index/"
verify_ssl = true
name = "cloudsmith"
```

While this works for dependabot given the yml in the aforementioned ticket, it doesn't work for local development. For local development our pipfile looks like so:

```
[[source]]
url = "https://dl.cloudsmith.io/${CLOUDSMITH_KEY}/company/repo/python/index/"
verify_ssl = true
name = "cloudsmith"
```

So if I'm just able to set the environment variable ${CLOUDSMITH_KEY} to "basic" my problem is solved.

```
version: 2
updates:
- package-ecosystem: "pip"
...
env:
CLOUDSMITH_KEY: basic
...
```

Unfortunately it's unsupported:

Screen Shot 2022-01-24 at 3 28 54 PM

Is there another way around this, or am I missing something? I would have thought setting some environment variables was a common use-case.

Contributor guide

Open the contributing guide

Research direction

Start by tracing how Dependabot validates update configuration and how the pip/Pipfile ecosystem handles source URLs. The issue’s target is an `updates[].env` configuration that makes `CLOUDSMITH_KEY` available during Dependabot runs while preserving local development, with coverage for the resulting configuration behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, ruby
Domain
devops, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.