rht-labs / labs-ci-cd

👻UNMAINTAINED - A collection of Red Hat Open Innovation Labs CI/CD components
Apache License 2.0
101 stars 70 forks source link

Moving Nexus + adding post step for seeding #122

Closed oybed closed 6 years ago

oybed commented 6 years ago

NOTE: see important note below re: merging.

This PR moves the configure-nexus role from the deprecated repo ansible-stacks.

The secondary purpose for the move is to make it more readily available for use by the openshift-applier and the upcoming pre/post steps. This will allow for a better seeding of the nexus content by using a post-step to call configure-nexus.

resolved : This PR is marked as WIP as it has a dependency on the CASL PR for pre/post steps get merged: https://github.com/redhat-cop/casl-ansible/pull/155

NOTE: When merging this PR, please ensure to use Create a merge commit to preserve the commit history brought over from ansible-stacks.

@JoshuaTPritchett FYI

sherl0cks commented 6 years ago

@oybed ack - waiting on the casl pr...

sherl0cks commented 6 years ago

@oybed interesting side effect with the new role and the galaxy_requirements entry in the inventory. TASK [make-projects-unique : Regexp replace on params files] ******************* fatal: [localhost]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'content'"}

can you please:

oybed commented 6 years ago

@sherl0cks done. PTAL.

Note: we'll have to make the changes in CASL for the make-applier-projects-unique role.

sherl0cks commented 6 years ago

@oybed fails with:

TASK [casl-ansible/roles/openshift-applier : Run ansible-galaxy to pull in dependency roles] ***

failed: [localhost -> localhost] (item=/tmp/workspace/labs-ci-cd-ci-for-labs-ci-cd-pipeline/labs-ci-cd/inventory/../galaxy_requirements.yml) => {"changed": true, "cmd": ["ansible-galaxy", "install", "-r", "/tmp/workspace/labs-ci-cd-ci-for-labs-ci-cd-pipeline/labs-ci-cd/inventory/../galaxy_requirements.yml", "-p", "/tmp/ansible.6B3fPT/"], 
"delta": "0:00:01.022470", 
"end": "2018-02-16 14:31:54.941492", "failed": true,
 "item": "/tmp/workspace/labs-ci-cd-ci-for-labs-ci-cd-pipeline/labs-ci-cd/inventory/../galaxy_requirements.yml", 
"msg": "non-zero return code", 
"rc": 1, 
"start": "2018-02-16 14:31:53.919022", 
"stderr": " [WARNING]: - labs-ci-cd was NOT installed successfully: this role does not\nappear to have a meta/main.yml file.\nERROR! - you can use --ignore-errors to skip failed roles and finish processing the list.", 
"stderr_lines": [" [WARNING]: - labs-ci-cd was NOT installed successfully: this role does not", "appear to have a meta/main.yml file.", "ERROR! - you can use --ignore-errors to skip failed roles and finish processing the list."],
 "stdout": 
"", "stdout_lines": []}
oybed commented 6 years ago

@sherl0cks it's failing because the repo doesn't have the meta/main.yml yet - it's a bit catch-22. So either temporarily update the galaxy_requirements.yml to point to my PR branch, or we can submit a small PR up front to get meta/main.yml added. It's related to your other comment, which I'll address separately.

sherl0cks commented 6 years ago

assuming for a minute we need to clone the repo a second time, we need to update the regex processing to hit that file then during the PR build. Currently it only processes the params directory. We'll get CI failures here in the event that changes are made to the nexus role (or any others that come after it)