]> git.openstreetmap.org Git - chef.git/commitdiff
Get apt configuration working on debian
authorTom Hughes <tom@compton.nu>
Tue, 21 Mar 2023 20:45:54 +0000 (20:45 +0000)
committerTom Hughes <tom@compton.nu>
Wed, 22 Mar 2023 23:58:43 +0000 (23:58 +0000)
cookbooks/apt/recipes/default.rb
cookbooks/apt/recipes/docker.rb
cookbooks/apt/recipes/hwraid.rb
cookbooks/apt/recipes/management-component-pack.rb
cookbooks/apt/recipes/maxmind.rb
cookbooks/apt/recipes/nginx.rb
cookbooks/apt/recipes/timescaledb.rb
cookbooks/apt/templates/default/sources.list.erb

index c92865b55ca5a628df1a20d014a5dd8569acce8b..47bd0ad18dac097f4ceb2d8f724afd3f4696c47a 100644 (file)
@@ -21,9 +21,10 @@ package %w[
   apt
   apt-transport-https
   gnupg
-  update-notifier-common
 ]
 
+package "update-notifier-common" if platform?("ubuntu")
+
 file "/etc/motd.tail" do
   action :delete
 end
@@ -42,7 +43,14 @@ apt_update "/etc/apt/sources.list" do
   action :nothing
 end
 
-if intel?
+if platform?("debian")
+  archive_host = "deb.debian.org"
+  archive_security_host = archive_host
+  archive_distro = "debian"
+  archive_security_distro = "debian-security"
+  archive_suites = %w[main updates security]
+  archive_components = %w[main contrib non-free]
+elsif intel?
   archive_host = if node[:country]
                    "#{node[:country]}.archive.ubuntu.com"
                  else
@@ -50,10 +58,16 @@ if intel?
                  end
   archive_security_host = "security.ubuntu.com"
   archive_distro = "ubuntu"
+  archive_security_distro = archive_distro
+  archive_suites = %w[main updates backports security]
+  archive_components = %w[main restricted universe multiverse]
 else
   archive_host = "ports.ubuntu.com"
   archive_security_host = archive_host
   archive_distro = "ubuntu-ports"
+  archive_security_distro = archive_distro
+  archive_suites = %w[main updates backports security]
+  archive_components = %w[main restricted universe multiverse]
 end
 
 template "/etc/apt/sources.list" do
@@ -61,12 +75,19 @@ template "/etc/apt/sources.list" do
   owner "root"
   group "root"
   mode "644"
-  variables :archive_host => archive_host, :archive_security_host => archive_security_host, :archive_distro => archive_distro, :codename => node[:lsb][:codename]
+  variables :archive_host => archive_host,
+            :archive_security_host => archive_security_host,
+            :archive_distro => archive_distro,
+            :archive_security_distro => archive_security_distro,
+            :archive_suites => archive_suites,
+            :archive_components => archive_components,
+            :codename => node[:lsb][:codename]
   notifies :update, "apt_update[/etc/apt/sources.list]", :immediately
 end
 
 apt_repository "openstreetmap" do
   uri "ppa:osmadmins/ppa"
+  only_if { platform?("ubuntu") }
 end
 
 package "unattended-upgrades"
index 7c8780779687ae8a48ff71954cac9bf1516e802c..2aeb832e3e50cdc7fa9e3a871d1f70f462cf1f6b 100644 (file)
 
 include_recipe "apt"
 
+docker_platform = if platform?("debian")
+                    "debian"
+                  else
+                    "ubuntu"
+                  end
+
 docker_arch = if arm?
                 "arm64"
               else
@@ -26,8 +32,8 @@ docker_arch = if arm?
               end
 
 apt_repository "docker" do
-  uri "https://download.docker.com/linux/ubuntu"
+  uri "https://download.docker.com/linux/#{docker_platform}"
   arch docker_arch
   components ["stable"]
-  key "https://download.docker.com/linux/ubuntu/gpg"
+  key "https://download.docker.com/linux/#{docker_platform}/gpg"
 end
index aa5a7fb915e2f6cc04a39090997e4e89f2588e80..fa5d9e1f99ba74ad78e3a07476be6eca7cfe3a65 100644 (file)
 
 include_recipe "apt"
 
+platform_name = if platform?("debian")
+                  "debian"
+                else
+                  "ubuntu"
+                end
+
+distribution_name = if platform?("debian")
+                      "buster"
+                    else
+                      "precise"
+                    end
+
 apt_repository "hwraid" do
-  uri "https://hwraid.le-vert.net/ubuntu"
-  distribution "precise"
+  uri "https://hwraid.le-vert.net/#{platform_name}"
+  distribution distribution_name
   components ["main"]
   key "6005210E23B3D3B4"
 end
index 09b982d374cb1e25870662abc13286628c83c1fd..34aad4d5e3cf542f31d852edf1e56dba2a596d78 100644 (file)
@@ -23,25 +23,43 @@ apt_repository "management-component-pack" do
   action :remove
 end
 
-if node[:dmi][:system][:product_name].end_with?("Gen10")
-  apt_repository "mcp-jammy" do
-    uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
-    distribution "jammy/current"
-    components ["non-free"]
-    key "C208ADDE26C2B797"
+if platform?("debian")
+  if node[:dmi][:system][:product_name].end_with?("Gen10")
+    apt_repository "mcp-gen10" do
+      uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
+      distribution "#{node[:lsb][:codename]}/current-gen10"
+      components ["non-free"]
+      key "C208ADDE26C2B797"
+    end
+  else
+    apt_repository "mcp" do
+      uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
+      distribution "#{node[:lsb][:codename]}/current"
+      components ["non-free"]
+      key "C208ADDE26C2B797"
+    end
   end
+elsif platform?("ubuntu")
+  if node[:dmi][:system][:product_name].end_with?("Gen10")
+    apt_repository "mcp-jammy" do
+      uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
+      distribution "jammy/current"
+      components ["non-free"]
+      key "C208ADDE26C2B797"
+    end
 
-  apt_repository "mcp-focal-gen10" do
-    uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
-    distribution "focal/current-gen10"
-    components ["non-free"]
-    key "C208ADDE26C2B797"
-  end
-else
-  apt_repository "mcp-bionic-gen9" do
-    uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
-    distribution "bionic/current-gen9"
-    components ["non-free"]
-    key "C208ADDE26C2B797"
+    apt_repository "mcp-focal-gen10" do
+      uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
+      distribution "focal/current-gen10"
+      components ["non-free"]
+      key "C208ADDE26C2B797"
+    end
+  else
+    apt_repository "mcp-bionic-gen9" do
+      uri "https://downloads.linux.hpe.com/SDR/repo/mcp"
+      distribution "bionic/current-gen9"
+      components ["non-free"]
+      key "C208ADDE26C2B797"
+    end
   end
 end
index a0029aae162238985174bb710328156583546101..dbe0fc88ad3f0ffffd4ec2ca62aceba13cf4263f 100644 (file)
@@ -21,4 +21,5 @@ include_recipe "apt"
 
 apt_repository "maxmind" do
   uri "ppa:maxmind/ppa"
+  only_if { platform?("ubuntu") }
 end
index 63fad62fceced00fda39cb160a203c57a94b3a09..b80b8bb8bf0b0484ef20d7f78eacba691ee03591 100644 (file)
 
 include_recipe "apt"
 
+platform_name = if platform?("debian")
+                  "debian"
+                else
+                  "ubuntu"
+                end
+
 apt_repository "nginx" do
   arch "amd64"
-  uri "https://nginx.org/packages/ubuntu"
+  uri "https://nginx.org/packages/#{platform_name}"
   components ["nginx"]
   key "ABF5BD827BD9BF62"
 end
index 57cccf2b29c8846684fc6833463fa71f079fe99a..5fc56c2d2fe5dcf68510f4f7863bf4e1e24017f1 100644 (file)
 include_recipe "apt"
 include_recipe "apt::postgresql"
 
+platform_name = if platform?("debian")
+                  "debian"
+                else
+                  "ubuntu"
+                end
+
 apt_repository "timescaledb" do
-  uri "https://packagecloud.io/timescale/timescaledb/ubuntu"
+  uri "https://packagecloud.io/timescale/timescaledb/#{platform_name}"
   components ["main"]
   key "https://packagecloud.io/timescale/timescaledb/gpgkey"
 end
index db8501e18069f273d8e0e0c3d8eae6b1f8b38647..d514279b76f5f4af6813bb41aacaf5791676c9d9 100644 (file)
@@ -1,42 +1,21 @@
 # DO NOT EDIT - This file is being maintained by Chef
+<% if @archive_suites.include?("main") -%>
 
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> main restricted
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> main restricted
+deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> <%= @archive_components.join(" ") %>
+# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> <%= @archive_components.join(" ") %>
+<% end -%>
+<% if @archive_suites.include?("updates") -%>
 
-## Major bug fix updates produced after the final release of the
-## distribution.
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates main restricted
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates main restricted
+deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates <%= @archive_components.join(" ") %>
+# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates <%= @archive_components.join(" ") %>
+<% end -%>
+<% if @archive_suites.include?("backports") -%>
 
-## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
-## team. Also, please note that software in universe WILL NOT receive any
-## review or updates from the Ubuntu security team.
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> universe
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> universe
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates universe
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates universe
+deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-backports <%= @archive_components.join(" ") %>
+# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-backports <%= @archive_components.join(" ") %>
+<% end -%>
+<% if @archive_suites.include?("security") -%>
 
-## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
-## team, and may not be under a free licence. Please satisfy yourself as to
-## your rights to use the software. Also, please note that software in
-## multiverse WILL NOT receive any review or updates from the Ubuntu
-## security team.
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> multiverse
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %> multiverse
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates multiverse
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-updates multiverse
-
-## N.B. software from this repository may not have been tested as
-## extensively as that contained in the main release, although it includes
-## newer versions of some applications which may provide useful features.
-## Also, please note that software in backports WILL NOT receive any review
-## or updates from the Ubuntu security team.
-deb http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-backports main restricted universe multiverse
-# deb-src http://<%= @archive_host %>/<%= @archive_distro %>/ <%= @codename %>-backports main restricted universe multiverse
-
-deb http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security main restricted
-# deb-src http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security main restricted
-deb http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security universe
-# deb-src http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security universe
-deb http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security multiverse
-# deb-src http://<%= @archive_security_host %>/<%= @archive_distro %>/ <%= @codename %>-security multiverse
+deb http://<%= @archive_security_host %>/<%= @archive_security_distro %>/ <%= @codename %>-security <%= @archive_components.join(" ") %>
+# deb-src http://<%= @archive_security_host %>/<%= @archive_security_distro %>/ <%= @codename %>-security <%= @archive_components.join(" ") %>
+<% end -%>