`integration-cli` migration
Author: vvolandCreated Jun 9, 2025Updated Sep 16, 2026
Labelsexp/beginnerarea/testingkind/epichelp wanted
Description
integration-cli tests are deprecated in favor of the e2e tests on the docker/cli.
We should migrate existing integration-cli tests to:
- Moby integration test (test the Go client + API behavior)
- Docker CLI e2e test (test the full CLI + Moby use case)
Note, it's possible that either of those already exist.
Run docker/cli/e2e tests in moby CI
Migrate existing integration-cli tests
If you're working on any of these, add a comment to say which ones - and check there's nobody already on the case!
- TestAPIClientVersionOldNotSupported https://github.com/moby/moby/pull/50479
- TestAPICreateDeletePredefinedNetworks - https://github.com/moby/moby/pull/51007 https://github.com/moby/moby/pull/51268
- TestAPIErrorJSON
https://github.com/moby/moby/pull/51176https://github.com/moby/moby/pull/51228 - TestAPIErrorNotFoundJSON https://github.com/moby/moby/pull/51216
- TestAPIGetEnabledCORS - https://github.com/moby/moby/pull/51550
- TestAPIImagesDelete - https://github.com/moby/moby/pull/51498
- TestAPIImagesHistory https://github.com/moby/moby/pull/50390
- TestAPIImagesImportBadSrc - https://github.com/moby/moby/pull/51553
- TestAPIImagesSaveAndLoad - https://github.com/moby/moby/pull/51559
- TestAPIImagesSearchJSONContentType -
https://github.com/moby/moby/pull/51560https://github.com/moby/moby/pull/50494 - TestAPIImagesSizeCompatibility - https://github.com/moby/moby/pull/51564
- TestAPINetworkConnectDisconnect - https://github.com/moby/moby/pull/51568
- TestAPINetworkFilter - https://github.com/moby/moby/pull/50529
- TestAPINetworkGetDefaults - https://github.com/moby/moby/pull/50529
- TestAPINetworkInspectBridge
- TestAPINetworkInspectUserDefinedNetwork
- TestAPINetworkInspectWithScope - https://github.com/moby/moby/pull/51574
- TestAPINetworkIPAMMultipleBridgeNetworks
- TestAPIOptionsRoute - https://github.com/moby/moby/pull/51585
- TestAPIServiceUpdatePort
- TestAPIStatsContainerNotFound - https://github.com/moby/moby/pull/51369
- TestAPIStatsNetworkStats -
https://github.com/moby/moby/pull/51800https://github.com/moby/moby/pull/52096 - TestAPIStatsNetworkStatsVersioning
- TestAPIStatsNoStreamConnectedContainers https://github.com/moby/moby/pull/51840
- TestAPIStatsNoStreamGetCpu
- TestAPIStatsStoppedContainerInGoroutines - https://github.com/moby/moby/pull/52452
- TestAPISwarmCAHash - https://github.com/moby/moby/pull/51837
- TestAPISwarmErrorHandling - https://github.com/moby/moby/pull/51839
- TestAPISwarmForceNewCluster
- TestAPISwarmHealthcheckNone
- TestAPISwarmInit
- TestAPISwarmInvalidAddress - https://github.com/moby/moby/pull/52827
- TestAPISwarmJoinToken
- TestAPISwarmLeaderElection
- TestAPISwarmLeaderProxy
- TestAPISwarmLeaveOnPendingJoin
- TestAPISwarmLeaveRemovesContainer
- TestAPISwarmListNodes
- TestAPISwarmManagerRestore
- TestAPISwarmNodeDrainPause
- TestAPISwarmNodeRemove
- TestAPISwarmNodeUpdate
- TestAPISwarmPromoteDemote
- TestAPISwarmRaftQuorum
- TestAPISwarmRestartCluster
- TestAPISwarmRestoreOnPendingJoin
- TestAPISwarmScaleNoRollingUpdate
- TestAPISwarmServiceConstraintLabel
- TestAPISwarmServiceConstraintRole
- TestAPISwarmServicePlacementPrefs
- TestAPISwarmServicesCreate
- TestAPISwarmServicesCreateGlobal
- TestAPISwarmServicesEmptyList
- TestAPISwarmServicesFailedUpdate
- TestAPISwarmServicesMultipleAgents
- TestAPISwarmServicesStateReporting
- TestAPISwarmServicesUpdate
- TestAPISwarmServicesUpdateStartFirst
- TestAPISwarmServicesUpdateWithName
- TestAPISwarmUnlockNotLocked
- TestAppArmorDeniesChmodProc
- TestAppArmorDeniesPtrace
- TestAppArmorTraceSelf
- TestAttachAfterDetach
- TestAttachClosedOnContainerStop
- TestAttachDetach
- TestAttachDisconnect
- TestAttachMultipleAndRestart
- TestAttachPausedContainer
- TestAttachTTYWithoutStdin
- TestBridgeIPIsExcludedFromAllocatorPool
- TestBuildAddAndCopyFileWithWhitespace
- TestBuildAddBadLinks
- TestBuildAddBadLinksVolume
- TestBuildAddBrokenTar
- TestBuildAddCacheOnFileChange
- TestBuildAddChangeOwnership
- TestBuildAddCurrentDirWithCache
- TestBuildAddCurrentDirWithoutCache
- TestBuildAddDirContentToExistingDir
- TestBuildAddDirContentToRoot
- TestBuildAddFileNotFound
- TestBuildAddLocalAndRemoteFilesWithAndWithoutCache
- TestBuildAddMultipleLocalFileWithAndWithoutCache
- TestBuildAddNonTar
- TestBuildAddOrCopyEtcToRootShouldNotConflict
- TestBuildAddPreservesFilesSpecialBits
- TestBuildAddRemoteFileMTime
- TestBuildAddRemoteFileWithAndWithoutCache
- TestBuildAddRemoteNoDecompress
- TestBuildAddScript
- TestBuildAddSingleFileToExistDir
- TestBuildAddSingleFileToNonExistingDir
- TestBuildAddSingleFileToRoot
- TestBuildAddSingleFileToWorkdir
- TestBuildAddTar
- TestBuildAddTarXz
- TestBuildAddTarXzGz
- TestBuildAddToSymlinkDest
- TestBuildAddWholeDirToRoot
- TestBuildAPIBuildGitWithF
- TestBuildAPIDockerFileRemote
- TestBuildAPIDoubleDockerfile
- TestBuildAPILowerDockerfile
- TestBuildAPIRemoteTarballContext
- TestBuildAPIRemoteTarballContextWithCustomDockerfile
- TestBuildAPIUnnormalizedTarPaths
- TestBuildBlankName
- TestBuildBuildTimeArg
- TestBuildBuildTimeArgBuiltinArg
- TestBuildBuildTimeArgCacheHit
- TestBuildBuildTimeArgCacheMissExtraArg
- TestBuildBuildTimeArgCacheMissSameArgDiffVal
- TestBuildBuildTimeArgDefaultOverride
- TestBuildBuildTimeArgDefinitionWithNoEnvInjection
- TestBuildBuildTimeArgEmptyValVariants
- TestBuildBuildTimeArgEnv
- TestBuildBuildTimeArgExpansion
- TestBuildBuildTimeArgExpansionOverride
- TestBuildBuildTimeArgHistory
- TestBuildBuildTimeArgOverrideArgDefinedBeforeEnv
- TestBuildBuildTimeArgOverrideEnvDefinedBeforeArg
- TestBuildBuildTimeArgQuotedValVariants
- TestBuildBuildTimeArgUnconsumedArg
- TestBuildBuildTimeArgUntrustedDefinedAfterUse
- TestBuildByDigest
- TestBuildCacheAdd
- TestBuildCacheBrokenSymlink
- TestBuildCacheFrom
- TestBuildCacheFromEqualDiffIDsLength
- TestBuildCacheFromLoad
- TestBuildCacheRootSource
- TestBuildCancellationKillsSleep
- TestBuildChownOnCopy
- TestBuildChownSingleFile
- TestBuildCleanupCmdOnEntrypoint
- TestBuildClearCmd
- TestBuildCmd
- TestBuildCmdJSONNoShDashC
- TestBuildCmdShDashC
- TestBuildCmdShellArgsEscaped
- TestBuildCmdSpaces
- TestBuildCommentsShebangs
- TestBuildConditionalCache
- TestBuildContainerWithCgroupParent
- TestBuildContextCleanup
- TestBuildContextCleanupFailedBuild
- TestBuildContextTarGzip
- TestBuildContextTarNoCompression
- TestBuildCopyAddMultipleFiles
- TestBuildCopyCacheOnFileChange
- TestBuildCopyDirButNotFile
- TestBuildCopyDirContentToExistDir
- TestBuildCopyDirContentToRoot
- TestBuildCopyFileDotWithWorkdir
- TestBuildCopyFileWithWhitespaceOnWindows
- TestBuildCopyFromForbidWindowsRelativePaths
- TestBuildCopyFromForbidWindowsSystemPaths
- TestBuildCopyFromForcePull
- TestBuildCopyFromWindowsIsCaseInsensitive
- TestBuildCopySingleFileToExistDir
- TestBuildCopySingleFileToNonExistDir
- TestBuildCopySingleFileToRoot
- TestBuildCopySingleFileToWorkdir
- TestBuildCopyWholeDirToRoot
- TestBuildCopyWildcard
- TestBuildCopyWildcardCache
- TestBuildCopyWildcardInName
- TestBuildDeleteCommittedFile
- TestBuildDockerfileStdin
- TestBuildDockerfileStdinConflict
- TestBuildDockerfileStdinDockerignore
- TestBuildDockerfileStdinDockerignoreIgnored
- TestBuildDockerfileStdinNoExtraFiles
- TestBuildDockerignore
- TestBuildDockerignoreCleanPaths
- TestBuildDockerignoreComment
- TestBuildDockerignoreExceptions
- TestBuildDockerignoreTouchDockerfile
- TestBuildDockerignoringBadExclusion
- TestBuildDockerignoringDockerfile
- TestBuildDockerignoringDockerignore
- TestBuildDockerignoringOnlyDotfiles
- TestBuildDockerignoringRenamedDockerfile
- TestBuildDockerignoringWholeDir
- TestBuildDockerignoringWildDirs
- TestBuildDockerignoringWildTopDir
- TestBuildDotDotFile
- TestBuildEmitsEvents
- Integration: https://github.com/moby/moby/pull/50157
- CLI:
- TestBuildEmptyCmd
- TestBuildEmptyEntrypoint
- TestBuildEmptyEntrypointInheritance
- TestBuildEmptyScratch
- TestBuildEmptyStringVolume
- TestBuildEntrypoint
- TestBuildEntrypointCanBeOverriddenByChild
- TestBuildEntrypointCanBeOverriddenByChildInspect
- TestBuildEntrypointRunCleanup
- TestBuildEnv
- TestBuildEnvEscapes
- TestBuildEnvironmentReplacementAddCopy
- TestBuildEnvironmentReplacementEnv
- TestBuildEnvironmentReplacementExpose
- TestBuildEnvironmentReplacementUser
- TestBuildEnvironmentReplacementVolume
- TestBuildEnvironmentReplacementWorkdir
- TestBuildEnvOverwrite
- TestBuildEnvUsage
- TestBuildEnvUsage2
- TestBuildEOLInLine
- TestBuildEscapeNotBackslashWordTest
- TestBuildEscapeWhitespace
- TestBuildExoticShellInterpolation
- TestBuildExpose
- TestBuildExposeMorePorts
- TestBuildExposeOrder
- TestBuildExposeUpperCaseProto
- TestBuildFails
- TestBuildFailsGitNotCallable
- TestBuildFollowSymlinkToDir
- TestBuildFollowSymlinkToFile
- TestBuildForceRm
- TestBuildFromAuthenticatedRegistry
- TestBuildFromGit
- TestBuildFromGitWithContext
- TestBuildFromGitWithF
- TestBuildFromMixedcaseDockerfile
- TestBuildFromOfficialNames
- TestBuildFromRemoteTarball
- TestBuildFromStdinWithF
- TestBuildFromURLWithF
- TestBuildHandleEscapesInVolume
- TestBuildHistory
- TestBuildIidFile
- TestBuildIidFileCleanupOnFail
- TestBuildInheritance
- TestBuildIntermediateTarget
- TestBuildInvalidTag
- TestBuildJSONEmptyRun
- TestBuildLabel
- TestBuildLabelCacheCommit
- TestBuildLabelMultiple
- TestBuildLabelOneNode
- TestBuildLabels
- TestBuildLabelsCache
- TestBuildLabelsOverride
- TestBuildLastModified
- TestBuildLineBreak
- TestBuildLineErrorOnBuild
- TestBuildLineErrorUnknownInstruction
- TestBuildLineErrorWithComments
- TestBuildLineErrorWithEmptyLines
- TestBuildMaintainer
- TestBuildMissingArgs
- TestBuildModifyFileInFolder
- TestBuildMultipleTags
- TestBuildMultiStageArg
- TestBuildMultiStageCache
- TestBuildMultiStageCopyFromErrors
- TestBuildMultiStageCopyFromSyntax
- TestBuildMultiStageGlobalArg
- TestBuildMultiStageImplicitFrom
- TestBuildMultiStageImplicitPull
- TestBuildMultiStageMultipleBuilds
- TestBuildMultiStageMultipleBuildsWindows
- TestBuildMultiStageNameVariants
- TestBuildMultiStageResetScratch
- TestBuildMultiStageUnusedArg
- TestBuildNetContainer
- TestBuildNetNone
- TestBuildNoContext
- TestBuildNoDupOutput
- TestBuildNoNamedVolume
- TestBuildNotVerboseFailure
- TestBuildNotVerboseFailureRemote
- TestBuildNotVerboseFailureWithNonExistImage
- TestBuildNotVerboseSuccess
- TestBuildNullStringInAddCopyVolume
- TestBuildOnBuild
- TestBuildOnBuildCache
- TestBuildOnBuildCmdEntrypointJSON
- TestBuildOnBuildEntrypointJSON
- TestBuildOnBuildLimitedInheritance
- TestBuildOnBuildLowercase
- TestBuildOnBuildOutput
- TestBuildOnBuildWithCopy
- TestBuildOnDisabledBridgeNetworkDaemon
- TestBuildOpaqueDirectory
- TestBuildPATH
- TestBuildRelativeCopy
- TestBuildRelativeWorkdir
- TestBuildResourceConstraintsAreUsed
- TestBuildRm
- TestBuildRUNErrMsg
- TestBuildRUNoneJSON
- TestBuildRunShEntrypoint
- TestBuildSameDockerfileWithAndWithoutCache
- TestBuildScratchCopy
- TestBuildSetCommandWithDefinedShell
- TestBuildShCmdJSONEntrypoint
- TestBuildShellEntrypoint
- TestBuildShellInherited
- TestBuildShellMultiple
- TestBuildShellNotJSON
- TestBuildShellUpdatesConfig
- TestBuildShellWindowsPowershell
- TestBuildSpaces
- TestBuildSpacesWithQuotes
- TestBuildStartsFromOne
- TestBuildStderr
- TestBuildStepsWithProgress
- TestBuildStopSignal
- TestBuildSymlinkBasename
- TestBuildSymlinkBreakout
- TestBuildTagEvent
- TestBuildTimeArgHistoryExclusions
- TestBuildUser
- TestBuildUsernamespaceValidateRemappedRoot
- TestBuildUsersAndGroups
- TestBuildVerboseOut
- TestBuildVerifyIntString
- TestBuildVerifySingleQuoteFails
- TestBuildVolumeFileExistsinContainer
- TestBuildVolumesRetainContents
- TestBuildWindowsAddCopyPathProcessing
- TestBuildWindowsEnvCaseInsensitive
- TestBuildWindowsUser
- TestBuildWindowsWorkdirProcessing
- TestBuildWithExternalAuth
- TestBuildWithExtraHost
- TestBuildWithExtraHostInvalidFormat
- TestBuildWithFailure
- TestBuildWithInaccessibleFilesInContext
- TestBuildWithRecycleBin
- TestBuildWithTabs
- TestBuildWithUTF8BOM
- TestBuildWithUTF8BOMDockerignore
- TestBuildWithVolumeOwnership
- TestBuildWithVolumes
- TestBuildWorkdirCmd
- TestBuildWorkdirImageCmd
- TestBuildWorkdirWindowsPath
- TestBuildWorkdirWithEnvVariables
- TestBuildXZHost
- TestCleanupMountsAfterDaemonAndContainerKill
- TestCleanupMountsAfterDaemonCrash
- TestCleanupMountsAfterGracefulShutdown
- TestClientSetsTLSServerName
- TestCLIProxyDisableProxyUnixSock
- TestCLIProxyProxyTCPSock
- TestCmdCannotBeInvoked
- TestCommitAfterContainerIsDone
- TestCommitChange
- TestCommitChangeLabels
- TestCommitHardlink
- TestCommitNewFile
- TestCommitPausedContainer
- TestCommitTTY
- TestCommitWithFilterLabel
- TestCommitWithHostBindMount
- TestCommitWithoutPause
- TestConcurrentFailingPull
- TestConcurrentPullMultipleTags
- TestConcurrentPullWholeRepo
- TestConcurrentPush
- TestConflictContainerNetworkAndLinks
- TestConflictContainerNetworkHostAndLinks
- TestConflictNetworkModeAndOptions
- TestConflictNetworkModeNetHostAndOptions
- TestConntrackFlowsLeak
- TestContainerAPIBadPort
- TestContainerAPIChunkedEncoding
- TestContainerAPICommit
- TestContainerAPICommitWithLabelInConfig
- TestContainerAPICreate
- TestContainerAPICreateBridgeNetworkMode
- TestContainerAPICreateEmptyConfig
- TestContainerAPICreateMountsBindRead
- TestContainerAPICreateOtherNetworkModes
- TestContainerAPICreateWithCpuSharesCpuset
- TestContainerAPIDelete
- TestContainerAPIDeleteForce
- TestContainerAPIDeleteNotExist
- TestContainerAPIDeleteRemoveLinks
- TestContainerAPIDeleteRemoveVolume
- TestContainerAPIDeleteWithEmptyName
- TestContainerAPIGetAll
- TestContainerAPIGetChanges
- TestContainerAPIGetExport
- TestContainerAPIGetJSONNoFieldsOmitted
- TestContainerAPIInvalidPortSyntax https://github.com/moby/moby/pull/51228
- TestContainerAPIKill https://github.com/moby/moby/pull/53669
- TestContainerAPIPause
- TestContainerAPIPostContainerStop https://github.com/moby/moby/pull/51865
- TestContainerAPIPostCreateNull
- TestContainerAPIRename
- TestContainerAPIRestart - https://github.com/moby/moby/pull/52276
- TestContainerAPIRestartNotimeoutParam - https://github.com/moby/moby/pull/52276
- TestContainerAPIRestartPolicyDefaultRetryCount https://github.com/moby/moby/pull/51228
- TestContainerAPIRestartPolicyInvalidPolicyName https://github.com/moby/moby/pull/51228
- TestContainerAPIRestartPolicyNegativeRetryCount https://github.com/moby/moby/pull/51228
- TestContainerAPIRestartPolicyRetryMismatch https://github.com/moby/moby/pull/51228
- TestContainerAPIStart
- TestContainerAPIStatsWithNetworkDisabled
- TestContainerAPIStop - https://github.com/moby/moby/pull/50631, https://github.com/moby/moby/pull/36874, https://github.com/moby/moby/pull/45365
- TestContainerAPITop
- TestContainerAPITopWindows
- TestContainerAPIVerifyHeader
- TestContainerAPIWait
- TestContainerKillCustomStopSignal
- TestContainerNetworkMode
- TestContainerRestartInMultipleNetworks
- TestContainersAPICreateMountsBindNamedPipe
- TestContainersAPICreateMountsCreate https://github.com/moby/moby/pull/52858
- TestContainersAPICreateMountsTmpfs
- TestContainersAPICreateMountsValidation
- TestContainersInMultipleNetworks
- TestContainersInUserDefinedNetwork
- TestContainersNetworkIsolation
- TestContainerWithConflictingHostNetworks
- TestContainerWithConflictingNoneNetwork
- TestContainerWithConflictingSharedNetwork
- TestCopyAndRestart
- TestCopyCreatedContainer
- TestCpAbsolutePath
- TestCpAbsoluteSymlink
- TestCpCheckDestOwnership
- TestCpFromCaseA
- TestCpFromCaseB
- TestCpFromCaseC
- TestCpFromCaseD
- TestCpFromCaseE
- TestCpFromCaseF
- TestCpFromCaseG
- TestCpFromCaseH
- TestCpFromCaseI
- TestCpFromCaseJ
- TestCpFromSymlinkDestination
- TestCpFromSymlinkToDirectory
- TestCpGarbagePath
- TestCpLocalOnly
- TestCpNameHasColon
- TestCpRelativePath
- TestCpSpecialFiles
- TestCpSymlinkComponent
- TestCpSymlinkFromConToHostFollowSymlink
- TestCpToCaseA
- TestCpToCaseB
- TestCpToCaseC
- TestCpToCaseD
- TestCpToCaseE
- TestCpToCaseF
- TestCpToCaseG
- TestCpToCaseH
- TestCpToCaseI
- TestCpToCaseJ
- TestCpToContainerWithPermissions
- TestCpToDot
- TestCpToErrReadOnlyRootfs
- TestCpToErrReadOnlyVolume
- TestCpToStdout
- TestCpToSymlinkDestination
- TestCpToSymlinkToDirectory
- TestCpUnprivilegedUser
- TestCpVolumePath
- TestCreateArgs
- TestCreateByDigest
- TestCreateEchoStdout
- TestCreateHostConfig
- TestCreateHostnameWithNumber
- TestCreateLabelFromImage
- TestCreateLabels
- TestCreateModeIpcContainer
- TestCreateRM
- TestCreateStopSignal
- TestCreateStopTimeout
- TestCreateUnsetEntrypoint
- TestCreateVolumesCreated
- TestCreateWithInvalidLogOpts
- TestCreateWithLargePortRange
- TestCreateWithPortRange
- TestCreateWithTooLowMemoryLimit https://github.com/moby/moby/pull/51228
- TestCreateWithWorkdir
- TestCrossRepositoryLayerPush
- TestDaemonAllocatesListeningPort
- TestDaemonBridgeNone
- TestDaemonCgroupParent
- TestDaemonDebugLog
- TestDaemonDNSFlagsInHostMode
- TestDaemonEvents
- TestDaemonEventsWithFilters
- TestDaemonExitOnFailure
- TestDaemonFlagD
- TestDaemonFlagDebug
- TestDaemonFlagDebugLogLevelFatal
- TestDaemonIPv6FixedCIDR
- TestDaemonIPv6HostMode
- TestDaemonKillLiveRestoreWithPlugins
- TestDaemonKillWithPlugins
- TestDaemonLoggingDriverDefault
- TestDaemonLoggingDriverDefaultOverride
- TestDaemonLoggingDriverNon
Source: moby/moby