mirror of
				https://github.com/docker/compose.git
				synced 2025-10-31 03:03:49 +01:00 
			
		
		
		
	Add support for oom_kill_disable in service config
Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
		
							parent
							
								
									b30cb77a7b
								
							
						
					
					
						commit
						80503da476
					
				| @ -91,6 +91,7 @@ DOCKER_CONFIG_KEYS = [ | |||||||
|     'mem_swappiness', |     'mem_swappiness', | ||||||
|     'net', |     'net', | ||||||
|     'oom_score_adj', |     'oom_score_adj', | ||||||
|  |     'oom_kill_disable', | ||||||
|     'pid', |     'pid', | ||||||
|     'ports', |     'ports', | ||||||
|     'privileged', |     'privileged', | ||||||
|  | |||||||
| @ -229,6 +229,7 @@ | |||||||
|             } |             } | ||||||
|           ] |           ] | ||||||
|         }, |         }, | ||||||
|  |         "oom_kill_disable": {"type": "boolean"}, | ||||||
|         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, |         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, | ||||||
|         "group_add": { |         "group_add": { | ||||||
|             "type": "array", |             "type": "array", | ||||||
|  | |||||||
| @ -235,6 +235,7 @@ | |||||||
|             } |             } | ||||||
|           ] |           ] | ||||||
|         }, |         }, | ||||||
|  |         "oom_kill_disable": {"type": "boolean"}, | ||||||
|         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, |         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, | ||||||
|         "group_add": { |         "group_add": { | ||||||
|             "type": "array", |             "type": "array", | ||||||
|  | |||||||
| @ -237,6 +237,7 @@ | |||||||
|             } |             } | ||||||
|           ] |           ] | ||||||
|         }, |         }, | ||||||
|  |         "oom_kill_disable": {"type": "boolean"}, | ||||||
|         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, |         "oom_score_adj": {"type": "integer", "minimum": -1000, "maximum": 1000}, | ||||||
|         "group_add": { |         "group_add": { | ||||||
|             "type": "array", |             "type": "array", | ||||||
|  | |||||||
| @ -156,6 +156,7 @@ class ConversionMap(object): | |||||||
|         service_path('deploy', 'update_config', 'max_failure_ratio'): float, |         service_path('deploy', 'update_config', 'max_failure_ratio'): float, | ||||||
|         service_path('deploy', 'restart_policy', 'max_attempts'): to_int, |         service_path('deploy', 'restart_policy', 'max_attempts'): to_int, | ||||||
|         service_path('mem_swappiness'): to_int, |         service_path('mem_swappiness'): to_int, | ||||||
|  |         service_path('oom_kill_disable'): to_boolean, | ||||||
|         service_path('oom_score_adj'): to_int, |         service_path('oom_score_adj'): to_int, | ||||||
|         service_path('ports', 'target'): to_int, |         service_path('ports', 'target'): to_int, | ||||||
|         service_path('ports', 'published'): to_int, |         service_path('ports', 'published'): to_int, | ||||||
|  | |||||||
| @ -77,6 +77,7 @@ HOST_CONFIG_KEYS = [ | |||||||
|     'mem_reservation', |     'mem_reservation', | ||||||
|     'memswap_limit', |     'memswap_limit', | ||||||
|     'mem_swappiness', |     'mem_swappiness', | ||||||
|  |     'oom_kill_disable', | ||||||
|     'oom_score_adj', |     'oom_score_adj', | ||||||
|     'pid', |     'pid', | ||||||
|     'pids_limit', |     'pids_limit', | ||||||
| @ -859,6 +860,7 @@ class Service(object): | |||||||
|             sysctls=options.get('sysctls'), |             sysctls=options.get('sysctls'), | ||||||
|             pids_limit=options.get('pids_limit'), |             pids_limit=options.get('pids_limit'), | ||||||
|             tmpfs=options.get('tmpfs'), |             tmpfs=options.get('tmpfs'), | ||||||
|  |             oom_kill_disable=options.get('oom_kill_disable'), | ||||||
|             oom_score_adj=options.get('oom_score_adj'), |             oom_score_adj=options.get('oom_score_adj'), | ||||||
|             mem_swappiness=options.get('mem_swappiness'), |             mem_swappiness=options.get('mem_swappiness'), | ||||||
|             group_add=options.get('group_add'), |             group_add=options.get('group_add'), | ||||||
|  | |||||||
| @ -239,8 +239,7 @@ class ServiceTest(DockerClientTestCase): | |||||||
|         service.start_container(container) |         service.start_container(container) | ||||||
|         self.assertEqual(set(container.get('HostConfig.SecurityOpt')), set(security_opt)) |         self.assertEqual(set(container.get('HostConfig.SecurityOpt')), set(security_opt)) | ||||||
| 
 | 
 | ||||||
|     # @pytest.mark.xfail(True, reason='Not supported on most drivers') |     @pytest.mark.xfail(True, reason='Not supported on most drivers') | ||||||
|     @pytest.mark.skipif(True, reason='https://github.com/moby/moby/issues/34270') |  | ||||||
|     def test_create_container_with_storage_opt(self): |     def test_create_container_with_storage_opt(self): | ||||||
|         storage_opt = {'size': '1G'} |         storage_opt = {'size': '1G'} | ||||||
|         service = self.create_service('db', storage_opt=storage_opt) |         service = self.create_service('db', storage_opt=storage_opt) | ||||||
| @ -248,6 +247,12 @@ class ServiceTest(DockerClientTestCase): | |||||||
|         service.start_container(container) |         service.start_container(container) | ||||||
|         self.assertEqual(container.get('HostConfig.StorageOpt'), storage_opt) |         self.assertEqual(container.get('HostConfig.StorageOpt'), storage_opt) | ||||||
| 
 | 
 | ||||||
|  |     def test_create_container_with_oom_kill_disable(self): | ||||||
|  |         self.require_api_version('1.20') | ||||||
|  |         service = self.create_service('db', oom_kill_disable=True) | ||||||
|  |         container = service.create_container() | ||||||
|  |         assert container.get('HostConfig.OomKillDisable') is True | ||||||
|  | 
 | ||||||
|     def test_create_container_with_mac_address(self): |     def test_create_container_with_mac_address(self): | ||||||
|         service = self.create_service('db', mac_address='02:42:ac:11:65:43') |         service = self.create_service('db', mac_address='02:42:ac:11:65:43') | ||||||
|         container = service.create_container() |         container = service.create_container() | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user