|
9 | 9 | 'nanoserver-sac2016'
|
10 | 10 | end
|
11 | 11 | default_digest = 'sha256:dcba85354678b50608b8c40ec6d17cce063a224aa0e12b6a55dc47b67f039e75'
|
| 12 | + default_local_digest = 'sha256:8421d9a84432575381bfabd248f1eb56f3aa21d9d7cd2511583c68c9b7511d10' |
12 | 13 | second_image = 'winamd64/hola-mundo'
|
13 | 14 | default_dockerfile = 'C:/Users/Administrator/AppData/Local/Temp/Dockerfile'
|
14 | 15 | dockerfile_test = 'C:/Windows/Dockerfile_test.txt'
|
|
34 | 35 | second_image = 'busybox'
|
35 | 36 | default_image_tag = '3.7'
|
36 | 37 | default_digest = 'sha256:3dcdb92d7432d56604d4545cbd324b14e647b313626d99b889d0626de158f73a'
|
| 38 | + default_local_digest = 'sha256:8421d9a84432575381bfabd248f1eb56f3aa21d9d7cd2511583c68c9b7511d10' |
37 | 39 | default_dockerfile = '/root/Dockerfile'
|
38 | 40 | dockerfile_test = "#{default_dockerfile}_test.txt"
|
39 | 41 | docker_command = 'docker'
|
@@ -833,6 +835,35 @@ class { 'docker': #{docker_args} }
|
833 | 835 | apply_manifest(pp_delete, catch_failures: true)
|
834 | 836 | end
|
835 | 837 | end
|
| 838 | + |
| 839 | + it 'run with verify_digest' do |
| 840 | + pp = <<-EOS |
| 841 | + class { 'docker': #{docker_args} } |
| 842 | + docker::image { '#{default_image}:#{default_image_tag}': |
| 843 | + require => Class['docker'], |
| 844 | + } |
| 845 | + docker::run { '#{default_image}': |
| 846 | + image => '#{default_image}:#{default_image_tag}', |
| 847 | + verify_digest => '#{default_local_digest}', |
| 848 | + } |
| 849 | + EOS |
| 850 | + pp_invalid = <<-EOS |
| 851 | + docker::run { '#{default_image}': |
| 852 | + image => '#{default_image}:#{default_image_tag}', |
| 853 | + verify_digest => 'sha256:90659bf80b44ce6be8234e6ff90a1ac34acbeb826903b02cfa0da11c82cbc000', |
| 854 | + } |
| 855 | + EOS |
| 856 | + |
| 857 | + apply_manifest(pp, catch_failures: true) |
| 858 | + run_shell('/usr/local/bin/docker-run-alpine-start.sh', expect_failures: false) do |r| |
| 859 | + expect(r.stdout.include?('Digest verify failed!')).to be false |
| 860 | + end |
| 861 | + |
| 862 | + apply_manifest(pp_invalid, catch_failures: true) |
| 863 | + run_shell('/usr/local/bin/docker-run-alpine-start.sh', expect_failures: true) do |r| |
| 864 | + expect(r.stdout.include?('Digest verify failed!')).to be true |
| 865 | + end |
| 866 | + end |
836 | 867 | end
|
837 | 868 |
|
838 | 869 | describe 'docker::exec', win_broken: true do
|
|
0 commit comments