[DockerRunner] destroyOldContainers: normalize the container name
The docker api returns each name with a `/` prefix. In order to not interfere with pending compiles, the deletion process has to acquire an internal lock on the container. The LockManager uses the plain container name without the slash: `project-xxx`. Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
This commit is contained in:
committed by
Jakob Ackermann
parent
7254a025ae
commit
f8cb5e36af
@@ -630,19 +630,19 @@ describe('DockerRunner', function() {
|
||||
it('should destroy old containers', function() {
|
||||
this.DockerRunner.destroyContainer.callCount.should.equal(1)
|
||||
return this.DockerRunner.destroyContainer
|
||||
.calledWith('/project-old-container-name', 'old-container-id')
|
||||
.calledWith('project-old-container-name', 'old-container-id')
|
||||
.should.equal(true)
|
||||
})
|
||||
|
||||
it('should not destroy new containers', function() {
|
||||
return this.DockerRunner.destroyContainer
|
||||
.calledWith('/project-new-container-name', 'new-container-id')
|
||||
.calledWith('project-new-container-name', 'new-container-id')
|
||||
.should.equal(false)
|
||||
})
|
||||
|
||||
it('should not destroy non-project containers', function() {
|
||||
return this.DockerRunner.destroyContainer
|
||||
.calledWith('/totally-not-a-project-container', 'some-random-id')
|
||||
.calledWith('totally-not-a-project-container', 'some-random-id')
|
||||
.should.equal(false)
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user