Tim Landscheidt has uploaded a new change for review. https://gerrit.wikimedia.org/r/118796
Change subject: WIP: labsdeprepo: Allow more than one local repository ...................................................................... WIP: labsdeprepo: Allow more than one local repository Change-Id: I0a7d84579c6148a7249afa68f9b260adaf6a40ca --- D files/misc/labsdebrepo.list M manifests/misc/labsdebrepo.pp A templates/misc/labsdebrepo.list 3 files changed, 13 insertions(+), 14 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/operations/puppet refs/changes/96/118796/1 diff --git a/files/misc/labsdebrepo.list b/files/misc/labsdebrepo.list deleted file mode 100644 index 08a816c..0000000 --- a/files/misc/labsdebrepo.list +++ /dev/null @@ -1,3 +0,0 @@ -# include the local per-project debian repo for labs -deb [trusted=yes] file:///data/project/repo/ / - diff --git a/manifests/misc/labsdebrepo.pp b/manifests/misc/labsdebrepo.pp index 1ffd56d..5f6841f 100644 --- a/manifests/misc/labsdebrepo.pp +++ b/manifests/misc/labsdebrepo.pp @@ -1,11 +1,12 @@ # Puppet configs to create a local deb repo and add it to your sources.list -class misc::labsdebrepo { +class misc::labsdebrepo ($dir = '/data/project/repo', $handle = 'labsdebrepo') { + # manage /data/project/repo: make sure it's a directory and turn it into a deb repo - file { "/data/project/repo": + file { $dir: ensure => directory; } - file { "/data/project/repo/Packages.gz": + file { "${dir}/Packages.gz": ensure => present; } # run dpkg-scanpackages . /dev/null | gzip -9c > binary/Packages.gz @@ -13,19 +14,19 @@ package { "dpkg-dev": ensure => present } - exec { "Turn dir into deb repo": - cwd => "/data/project/repo", + exec { "Turn ${dir} into deb repo": + cwd => $dir, command => "/usr/bin/dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz", # only run if Packages.gz is *not* the newest file in the directory onlyif => "/usr/bin/test $(find . -newer Packages.gz | wc -l) -gt 0", - require => [Package["dpkg-dev"], File["/data/project/repo"]]; + require => [Package["dpkg-dev"], File[$dir]]; } # add the dir-turned-repo to sources.list - file { "/etc/apt/sources.list.d/labsdebrepo.list": - source => "puppet:///files/misc/labsdebrepo.list", - require => Exec["Turn dir into deb repo"]; + file { "/etc/apt/sources.list.d/${handle}.list": + content => template('misc/labsdebrepo.list'), + require => Exec["Turn ${dir} into deb repo"]; } - file { "/etc/apt/preferences.d/labsdebrepo.pref": + file { "/etc/apt/preferences.d/${handle}.pref": content => 'Explanation: Prefer local repo above others Package: * Pin: origin @@ -33,4 +34,3 @@ ' } } - diff --git a/templates/misc/labsdebrepo.list b/templates/misc/labsdebrepo.list new file mode 100644 index 0000000..caf08c7 --- /dev/null +++ b/templates/misc/labsdebrepo.list @@ -0,0 +1,2 @@ +# Include a local per-project Debian repo for Labs. +deb [trusted=yes] file://<%= @dir =>/ / -- To view, visit https://gerrit.wikimedia.org/r/118796 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0a7d84579c6148a7249afa68f9b260adaf6a40ca Gerrit-PatchSet: 1 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Tim Landscheidt <t...@tim-landscheidt.de> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits