Closed Bug 1294805 Opened 8 years ago Closed 8 years ago

Create ansible scripts to configure a mozreview CI environment under Jenkins

Categories

(MozReview Graveyard :: Testing / Development Environment, enhancement)

Production
enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mars, Assigned: mars)

References

Details

Attachments

(4 files)

We should create a set of ansible scripts for configuring a Jenkins CI host that can run the mozreview test suite.

I already have a working proof-of-concept that does not suffer any of the intermittent test failures from bug 1277566.  It extends my work to create a vagrant dev environment in bug 1294688.
Assignee: nobody → mars
Status: NEW → ASSIGNED
Depends on: 1294688
Comment on attachment 8790926 [details]
ansible: add vendor-roles dir and requirements.yml (bug 1294805)

https://reviewboard.mozilla.org/r/78528/#review77644
Attachment #8790926 - Flags: review?(gps) → review+
Comment on attachment 8790927 [details]
ansible: add vendor roles needed by mozreview CI (bug 1294805)

https://reviewboard.mozilla.org/r/78530/#review77646

I'm willing to rubber stamp this.

I'm not a huge fan of vendoring all the accessory files (e.g. test foo) since it will never be used. But it is small and we can always delete it later.

I'm also not a fan of the java role, since it essentially amounts to a single item that installs the java package. But since it is listed as a dependency of the jenkins role, we can either take the jenkins role as-is and vendor the java role or modify the jenkings role. As long as we're not modifying the upstream role for other reasons, it's probably easier to just vendor the java role and keep everything unchanged.

Another option to essentially do a copy of upstream roles into v-c-t and then essentially manage a permanent fork. I can't imagine upstream adding new features that we absolutely must have. But I can imagine us wanting to change behavior of the roles and not wanting to wait for upstream to accept this additions. I don't care super strongly. We can always change things later if the vendoring approach doesn't pan out.
Attachment #8790927 - Flags: review?(gps) → review+
Comment on attachment 8790928 [details]
ansible: add playbook for deploying a mozreview CI environment (bug 1294805)

https://reviewboard.mozilla.org/r/78532/#review77648

FWIW, we have python code in testing/vcttesting/deploy.py and testing/vcttesting/deploy_mach_commands.py that provide plumbing to hook up the `./deploy` script to run Ansible. You may want to define a command to deploy to MozReview CI if you don't feel like typing ansible commands manually :)
Attachment #8790928 - Flags: review?(gps) → review+
Comment on attachment 8790929 [details]
testing: use vagrant for testing ansible CI deployment scripts (bug 1294805)

https://reviewboard.mozilla.org/r/78534/#review77650

FWIW, I believe testing/jenkins is currently unused. You are free to do with it as you please. So rubber stamp r+.

(I'm not actually sure how MozReview's existing CI is configured. You should talk to :rwood about how this will all integrate.
Attachment #8790929 - Flags: review+
Comment on attachment 8790926 [details]
ansible: add vendor-roles dir and requirements.yml (bug 1294805)

https://reviewboard.mozilla.org/r/78528/#review78130
Attachment #8790926 - Flags: review?(glob) → review+
Comment on attachment 8790927 [details]
ansible: add vendor roles needed by mozreview CI (bug 1294805)

https://reviewboard.mozilla.org/r/78530/#review78134
Attachment #8790927 - Flags: review?(glob) → review+
Comment on attachment 8790929 [details]
testing: use vagrant for testing ansible CI deployment scripts (bug 1294805)

https://reviewboard.mozilla.org/r/78534/#review78140

::: testing/jenkins/Vagrantfile:47
(Diff revision 2)
> +      jenkins_admin_username_override: "admin",
> +      jenkins_admin_password_override: "admin"

something i don't understand here - in deploy-mozreview-ci.yml there's a check to "force the user to think about and set an appropriate [..] username and password", however it's defaulted to admin/admin here.

wouldn't the defaulting here negate that check?
Comment on attachment 8790929 [details]
testing: use vagrant for testing ansible CI deployment scripts (bug 1294805)

https://reviewboard.mozilla.org/r/78534/#review78140

> something i don't understand here - in deploy-mozreview-ci.yml there's a check to "force the user to think about and set an appropriate [..] username and password", however it's defaulted to admin/admin here.
> 
> wouldn't the defaulting here negate that check?

This is in the vagrant box for local development and testing of the CI environment on a private network, so admin:admin should be fine in this context ("admin:password" or something would work too).  The password override check is there to make sure someone sets something completely different for CI boxes on a public network.
Comment on attachment 8790928 [details]
ansible: add playbook for deploying a mozreview CI environment (bug 1294805)

https://reviewboard.mozilla.org/r/78532/#review78978
Attachment #8790928 - Flags: review?(glob) → review+
Comment on attachment 8790929 [details]
testing: use vagrant for testing ansible CI deployment scripts (bug 1294805)

https://reviewboard.mozilla.org/r/78534/#review78980
Attachment #8790929 - Flags: review?(glob) → review+
Comment on attachment 8790926 [details]
ansible: add vendor-roles dir and requirements.yml (bug 1294805)

https://reviewboard.mozilla.org/r/78528/#review79206
Attachment #8790926 - Flags: review?(smacleod) → review+
Comment on attachment 8790927 [details]
ansible: add vendor roles needed by mozreview CI (bug 1294805)

https://reviewboard.mozilla.org/r/78530/#review79208
Attachment #8790927 - Flags: review?(smacleod) → review+
Comment on attachment 8790928 [details]
ansible: add playbook for deploying a mozreview CI environment (bug 1294805)

https://reviewboard.mozilla.org/r/78532/#review79210
Attachment #8790928 - Flags: review?(smacleod) → review+
Comment on attachment 8790929 [details]
testing: use vagrant for testing ansible CI deployment scripts (bug 1294805)

https://reviewboard.mozilla.org/r/78534/#review79212
Attachment #8790929 - Flags: review?(smacleod) → review+
Pushed by smacleod@mozilla.com:
https://hg.mozilla.org/hgcustom/version-control-tools/rev/7c35fd80b07d
ansible: add vendor-roles dir and requirements.yml r=glob,gps,smacleod
https://hg.mozilla.org/hgcustom/version-control-tools/rev/804772bf036d
ansible: add vendor roles needed by mozreview CI r=glob,gps,smacleod
https://hg.mozilla.org/hgcustom/version-control-tools/rev/940667f908aa
ansible: add playbook for deploying a mozreview CI environment r=glob,gps,smacleod
https://hg.mozilla.org/hgcustom/version-control-tools/rev/5298b6203f97
testing: use vagrant for testing ansible CI deployment scripts r=glob,gps,smacleod
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: