40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: default
|
|
|
|
steps:
|
|
- name: static_analysis
|
|
image: python:3
|
|
commands:
|
|
- pip3 install pylint bandit mccabe
|
|
- find . -name "*.py" -exec python3 -m py_compile '{}' \;
|
|
- find . -name "*.py" -exec pylint '{}' + || if [ $? -eq 1 ]; then echo "you fail"; fi
|
|
- find . -name "*.py" -exec python3 -m mccabe --min 3 '{}' + || if [ $? -eq 1 ]; then echo "you fail"; fi
|
|
- bandit -r . + || if [ $? -eq 1 ]; then echo "you fail"; fi
|
|
|
|
- name: build
|
|
image: docker:stable-dind
|
|
volumes:
|
|
- name: dockersock
|
|
path: /var/run
|
|
environment:
|
|
DOCKER_USERNAME:
|
|
from_secret: DOCKER_USERNAME
|
|
DOCKER_PASSWORD:
|
|
from_secret: DOCKER_PASSWORD
|
|
commands:
|
|
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin registry.kmlabz.com
|
|
- for dir in $PWD/*/; do dir=${dir%*/}; cd $dir; docker build -t=registry.kmlabz.com/$DOCKER_USERNAME/${dir##*/} .; docker push registry.kmlabz.com/$DOCKER_USERNAME/${dir##*/}; cd ..; done
|
|
|
|
services:
|
|
- name: docker
|
|
image: docker:stable-dind
|
|
privileged: true
|
|
volumes:
|
|
- name: dockersock
|
|
path: /var/run
|
|
|
|
volumes:
|
|
- name: dockersock
|
|
temp: {}
|