Nic*_*mer 10 python travis-ci circleci github-actions cicd
我想以编程方式确定特定的 Python 脚本是否在测试环境中运行,例如
等等。我意识到这需要一些启发,但这对我来说已经足够了。是否总是设置某些环境变量?用户名总是相同吗?ETC。
Gui*_*urd 20
通常为每个 CI/CD 管道工具设置一个环境变量。
我所知道的有:
os.getenv("GITHUB_ACTIONS")
os.getenv("TRAVIS")
os.getenv("CIRCLECI")
os.getenv("GITLAB_CI")
Run Code Online (Sandbox Code Playgroud)
在相应的工具环境中执行时将返回truepython 脚本。
例如:
os.getenv("GITHUB_ACTIONS") == "true"在 Github Action 工作流程中。os.getenv("CIRCLECI") == "true"在 CircleCI 管道中。PS:如果我没有记错的话,为了识别 python 脚本正在Jenkinsor中执行Kubernetes Service host,行为是不一样的。
Can*_*Can 11
我认为CI大多数环境中都定义了环境变量
3个案例参考: