Closed
Bug 1213790
Opened 10 years ago
Closed 10 years ago
Deploy boto config for release automation
Categories
(Infrastructure & Operations :: RelOps: Puppet, task)
Infrastructure & Operations
RelOps: Puppet
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: nthomas, Assigned: nthomas)
References
Details
Attachments
(1 file, 1 obsolete file)
|
5.78 KB,
patch
|
dustin
:
review+
nthomas
:
checked-in+
|
Details | Diff | Splinter Review |
I'm going to need to deploy a boto-style config to /builds/release-s3.credentials on linux builds slaves. Bug 1207023 will yield the values to put into this format:
[Credentials]
aws_access_key_id = <key>
aws_secret_access_key = <secret>
We'll have different values for production and staging (releng only, not loaners). After looking around I can't find a clear template for this in modules/slave_secrets, so I'm asking for some help.
Comment 1•10 years ago
|
||
I think this would look a lot like, for example
http://hg.mozilla.org/build/puppet/file/21b5392348c3/modules/slave_secrets/manifests/google_api_key.pp
and key off $slave_trustlevel to figure out which creds to install. But maybe I'm not understanding the wrinkle that makes it *not* look like that. I didn't see anything about S3 in bug 1207023 that helped.
More to the point, though, as we think about transitioning to TaskCluster, we shouldn't be baking more secrets into our images. What's the plan here?
| Assignee | ||
Comment 2•10 years ago
|
||
Sorry, I meant bug 1210333 for the credentials, although that probably doesn't give you any more information. It's just AWS credentials for an IAM role, combined with our usual staging/production split so we don't do dumb things in staging by mistake.
If heira can do 'foo\nbar\nbaz' then that sounds like a good way to go.
(In reply to Dustin J. Mitchell [:dustin] from comment #1)
> More to the point, though, as we think about transitioning to TaskCluster,
> we shouldn't be baking more secrets into our images. What's the plan here?
It's a fair point. We explicitly made the choice that we are going to do this in two steps
* migrate the existing release promotion to cope with the whoop-whoop-evacuate-the-netapp project
* redo all of the release automation in taskcluster (aka build/release promotion)
So the lifetime of this extra secret is constrained, but time sensitive to ship in the short term.
Comment 3•10 years ago
|
||
Carry on then :)
| Assignee | ||
Comment 4•10 years ago
|
||
I'm hitting an error using this.
Setup
* releng-puppet2.srv.releng.scl3.mozilla.com
* /etc/puppet/environments/nthomas is prod 21b5392348c3 + this patch
* /etc/hiera/environments/nthomas_secrets.eyaml has release_s3_credentials_staging in it (no prod entry yet)
* |hiera release_s3_credentials_staging environment=nthomas| returns the right info
Over on my slave I get:
# puppet agent --test --environment=nthomas --server=releng-puppet2.srv.releng.scl3.mozilla.com
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find data item release_s3_credentials_staging in any Hiera data file and no default supplied at /etc/puppet/environments/nthomas/modules/slave_secrets/manifests/release_s3_credentials.pp:22 on node dev-linux64-ec2-nthomas.dev.releng.use1.mozilla.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Can you see my noob error ?
Attachment #8672913 -
Flags: feedback?(dustin)
Comment 5•10 years ago
|
||
Comment on attachment 8672913 [details] [diff] [review]
wip
The patch looks good, and I don't see any error in what you've done. I wonder if Hiera is not finding secrets in environments correctly?
Rather than debug that, perhaps try just adding that secret to the production secrets file -- if that works, then we can just update the wiki to indicate user environment hiera files don't work.
Attachment #8672913 -
Flags: feedback?(dustin) → feedback+
| Assignee | ||
Comment 6•10 years ago
|
||
Adding the secrets to the production file worked so I was able to finish this off. I dropped a comment on the wiki about secrets environments not working.
The main changes are adding $_ensure, since puppet complained about overwriting the value of $ensure, allowing Darwin to get the file too, and docs.
Assignee: relops → nthomas
Attachment #8672913 -
Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #8673442 -
Flags: review?(dustin)
Updated•10 years ago
|
Attachment #8673442 -
Flags: review?(dustin) → review+
| Assignee | ||
Comment 7•10 years ago
|
||
Comment on attachment 8673442 [details] [diff] [review]
[puppet] Deploy credentials
http://hg.mozilla.org/build/puppet/rev/13d31b45ae4a
http://hg.mozilla.org/build/puppet/rev/5758bc71b80f
Attachment #8673442 -
Flags: checked-in+
| Assignee | ||
Comment 8•10 years ago
|
||
(In reply to Nick Thomas [:nthomas] from comment #7)
Oops, that should be
http://hg.mozilla.org/build/puppet/rev/e9ec7af55b36
http://hg.mozilla.org/build/puppet/rev/5758bc71b80f
Also updated https://wiki.mozilla.org/ReleaseEngineering/PuppetAgain/Secrets#Secrets
| Assignee | ||
Comment 9•10 years ago
|
||
Verified deployed on mac and linux build slaves.
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•