drone-test-1/.drone.yml
2023-11-18 23:23:55 -05:00

144 lines
3.3 KiB
YAML

---
kind: pipeline
type: docker
name: run_ansible_tests
global-variables:
ansible_image: &ansible_image "gitea.thezengarden.net/podman/images/ansible-dev:latest"
ansible_inventory: &ansible_inventory "-i 127.0.0.1, --connection=local"
ansible_playbook: &ansible_playbook "hello.yml"
environment:
ANSIBLE_INVENTORY : *ansible_inventory
ANSIBLE_PLAYBOOK : *ansible_playbook
ANSIBLE_DOCKER_IMAGE : *ansible_image
trigger:
branch:
exclude:
- main
event: [push]
steps:
- name: "ansible_environment_verify"
image: *ansible_image
commands:
- git log -1
- ansible --version
- ansible-lint --version
# when:
# branch:
# exclude:
# - main
# event: [push]
- name: "ansible_galaxy_requirements"
image: *ansible_image
commands:
- ansible-galaxy install -r requirements.yml
# when:
# branch:
# exclude:
# - main
# event: [push]
- name: "ansible_lint"
image: *ansible_image
commands:
- ansible-lint --offline
# when:
# branch:
# exclude:
# - main
# event: [push]
- name: "ansible_playbook_execution"
image: *ansible_image
commands:
- ansible-playbook -v $ANSIBLE_INVENTORY $ANSIBLE_PLAYBOOK
# when:
# branch:
# exclude:
# - main
# event: [push]
---
kind: pipeline
type: exec
name: check_docker
trigger:
branch:
exclude:
- main
event: [push]
steps:
- name: check_env
commands:
- env
- whoami
- hostnamectl
- lscpu
- free -h
- lsblk -f
- name: docker_info
commands:
- docker info
- name: docker_images
commands:
- docker images
- name: docker_psa
commands:
- docker ps -a
###############################################################################
###############################################################################
###############################################################################
# - name: Update repo with build stats
# image: appleboy/drone-git-push
# settings:
# branch: testing
# remote: gitea@10.10.10.109:chris/drone-test-1.git
# force: false
# commit: true
# empty_commit: true
# commit_message: "Drone build ${DRONE_COMMIT_SHA:0:7} => ${DRONE_BUILD_STATUS}"
# author_name: "Drone CI"
# author_email: "chris@thezengarden.net"
# skip_verify: true
# ssh_key:
# from_secret: gitea_ssh_privkey
# when:
# branch:
# - development
# ---
# name: Test Ansible Linting of drone-test-1
# kind: pipeline
# type: docker
# steps:
# - name: Add comment to pull request
# image: gitea.thezengarden.net/podman/images/ansible-dev:latest
# environment:
# GITEA_TOKEN:
# from_secret: gitea_token
# commands:
# - 'curl -sL -X POST -H "Authorization: token $GITEA_TOKEN" -H "Content-type: application/json" https://gitea.thezengarden.net/api/v1/repos/${DRONE_REPO_OWNER}/${DRONE_REPO_NAME}/issues/${DRONE_PULL_REQUEST}/comments -d "{\"body\": \"Build complete and successful for $DRONE_REPO_NAME\"}"'
# depends_on:
# - "Install requirements, lint, and run Ansible playbook"
# when:
# event:
# - pull_request