docker_build: fix JSON rewriting when some fields are null

Image generated by docker build might put "null" as entry
value in the JSON metadata. Ignore those value when doing
the deep copy to avoid error on assigning to "NoneType".

--
MOS_MIGRATED_REVID=100145909
diff --git a/tools/build_defs/docker/rewrite_json_test.py b/tools/build_defs/docker/rewrite_json_test.py
index 8bb711d..10c4238 100644
--- a/tools/build_defs/docker/rewrite_json_test.py
+++ b/tools/build_defs/docker/rewrite_json_test.py
@@ -616,6 +616,35 @@
         name=name, env=env, parent=parent))
     self.assertEquals(expected, actual)
 
+  def testAugmentVolumeWithNullInput(self):
+    in_data = {
+        'config': {
+            'User': 'mattmoor',
+            'WorkingDir': '/usr/home/mattmoor',
+            'Volumes': None,
+        }
+    }
+    name = 'deadbeef'
+    parent = 'blah'
+    volume = '/data'
+    expected = {
+        'id': name,
+        'parent': parent,
+        'config': {
+            'User': 'mattmoor',
+            'WorkingDir': '/usr/home/mattmoor',
+            'Volumes': {
+                volume: {}
+            }
+        },
+        'docker_version': _DOCKER_VERSION,
+        'architecture': _PROCESSOR_ARCHITECTURE,
+        'os': _OPERATING_SYSTEM,
+    }
+
+    actual = RewriteMetadata(in_data, MetadataOptions(
+        name=name, parent=parent, volumes=[volume]))
+    self.assertEquals(expected, actual)
 
 if __name__ == '__main__':
   unittest.main()