d4910d18c0
This moves the gitea partial clone test from our setup playbook into testinfra/test_gitea.py. We should avoid asserting too much state and behavior in the ansible as it makes the split between testinfra and ansible more confusing. To address this we move this behavior check into testinfra where it belongs. Change-Id: I6a649bc380f850425c51e9b4632c798a23ab0e0e
73 lines
2.7 KiB
YAML
73 lines
2.7 KiB
YAML
- hosts: "gitea"
|
|
tasks:
|
|
- name: Run selenium container
|
|
include_role:
|
|
name: run-selenium
|
|
|
|
- name: Test base jobs project was created in gitea
|
|
uri:
|
|
url: "https://localhost:3000/opendev/base-jobs"
|
|
validate_certs: false
|
|
status_code: 200
|
|
- name: Test zuul project was created in gitea
|
|
uri:
|
|
url: "https://localhost:3000/zuul/zuul"
|
|
validate_certs: false
|
|
status_code: 200
|
|
return_content: yes
|
|
register: zuul_content
|
|
- name: Assert description updated
|
|
fail:
|
|
msg: Zuul description was not updated
|
|
when: '"Zuuls new description" not in zuul_content.content'
|
|
- name: Configure ssh for pushing into test gitea
|
|
shell: |
|
|
ssh-keyscan -t rsa -p 222 localhost >> /home/zuul/.ssh/known_hosts
|
|
ssh-keygen -t ed25519 -f /home/zuul/.ssh/id_ed25519 -C giteagerrittest -P ''
|
|
# We become zuul here because we need to git push has zuul later to
|
|
# ensure the owner of the git repo is the one operating on it.
|
|
become: true
|
|
become_user: zuul
|
|
- name: Register new gitea gerrit pubkey value
|
|
slurp:
|
|
src: /home/zuul/.ssh/id_ed25519.pub
|
|
register: slurped_gitea_gerrit_pubkey
|
|
- name: Set testing key on gerrit account in gitea
|
|
no_log: true
|
|
uri:
|
|
user: root
|
|
password: "{{ gitea_root_password }}"
|
|
force_basic_auth: true
|
|
url: "https://localhost:3000/api/v1/admin/users/gerrit/keys"
|
|
validate_certs: false
|
|
method: POST
|
|
status_code: 201
|
|
body_format: json
|
|
body:
|
|
key: "{{ slurped_gitea_gerrit_pubkey['content'] | b64decode }}"
|
|
read_only: false
|
|
title: "Gerrit testing key"
|
|
- name: Push system-config into our test gitea for testing
|
|
shell: |
|
|
cd /home/zuul/src/opendev.org/opendev/system-config
|
|
git remote add test-gitea ssh://git@localhost:222/opendev/system-config
|
|
GIT_SSH_COMMAND='ssh -i /home/zuul/.ssh/id_ed25519' git push -f test-gitea master
|
|
# We run this as zuul because zuul owns the git repo in /home/zuul
|
|
# and git by default does not want to operate on a git repo as another
|
|
# user.
|
|
become: true
|
|
become_user: zuul
|
|
|
|
- name: Run rename playbook
|
|
import_playbook: rename_repos.yaml
|
|
vars:
|
|
repolist: /home/zuul/src/opendev.org/opendev/system-config/playbooks/zuul/test_gitea_renames.yaml
|
|
|
|
# This is conveniently left here so that it can be uncommented in order to
|
|
# autohold the system-config-run-gitea job in zuul.
|
|
#- hosts: bridge.openstack.org
|
|
# tasks:
|
|
# - name: Force a failure for human intervention
|
|
# fail:
|
|
# msg: Failing so that we can check on things with a hold
|