diff --git a/manifests/repo.pp b/manifests/repo.pp index 34431b8..bbd5b4c 100644 --- a/manifests/repo.pp +++ b/manifests/repo.pp @@ -54,8 +54,9 @@ } } 'RedHat': { - $libcontainers_url = "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_${fact('os.release.major')}/" - $crio_url = "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/${crio_version}/CentOS_${fact('os.release.major')}/" + $release_name = if versioncmp(fact('os.release.major'), '7') == 1 { "CentOS_${fact('os.release.major')}_Stream" } else { "CentOS_${fact('os.release.major')}" } + $libcontainers_url = "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/${release_name}/" + $crio_url = "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/${crio_version}/${release_name}/" yumrepo { 'libcontainers:stable': descr => 'Stable releases of libcontainers', diff --git a/spec/classes/repo_spec.rb b/spec/classes/repo_spec.rb index 9009f34..7bbb80b 100644 --- a/spec/classes/repo_spec.rb +++ b/spec/classes/repo_spec.rb @@ -17,5 +17,17 @@ class { '::k8s': it { is_expected.to compile } end + context 'on RedHat/CentOS 7, 8 and 9' do + let(:facts) { os_facts } + if os['family'] == 'RedHat' and os['release']['major'] == '7' + it { is_expected.to contain_yumrepo('libcontainers:stable').with_baseurl => 'https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_7/'} + end + if os['family'] == 'RedHat' and os['release']['major'] == '8' + it { is_expected.to contain_yumrepo('libcontainers:stable').with_baseurl => 'https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_8_Stream/'} + end + if os['family'] == 'RedHat' and os['release']['major'] == '9' + it { is_expected.to contain_yumrepo('libcontainers:stable').with_baseurl => 'https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_9_Stream/'} + end + end end end