Compare commits
1 Commits
developmen
...
1.0.0
Author | SHA1 | Date | |
---|---|---|---|
68f9c4d550 |
@ -1,7 +1,2 @@
|
|||||||
skip_list:
|
skip_list:
|
||||||
- yaml[line-length]
|
- yaml[line-length]
|
||||||
- yaml[colons]
|
|
||||||
|
|
||||||
exclude_paths:
|
|
||||||
- .drone.yml
|
|
||||||
- requirements.yml
|
|
||||||
|
244
.drone.yml
244
.drone.yml
@ -1,226 +1,46 @@
|
|||||||
---
|
---
|
||||||
|
name: Ansible Playbook Lint and Test Execution
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
type: docker
|
type: docker
|
||||||
name: run_ansible_tests_fedora39
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
branch:
|
|
||||||
exclude:
|
|
||||||
- main
|
|
||||||
event: [push]
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: "ansible_environment_verify"
|
- name: Install requirements, lint, and run Ansible playbook
|
||||||
image: *ansible_image
|
image: gitea.thezengarden.net/podman/images/ansible-dev:latest
|
||||||
|
environment:
|
||||||
|
GITEA_TOKEN:
|
||||||
|
from_secret: gitea_token
|
||||||
|
ANSIBLE_INVENTORY:
|
||||||
|
from_secret: ansible_inventory
|
||||||
commands:
|
commands:
|
||||||
- git log -1
|
- ansible-galaxy install -r $DRONE_WORKSPACE/requirements.yml
|
||||||
- ansible --version
|
- ansible-lint --offline $DRONE_WORKSPACE
|
||||||
- ansible-lint --version
|
- ansible-playbook -v -i $ANSIBLE_INVENTORY $DRONE_WORKSPACE/hello.yml
|
||||||
|
- echo "Build complete and successful for $DRONE_REPO_NAME"
|
||||||
- name: "ansible_galaxy_requirements"
|
when:
|
||||||
image: *ansible_image
|
branch:
|
||||||
commands:
|
- development
|
||||||
- ansible-galaxy install -r requirements.yml
|
event:
|
||||||
|
include:
|
||||||
- name: "ansible_lint"
|
- push
|
||||||
image: *ansible_image
|
exclude:
|
||||||
commands:
|
- pull_request
|
||||||
- ansible-lint --offline
|
|
||||||
|
|
||||||
- name: "ansible_playbook_execution"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-playbook -v $ANSIBLE_INVENTORY $ANSIBLE_PLAYBOOK
|
|
||||||
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
type: docker
|
|
||||||
name: run_ansible_tests_centos9
|
|
||||||
|
|
||||||
global-variables:
|
|
||||||
ansible_image : &ansible_image "gitea.thezengarden.net/podman/images/ansible-dev:centos-stream9"
|
|
||||||
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
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
branch:
|
|
||||||
exclude:
|
|
||||||
- main
|
|
||||||
event: [push]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: "ansible_environment_verify"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- git log -1
|
|
||||||
- ansible --version
|
|
||||||
- ansible-lint --version
|
|
||||||
|
|
||||||
- name: "ansible_galaxy_requirements"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-galaxy install -r requirements.yml
|
|
||||||
|
|
||||||
- name: "ansible_lint"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-lint --offline
|
|
||||||
|
|
||||||
- name: "ansible_playbook_execution"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-playbook -v $ANSIBLE_INVENTORY $ANSIBLE_PLAYBOOK
|
|
||||||
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
type: docker
|
|
||||||
name: run_ansible_tests_debian12
|
|
||||||
|
|
||||||
global-variables:
|
|
||||||
ansible_image : &ansible_image "gitea.thezengarden.net/podman/images/ansible-dev:debian-12"
|
|
||||||
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
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
branch:
|
|
||||||
exclude:
|
|
||||||
- main
|
|
||||||
event: [push]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: "ansible_environment_verify"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- git log -1
|
|
||||||
- ansible --version
|
|
||||||
- ansible-lint --version
|
|
||||||
|
|
||||||
- name: "ansible_galaxy_requirements"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-galaxy install -r requirements.yml
|
|
||||||
|
|
||||||
- name: "ansible_lint"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-lint --offline
|
|
||||||
|
|
||||||
- name: "ansible_playbook_execution"
|
|
||||||
image: *ansible_image
|
|
||||||
commands:
|
|
||||||
- ansible-playbook -v $ANSIBLE_INVENTORY $ANSIBLE_PLAYBOOK
|
|
||||||
|
|
||||||
|
|
||||||
# ---
|
# ---
|
||||||
|
# name: Test Ansible Linting of drone-test-1
|
||||||
# kind: pipeline
|
# kind: pipeline
|
||||||
# type: exec
|
# type: docker
|
||||||
# name: check_docker
|
|
||||||
|
|
||||||
# trigger:
|
|
||||||
# branch:
|
|
||||||
# exclude:
|
|
||||||
# - main
|
|
||||||
# event: [push]
|
|
||||||
# status: [success]
|
|
||||||
|
|
||||||
# depends_on:
|
|
||||||
# - run_ansible_tests
|
|
||||||
|
|
||||||
# steps:
|
# steps:
|
||||||
# - name: check_env
|
# - name: Add comment to pull request
|
||||||
# commands:
|
# image: gitea.thezengarden.net/podman/images/ansible-dev:latest
|
||||||
# - whoami
|
|
||||||
# - hostnamectl
|
|
||||||
# - env
|
|
||||||
# - pwd
|
|
||||||
# - tree
|
|
||||||
# - cat requirements.yml
|
|
||||||
|
|
||||||
# - name: docker_info
|
|
||||||
# commands:
|
|
||||||
# - docker info
|
|
||||||
|
|
||||||
# - name: docker_build
|
|
||||||
# environment:
|
# environment:
|
||||||
# REGISTRY : gitea.thezengarden.net
|
# GITEA_TOKEN:
|
||||||
# BUILD_PREFIX : "podman/images"
|
# from_secret: gitea_token
|
||||||
# BUILD_NAME : ansible-dev
|
|
||||||
# commands:
|
# commands:
|
||||||
# - echo "docker build --no-cache -t $REGISTRY/$BUILD_PREFIX/$BUILD_NAME:$CI_BUILD_NUMBER ."
|
# - '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\"}"'
|
||||||
# - docker build --no-cache -t $REGISTRY/$BUILD_PREFIX/$BUILD_NAME:$CI_BUILD_NUMBER .
|
# depends_on:
|
||||||
|
# - "Install requirements, lint, and run Ansible playbook"
|
||||||
# - name: docker_login
|
# when:
|
||||||
# environment:
|
# event:
|
||||||
# REGISTRY : gitea.thezengarden.net
|
# - pull_request
|
||||||
# GITEA_USER :
|
|
||||||
# from_secret: gitea_user
|
|
||||||
# GITEA_PASSWORD :
|
|
||||||
# from_secret: gitea_password
|
|
||||||
# commands:
|
|
||||||
# - echo "$GITEA_PASSWORD" | docker login --username chris --password-stdin $REGISTRY
|
|
||||||
|
|
||||||
# - name: docker_push
|
|
||||||
# environment:
|
|
||||||
# REGISTRY : gitea.thezengarden.net
|
|
||||||
# BUILD_PREFIX : "podman/images"
|
|
||||||
# BUILD_NAME : ansible-dev
|
|
||||||
# commands:
|
|
||||||
# - docker push $REGISTRY/$BUILD_PREFIX/$BUILD_NAME:$CI_BUILD_NUMBER
|
|
||||||
# - docker images | grep "$REGISTRY/$BUILD_PREFIX/$BUILD_NAME"
|
|
||||||
|
|
||||||
# - name: docker_images
|
|
||||||
# environment:
|
|
||||||
# REGISTRY : gitea.thezengarden.net
|
|
||||||
# BUILD_PREFIX : "podman/images"
|
|
||||||
# BUILD_NAME : ansible-dev
|
|
||||||
# commands:
|
|
||||||
# - docker images | grep "$REGISTRY/$BUILD_PREFIX/$BUILD_NAME"
|
|
||||||
|
|
||||||
|
|
||||||
# ---
|
|
||||||
# kind: pipeline
|
|
||||||
# type: exec
|
|
||||||
# name: setup_env
|
|
||||||
|
|
||||||
# trigger:
|
|
||||||
# branch:
|
|
||||||
# exclude:
|
|
||||||
# - main
|
|
||||||
# event: [push]
|
|
||||||
|
|
||||||
# steps:
|
|
||||||
# - name: write_vars
|
|
||||||
# environment:
|
|
||||||
# DIMG:
|
|
||||||
# from_secret: docker_image
|
|
||||||
# commands:
|
|
||||||
# - pwd
|
|
||||||
# - ls -ltra
|
|
||||||
# - echo "dimg=$DIMG" > .drone_env_test
|
|
||||||
|
|
||||||
# - name: read_vars
|
|
||||||
# commands:
|
|
||||||
# - pwd
|
|
||||||
# - ls -ltra
|
|
||||||
# - cat .drone_env_test
|
|
||||||
# - source .drone_env_test
|
|
||||||
# - echo $dimg
|
|
||||||
|
30
.drone.yml.test1
Normal file
30
.drone.yml.test1
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
name: Ansible Linting of drone-test-1
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: "Ansible Testing: Install required packages and Python modules"
|
||||||
|
image: quay.io/centos/centos:stream9
|
||||||
|
commands:
|
||||||
|
- dnf update -y
|
||||||
|
- dnf install -y python3-pip git hostname
|
||||||
|
- pip3 install ansible-core==2.14.11 ansible-lint==6.13.1
|
||||||
|
|
||||||
|
|
||||||
|
- name: "Ansible Testing: Make repo directory and clone desired repository"
|
||||||
|
image: quay.io/centos/centos:stream9
|
||||||
|
commands:
|
||||||
|
- mkdir /opt/test
|
||||||
|
- git clone https://gitea.thezengarden.net/chris/drone-test-1.git /opt/test/drone-test-1
|
||||||
|
depends_on:
|
||||||
|
- "Ansible Testing: Install required packages and Python modules"
|
||||||
|
|
||||||
|
|
||||||
|
- name: "Ansible Testing: Run Ansible-Lint and Ansible-Playbook against cloned repo"
|
||||||
|
image: quay.io/centos/centos:stream9
|
||||||
|
commands:
|
||||||
|
- ansible-lint /opt/test/drone-test-1
|
||||||
|
- ansible-playbook -v -i 127.0.0.1, /opt/test/drone-test-1/hello.yml
|
||||||
|
depends_on:
|
||||||
|
- "Ansible Testing: Make repo directory and clone desired repository"
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +0,0 @@
|
|||||||
.old
|
|
20
Dockerfile
20
Dockerfile
@ -1,20 +0,0 @@
|
|||||||
FROM fedora:39
|
|
||||||
LABEL maintainer="Chris Hammer (chris@thezengarden.net)"
|
|
||||||
|
|
||||||
RUN rm /etc/localtime \
|
|
||||||
&& ln -s /usr/share/zoneinfo/US/Eastern /etc/localtime
|
|
||||||
|
|
||||||
RUN mkdir -p /root/.ssh
|
|
||||||
COPY conf/ssh_config /root/.ssh/config
|
|
||||||
COPY conf/hosts /etc/hosts
|
|
||||||
COPY conf/dnf.conf /etc/dnf/dnf.conf
|
|
||||||
COPY python/requirements.txt /tmp/requirements.txt
|
|
||||||
|
|
||||||
RUN dnf update -y
|
|
||||||
RUN dnf install -y python3-pip git ansible-core python3-ansible-lint
|
|
||||||
# && pip install pip --upgrade \
|
|
||||||
# && pip install -r /tmp/requirements.txt
|
|
||||||
|
|
||||||
COPY ansible/ansible-check.yml /tmp/ansible-check.yml
|
|
||||||
|
|
||||||
CMD ["/bin/bash"]
|
|
@ -1,10 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Ansible Install Test
|
|
||||||
hosts: all
|
|
||||||
become: false
|
|
||||||
gather_facts: false
|
|
||||||
|
|
||||||
tasks:
|
|
||||||
- name: Test Ansible Installation
|
|
||||||
ansible.builtin.debug:
|
|
||||||
msg: "Ansible has been successfully installed!"
|
|
@ -1,7 +0,0 @@
|
|||||||
[main]
|
|
||||||
gpgcheck=1
|
|
||||||
installonly_limit=3
|
|
||||||
clean_requirements_on_remove=True
|
|
||||||
best=True
|
|
||||||
skip_if_unavailable=False
|
|
||||||
max_parallel_downloads=20
|
|
@ -1 +0,0 @@
|
|||||||
10.10.10.109 gitea.thezengarden.net
|
|
@ -1,14 +0,0 @@
|
|||||||
AddKeysToAgent yes
|
|
||||||
|
|
||||||
Host 10.*
|
|
||||||
StrictHostKeyChecking no
|
|
||||||
UserKnownHostsFile=/dev/null
|
|
||||||
|
|
||||||
Host git git.thezengarden.net
|
|
||||||
Hostname gitlab
|
|
||||||
|
|
||||||
|
|
||||||
Host gitea gitea.thezengarden.net
|
|
||||||
Hostname 10.10.10.109
|
|
||||||
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
- name: Hello world
|
- name: Hello world
|
||||||
hosts: all
|
hosts: localhost
|
||||||
|
connection: local
|
||||||
become: false
|
become: false
|
||||||
gather_facts: false
|
gather_facts: false
|
||||||
|
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- name: Say Hello world
|
- name: Say Hello world
|
||||||
ansible.builtin.debug:
|
ansible.builtin.debug:
|
||||||
|
21
old/drone-yml.centos8
Normal file
21
old/drone-yml.centos8
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
name: Ansible Linting of drone-test-1
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Prepare CentOS 8 image, clone, and test code
|
||||||
|
image: centos:8
|
||||||
|
commands:
|
||||||
|
- hostname
|
||||||
|
- lscpu
|
||||||
|
- dnf --disablerepo '*' --enablerepo=extras swap centos-linux-repos centos-stream-repos -y
|
||||||
|
- dnf distro-sync -y
|
||||||
|
- dnf update -y
|
||||||
|
- hostname
|
||||||
|
- dnf install -y ansible-core git
|
||||||
|
- pip3 install ansible-lint
|
||||||
|
- mkdir /opt/test
|
||||||
|
- git clone https://gitea.thezengarden.net/chris/drone-test-1.git /opt/test/drone-test-1
|
||||||
|
- ansible-lint /opt/test/drone-test-1
|
||||||
|
|
@ -1,2 +0,0 @@
|
|||||||
ansible-core==2.14.11
|
|
||||||
ansible-lint==6.13.1
|
|
@ -1,3 +1,5 @@
|
|||||||
collections:
|
collections:
|
||||||
- name: ansible.posix
|
- community.general
|
||||||
- name: community.general
|
- ansible.netcommon
|
||||||
|
- community.docker
|
||||||
|
- containers.podman
|
||||||
|
Reference in New Issue
Block a user