mirror of
https://github.com/kennethreitz/bake.git
synced 2026-06-21 07:01:00 +00:00
99 lines
2.3 KiB
YAML
99 lines
2.3 KiB
YAML
# Python CircleCI 2.0 configuration file
|
|
#
|
|
# Check https://circleci.com/docs/2.0/language-python/ for more details
|
|
#
|
|
version: 2
|
|
jobs:
|
|
test:
|
|
docker:
|
|
- image: kennethreitz/bake:ci
|
|
working_directory: /app
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: $ pipenv install…
|
|
command: |
|
|
export PIPENV_MAX_SUBPROCESS=128
|
|
pipenv install --dev --system --deploy
|
|
- run:
|
|
name: BATS tests
|
|
command: |
|
|
cd tests
|
|
mkdir -p /app/reports/bats
|
|
bats *.bats --tap | tap2xml > "/app/reports/bats/report.xml"
|
|
- store_test_results:
|
|
path: reports
|
|
docker-push:
|
|
docker:
|
|
- image: kennethreitz/bake:ci
|
|
|
|
working_directory: /app
|
|
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker:
|
|
docker_layer_caching: true
|
|
- run: &docker-login
|
|
name: $ docker login
|
|
command: |
|
|
set -u
|
|
# docker login --username $DOCKERHUB_USERNAME --password $DOCKERHUB_PASSWORD
|
|
# echo "$DOCKERHUB_PASSWORD" | docker login --username $DOCKERHUB_USERNAME --password-stdin
|
|
# echo "$GITHUB_TOKEN" | docker login docker.pkg.github.com --username $GITHUB_USERNAME --password-stdin
|
|
|
|
- run:
|
|
name: $ bake docker/push
|
|
command: bake docker/push
|
|
|
|
docker-push-ci:
|
|
docker:
|
|
- image: kennethreitz/bake:ci
|
|
|
|
working_directory: /app
|
|
|
|
steps:
|
|
- checkout
|
|
- setup_remote_docker:
|
|
docker_layer_caching: true
|
|
- run: *docker-login
|
|
- run:
|
|
name: $ docker-compose build ci
|
|
command: |
|
|
docker-compose build ci
|
|
- run:
|
|
name: $ docker push
|
|
command: |
|
|
docker push kennethreitz/bake:ci
|
|
|
|
workflows:
|
|
version: 2
|
|
test:
|
|
jobs:
|
|
- test:
|
|
filters:
|
|
branches:
|
|
ignore:
|
|
- master
|
|
test-and-docker-push:
|
|
jobs:
|
|
- test
|
|
- docker-push:
|
|
requires:
|
|
- test
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
tags:
|
|
only: /^v.*/
|
|
docker-push-ci:
|
|
triggers:
|
|
- schedule:
|
|
cron: "0 * * * *"
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
jobs:
|
|
- docker-push-ci
|