Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Nomad
Commits
fef15f44
Unverified
Commit
fef15f44
authored
7 years ago
by
Chelsea Komlo
Committed by
GitHub
7 years ago
Browse files
Options
Download
Plain Diff
Merge pull request #3612 from hashicorp/docker-rkt-user
Set user for rkt tasks
parents
f27d0ddc
c4e1dc33
Branches unavailable
v1.4.3
v1.4.2
v1.4.1
v1.4.0
v1.4.0-rc.1
v1.4.0-beta.1
v1.3.8
v1.3.7
v1.3.6
v1.3.5
v1.3.4
v1.3.3
v1.3.2
v1.3.1
v1.3.0
v1.3.0-rc.1
v1.3.0-beta.1
v1.2.15
v1.2.14
v1.2.13
v1.2.12
v1.2.11
v1.2.10
v1.2.9
v1.2.8
v1.2.7
v1.2.6
v1.2.5
v1.2.4
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.2.0-rc1
v1.2.0-beta1
v1.1.18
v1.1.17
v1.1.16
v1.1.15
v1.1.14
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.1.7
v1.1.6
v1.1.5
v1.1.4
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.1.0-rc1
v1.1.0-beta1
v1.0.18
v1.0.17
v1.0.16
v1.0.15
v1.0.14
v1.0.13
v1.0.12
v1.0.11
v1.0.10
v1.0.9
v1.0.8
v1.0.7
v1.0.6
v1.0.5
v1.0.4
v1.0.3
v1.0.2
v1.0.1
v1.0.0
v1.0.0-rc1
v1.0.0-beta3
v1.0.0-beta2
v0.12.12
v0.12.11
v0.12.10
v0.12.9
v0.12.8
v0.12.7
v0.12.6
v0.12.5
v0.12.4
v0.12.4-rc1
v0.12.3
v0.12.2
v0.12.1
v0.12.0
v0.12.0-rc1
v0.12.0-beta2
v0.12.0-beta1
v0.11.8
v0.11.7
v0.11.6
v0.11.5
v0.11.4
v0.11.3
v0.11.2
v0.11.1
v0.11.0
v0.11.0-rc1
v0.11.0-beta2
v0.11.0-beta1
v0.10.9
v0.10.8
v0.10.7
v0.10.6
v0.10.5
v0.10.4
v0.10.4-rc1
v0.10.3
v0.10.2
v0.10.2-rc1
v0.10.1
v0.10.0
v0.10.0-rc1
v0.10.0-connect1
v0.10.0-beta1
v0.9.7
v0.9.6
v0.9.5
v0.9.4
v0.9.4-rc1
v0.9.3
v0.9.2
v0.9.2-rc1
v0.9.1
v0.9.1-rc1
v0.9.0
v0.9.0-rc2
v0.9.0-rc1
v0.9.0-beta3
v0.9.0-beta2
v0.9.0-beta1
v0.8.7
v0.8.7-rc1
v0.8.6
v0.8.5
v0.8.4
v0.8.4-rc1
v0.8.3
v0.8.2
v0.8.1
v0.8.0
v0.8.0-rc1
v0.7.1
v0.7.1-rc1
v0.7.1-rc1+pro
v0.7.1-rc1+ent
nightly
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
CHANGELOG.md
+1
-0
CHANGELOG.md
client/driver/rkt.go
+5
-1
client/driver/rkt.go
client/driver/rkt_test.go
+13
-10
client/driver/rkt_test.go
with
19 additions
and
11 deletions
+19
-11
CHANGELOG.md
+
1
-
0
View file @
fef15f44
...
...
@@ -30,6 +30,7 @@ IMPROVEMENTS:
*
driver/docker: Adds support for
`ulimit`
and
`sysctl`
options [GH-3568]
*
driver/docker: Adds support for StopTimeout (set to the same value as
kill_timeout [GH-3601]
*
driver/rkt: Add support for passing through user [GH-3612]
*
driver/qemu: Support graceful shutdowns on unix platforms [GH-3411]
*
template: Updated to consul template 0.19.4 [GH-3543]
*
core/enterprise: Return 501 status code in Nomad Pro for Premium end points
...
...
This diff is collapsed.
Click to expand it.
client/driver/rkt.go
+
5
-
1
View file @
fef15f44
...
...
@@ -572,6 +572,11 @@ func (d *RktDriver) Start(ctx *ExecContext, task *structs.Task) (*StartResponse,
}
// If a user has been specified for the task, pass it through to the user
if
task
.
User
!=
""
{
prepareArgs
=
append
(
prepareArgs
,
fmt
.
Sprintf
(
"--user=%s"
,
task
.
User
))
}
// Add user passed arguments.
if
len
(
driverConfig
.
Args
)
!=
0
{
parsed
:=
ctx
.
TaskEnv
.
ParseAndReplace
(
driverConfig
.
Args
)
...
...
@@ -635,7 +640,6 @@ func (d *RktDriver) Start(ctx *ExecContext, task *structs.Task) (*StartResponse,
execCmd
:=
&
executor
.
ExecCommand
{
Cmd
:
absPath
,
Args
:
runArgs
,
User
:
task
.
User
,
}
ps
,
err
:=
execIntf
.
LaunchCmd
(
execCmd
)
if
err
!=
nil
{
...
...
This diff is collapsed.
Click to expand it.
client/driver/rkt_test.go
+
13
-
10
View file @
fef15f44
...
...
@@ -19,6 +19,7 @@ import (
"github.com/hashicorp/nomad/client/config"
"github.com/hashicorp/nomad/nomad/structs"
"github.com/hashicorp/nomad/testutil"
"github.com/stretchr/testify/assert"
ctestutils
"github.com/hashicorp/nomad/client/testutil"
)
...
...
@@ -334,6 +335,7 @@ func TestRktDriver_Start_Wait_AllocDir(t *testing.T) {
}
func
TestRktDriverUser
(
t
*
testing
.
T
)
{
assert
:=
assert
.
New
(
t
)
if
!
testutil
.
IsTravis
()
{
t
.
Parallel
()
}
...
...
@@ -366,18 +368,19 @@ func TestRktDriverUser(t *testing.T) {
defer
ctx
.
AllocDir
.
Destroy
()
d
:=
NewRktDriver
(
ctx
.
DriverCtx
)
if
_
,
err
:=
d
.
Prestart
(
ctx
.
ExecCtx
,
task
);
err
!=
nil
{
t
.
Fatalf
(
"error in prestart: %v"
,
err
)
}
_
,
err
:=
d
.
Prestart
(
ctx
.
ExecCtx
,
task
)
assert
.
Nil
(
err
)
resp
,
err
:=
d
.
Start
(
ctx
.
ExecCtx
,
task
)
if
err
==
nil
{
resp
.
Handle
.
Kill
()
t
.
Fatalf
(
"Should've failed"
)
}
msg
:=
"unknown user alice"
if
!
strings
.
Contains
(
err
.
Error
(),
msg
)
{
t
.
Fatalf
(
"Expecting '%v' in '%v'"
,
msg
,
err
)
assert
.
Nil
(
err
)
defer
resp
.
Handle
.
Kill
()
select
{
case
res
:=
<-
resp
.
Handle
.
WaitCh
()
:
assert
.
False
(
res
.
Successful
())
case
<-
time
.
After
(
time
.
Duration
(
testutil
.
TestMultiplier
()
*
15
)
*
time
.
Second
)
:
t
.
Fatalf
(
"timeout"
)
}
}
func
TestRktTrustPrefix
(
t
*
testing
.
T
)
{
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help