Beispiel #1
0
    def test_publish_fast_stamping(self):
        td = TestData(
            'io_bazel_rules_k8s/examples/hellogrpc/cc/server/server.tar')
        # name = docker_name.Tag('fake.gcr.io/foo/bar:{STABLE_GIT_COMMIT}')
        name = "fake.gcr.io/foo/bar:{STABLE_GIT_COMMIT}"
        stamp_info = {"STABLE_GIT_COMMIT": "9428a3b3"}
        expected_tag = 'fake.gcr.io/foo/bar:9428a3b3'

        with v2_2_image.FromTarball(td) as img:
            (config_path, layer_data) = save.fast(img,
                                                  self._tmpdir,
                                                  threads=16)
            expected_digest = img.digest()

        print(expected_digest)
        with mock.patch.object(v2_2_session, 'Push', return_value=NopPush()):
            (tag, published_tag, digest) = resolver.Publish(
                _BAD_TRANSPORT,
                None,
                stamp_info,
                name=name,
                config=config_path,
                digest=','.join([h for (h, unused) in layer_data]),
                layer=','.join([layer for (unused, layer) in layer_data]))
            self.assertEqual(tag, name)
            self.assertEqual(published_tag, expected_tag)
            self.assertEqual(digest.digest, expected_digest)
Beispiel #2
0
    def test_publish_legacy(self):
        td = TestData(
            'io_bazel_rules_k8s/examples/hellogrpc/cc/server/server.tar')
        name = docker_name.Tag('fake.gcr.io/foo/bar:baz')

        with mock.patch.object(v2_2_session, 'Push', return_value=NopPush()):
            (tag, digest) = resolver.Publish(_BAD_TRANSPORT,
                                             name=str(name),
                                             tarball=td)
            self.assertEqual(tag, name)
            with v2_2_image.FromTarball(td) as img:
                self.assertEqual(digest.digest, img.digest())
Beispiel #3
0
    def test_publish_fast(self):
        td = TestData(
            'io_bazel_rules_k8s/examples/hellogrpc/cc/server/server.tar')
        name = docker_name.Tag('fake.gcr.io/foo/bar:baz')

        with v2_2_image.FromTarball(td) as img:
            (config_path, layer_data) = save.fast(img,
                                                  self._tmpdir,
                                                  threads=16)
            expected_digest = img.digest()

        with mock.patch.object(v2_2_session, 'Push', return_value=NopPush()):
            (tag, digest) = resolver.Publish(
                _BAD_TRANSPORT,
                name=str(name),
                config=config_path,
                digest=','.join([h for (h, unused) in layer_data]),
                layer=','.join([layer for (unused, layer) in layer_data]))
            self.assertEqual(tag, name)
            self.assertEqual(digest.digest, expected_digest)