githubgithub-cli

Create environment for repository using gh


Is it possible to create a new environment for a repository https://github.com/org/repo/settings/environments using the gh cli?

The only mention of environment I can find in the manual is here https://cli.github.com/manual/gh_secret_set where it says you can assign a secret to an existing environment, but it seems the environment would have to be created manually.


Solution

  • From what I'm seeing here in the gh cli repo that's going to be a no at this time. The issue [linked] is an enhancement request for just that.

    I too wanted to know if this could be done, as it's part of my workflow to inject environment secrets.

    You can still use the API to create it though.

    curl -X PUT \
    -H 'Authorization: Bearer ghp_...' \
    -H 'Accept: application/vnd.github.v3+json' \
    https://api.github.com/repos/<org>/<repo>/environments/<env>
    

    Alternatively, the same can be done using gh:

    gh api --method PUT -H "Accept: application/vnd.github+json" \
    repos/<org>/<repo>/environments/<env>