检查我们是否处于 GitHub Action / Travis CI / Circle CI 等测试环境中

问题描述 投票:0回答:2

我想以编程方式确定特定的 Python 脚本是否在测试环境中运行,例如

  • GitHub 行动
  • 特拉维斯 CI
  • 圆圈CI

等等。我意识到这需要一些启发,但这对我来说已经足够了。是否总是设置某些环境变量?用户名总是相同吗?等等

python github-actions travis-ci cicd circleci
2个回答
12
投票

环境变量通常为每个 CI/CD 管道工具设置。

我所知道的:

os.getenv("GITHUB_ACTIONS")
os.getenv("TRAVIS")
os.getenv("CIRCLECI")
os.getenv("GITLAB_CI")

在各自的工具环境中执行时,将在Python脚本中返回

true

例如:

  • os.getenv("GITHUB_ACTIONS") == "true"
    在 Github Action 工作流程中。
  • os.getenv("CIRCLECI") == "true"
    在 CircleCI 管道中。
  • ...

PS:如果我没记错的话,要识别python脚本是在

Jenkins
Kubernetes Service host
中执行的,行为是不一样的。


© www.soinside.com 2019 - 2024. All rights reserved.