language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
version: 2.1
jobs:
test:
docker:
- image: circleci/python:3.8
steps:
- checkout
- run:
name: Install dependencies
command: pip install -r requirements.txt
- run:
name: Run tests
command: pytest
workflows:
version: 2
test:
jobs:
- test
pipeline
{
agent any
stages
{
stage('Install')
{
steps
{
sh 'pip install -r requirements.txt'
sh 'pip install flake8 pytest pytest-cov'
}
}
stage('Lint')
{
steps
{
sh 'flake8 .'
}
}
stage('Test')
{
steps
{
sh 'pytest --cov=./ --cov-report=xml'
}
}
stage('Build')
{
steps
{
sh 'python setup.py sdist bdist_wheel'
}
}
stage('Deploy to Staging')
{
when
{
branch 'develop'
}
steps
{
sh 'ansible-playbook deploy-staging.yml'
}
}
stage('Deploy to Production')
{
when
{
branch 'main'
}
steps
{
sh 'ansible-playbook deploy-production.yml'
}
}
}
post
{
always
{
junit '**/test-results/*.xml'
cobertura coberturaReportFile: '**/coverage.xml'
}
success
{
echo 'Pipeline completed successfully!'
}
failure
{
echo 'Pipeline failed. Please check the logs.'
}
}
}
stage('Install')
{
steps
{
sh 'pip install -r requirements.txt'
sh 'pip install flake8 pytest pytest-cov'
}
}
stage('Lint')
{
steps
{
sh 'flake8 .'
}
}
stage('Test')
{
steps
{
sh 'pytest --cov=./ --cov-report=xml'
}
}
stage('Build')
{
steps
{
sh 'python setup.py sdist bdist_wheel'
}
}
stage('Deploy')
{
steps
{
sh 'ansible-playbook deploy.yml'
}
}
.name: Python application
on: [push]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Install dependencies
run: pip install -r requirements.txt
- name: Run tests
run: pytest
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
.travis.yaml
language: python
python:
- "3.8"
install:
- pip install -r requirements.txt
script:
- python3 pytest.py
在任何环境组合中运行您的单元和集成测试,以实现全面的自动化,并在您进入生产阶段时获得绝对的质量保证。
无需等待管道完成才能继续构建功能或修复错误 - 通过直观的并行化,您可以更快地获得对提交和拉取请求的直观反馈。
默认情况下,Travis CI 在每次更改分支或拉取请求时运行您的管道,并为通过构建自动部署。
使用阶段更快地捕获故障,或添加智能条件,以最大限度地减少构建时间并捕获其他 CI/CD 工具无法跟踪的边缘情况。
无论您的管道变得多么复杂,它们都将封装在一个易于阅读、易于维护且最小的 .travis.yml 文件中。
只需几行 YAML 即可访问 HashiCorp Vault 实例中的凭据,或自行加密您的敏感文件和敏感数据以实现完全控制。
运行、构建和将 Docker 镜像推送到任何注册表,以准确测试您的容器化服务如何在类似生产环境中运行。
将您的管道连接到 DeepSource、Coveralls、Coverity Scan、SourceClear 等,以获得更深入的生产可行性保证。
Travis CI 在每次构建时使用干净的 VM 和隔离的容器,以完全防止干扰或密钥泄漏。
Travis CI 支持 30 多种语言,并具有预先配置的环境,无需任何设置或额外的依赖项管理任务 - 只需插入一个新的 语言 密钥。
确保您的提交和拉取请求在您广泛的生产 Linux 基础设施中都能正常工作,而无需管理 VM 云或手动连接自定义作业。
利用构建矩阵针对多个操作系统测试单个代码库,然后添加任意数量的运行时版本,以确保对您的单元和集成测试充满信心。
AMD64
最高 16 个 vCPU
NVIDIA T4
16GB GDDR6
NVIDIA V100
16GB HBM2
如果并行构建和缓存的依赖项还不够,请利用干净的 VM,这些 VM 最多可拥有 64 GiB 的内存或 16 GB 的 GPU 加速,用于 AI 和游戏中的繁重工作负载。