Create ansible scripts to configure a mozreview CI environment under Jenkins

RESOLVED FIXED

Status

MozReview
Testing / Development Environment
--
enhancement
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: mars, Assigned: mars)

Tracking

(Blocks: 1 bug)

Production
Dependency tree / graph

Details

MozReview Requests

Submitter Diff Changes Open Issues Last Updated
Loading...
Error loading review requests:

Attachments

(4 attachments)

(Assignee)

Description

2 years ago
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)

Updated

2 years ago
Assignee: nobody → mars
(Assignee)

Updated

2 years ago
Status: NEW → ASSIGNED
(Assignee)

Updated

2 years ago
Depends on: 1294688
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)
Comment hidden (mozreview-request)

Comment 7

2 years ago
mozreview-review
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 8

2 years ago
mozreview-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 9

2 years ago
mozreview-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 10

2 years ago
mozreview-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 11

2 years ago
mozreview-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 12

2 years ago
mozreview-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 13

2 years ago
mozreview-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?
(Assignee)

Comment 14

2 years ago
mozreview-review-reply
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 15

2 years ago
mozreview-review
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 16

2 years ago
mozreview-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 17

2 years ago
mozreview-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 18

2 years ago
mozreview-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 19

2 years ago
mozreview-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 20

2 years ago
mozreview-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+

Comment 21

2 years ago
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
Last Resolved: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.