Closed Bug 1499051 Opened 6 years ago Closed 5 years ago

Run tasks under unique OS user accounts on darwin (macOS)

Categories

(Taskcluster :: Workers, task, P2)

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: pmoore, Assigned: pmoore)

References

Details

Attachments

(1 file)

Currently, tasks run as the worker user on darwin (macOS).

Work started in https://github.com/taskcluster/generic-worker/blob/844b6421b643c40dab759c7ff907c95a67db57f7/plat_darwin.go to create individual task OS users per task but this code is incomplete and unused.
Component: Generic-Worker → Workers

CCing Jake, as he's been recently fighting with macOS things, including user creation, in Mojave and might have some input.

Pete is going to pick this up next week.

Some guidance for Pete: not everything needs to work under task/user isolation to start. For a first pass, I would focus on only the features required to run the PGO task on Mac (bug 1528374). :chmanchester can probably help with that.

Assignee: nobody → pmoore
Status: NEW → ASSIGNED
Type: enhancement → task
Priority: -- → P2

:pete, could we get away with not setting passwords for dynamically created users?

Also, as just a heads up, when it comes to gw on mojave, we might need to start signing the binaries in order to make calls certain calls to dscl. On yosemite, it should be no issue but on Mojave the OS enforces certain security parameters that can't easily be overridden.

Pete, do you have any updates on macOS user isolation for the PGO worker pool?

Flags: needinfo?(pmoore)

(In reply to Jake Watkins [:dividehex] from comment #3)

:pete, could we get away with not setting passwords for dynamically created users?

Potentially we could, although that isn't how I was intending to implement. Can you share a bit of detail about why that would be preferred?

Also, as just a heads up, when it comes to gw on mojave, we might need to start signing the binaries in order to make calls certain calls to dscl. On yosemite, it should be no issue but on Mojave the OS enforces certain security parameters that can't easily be overridden.

Thanks for the heads up. At the moment, the releases on github are not signed, but we do download them to the puppet master for propogation to the workers, so we could perhaps sign the version hosted on the puppet master, until we have automated signing the versions on github releases. But I'll look into creating signed releases on github too at some point, which would be best.

(In reply to Chris Peterson [:cpeterson] from comment #4)

Pete, do you have any updates on macOS user isolation for the PGO worker pool?

Hi Chris, I'm working on this now, and hope to have something ready in the next couple of weeks.

Flags: needinfo?(pmoore)

This is where the development is being done. The PR isn't ready for review yet, but adding the link for those who may wish to monitor progress.

See Also: → 1499054

Hi Jake, re: comment 5. Thanks!

Flags: needinfo?(jwatkins)

Released in generic-worker 15.0.0.

Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED

For those installing the new generic-worker, please pay special attention to the updated installation instructions.

Any problems/issues, let me know!

Blocks: 1559142
Blocks: 1559157
No longer blocks: 1559142

I'm reopening this bug, as I've found a bug (bug 1560388) which will need fixing before we go to production...

Status: RESOLVED → REOPENED
Depends on: 1560388
Resolution: FIXED → ---

Blocking bug has now been fixed, so closing this bug too.

Released in generic-worker 15.1.0.

Status: REOPENED → RESOLVED
Closed: 5 years ago5 years ago
Resolution: --- → FIXED

Jake, see comment 11 for installation instructions. Thanks!

(In reply to Pete Moore [:pmoore][:pete] from comment #14)

Jake, see comment 11 for installation instructions. Thanks!

Thanks, Pete!

Flags: needinfo?(jwatkins)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: