Skip to content

Commit 813f34f

Browse files
authored
Merge pull request #215 from digitalsleuth/repo_updates
Update to repos to support DEB822 format
2 parents 4fee9e2 + edaab66 commit 813f34f

File tree

7 files changed

+126
-37
lines changed

7 files changed

+126
-37
lines changed

sift/packages/docker.sls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ sift-package-docker:
1313
pkg.installed:
1414
- name: docker-ce
1515
- require:
16-
- pkgrepo: sift-docker-repo
16+
- file: sift-docker-repo
1717
- sls: sift.repos.docker

sift/repos/docker.sls

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
include:
22
- sift.packages.software-properties-common
3-
- sift.packages.apt-transport-https
43

54
sift-docker-key:
65
file.managed:
@@ -9,13 +8,36 @@ sift-docker-key:
98
- skip_verify: True
109
- makedirs: True
1110

12-
sift-docker-repo:
13-
pkgrepo.managed:
14-
- humanname: Docker
15-
- name: deb [signed-by=/usr/share/keyrings/DOCKER-PGP-KEY.asc] https://download.docker.com/linux/ubuntu {{ grains['lsb_distrib_codename'] }} stable
16-
- dist: {{ grains['lsb_distrib_codename'] }}
17-
- file: /etc/apt/sources.list.d/docker.list
18-
- refresh: True
11+
sift-remove-docker-ppa:
12+
pkgrepo.absent:
13+
- ppa: docker/stable
1914
- require:
2015
- sls: sift.packages.software-properties-common
21-
- sls: sift.packages.apt-transport-https
16+
17+
sift-remove-docker-list:
18+
file.absent:
19+
- name: /etc/apt/sources.list.d/docker.list
20+
- require:
21+
- pkgrepo: sift-remove-docker-ppa
22+
23+
sift-remove-docker-sources:
24+
file.absent:
25+
- name: /etc/apt/sources.list.d/docker.sources
26+
- require:
27+
- pkgrepo: sift-remove-docker-ppa
28+
29+
sift-docker-repo:
30+
file.managed:
31+
- name: /etc/apt/sources.list.d/docker.sources
32+
- contents: |
33+
Types: deb
34+
URIs: https://download.docker.com/linux/ubuntu
35+
Suites: {{ grains['lsb_distrib_codename'] }}
36+
Components: stable
37+
Signed-By: /usr/share/keyrings/DOCKER-PGP-KEY.asc
38+
Architectures: amd64
39+
- require:
40+
- file: sift-docker-key
41+
- pkgrepo: sift-remove-docker-ppa
42+
- file: sift-remove-docker-list
43+
- file: sift-remove-docker-sources

sift/repos/init.sls

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ include:
66
- sift.repos.ubuntu-multiverse
77
- sift.repos.ubuntu-universe
88
- sift.repos.dotnet-backports
9+
- sift.repos.microsoft
10+
- sift.repos.refresh
911

1012
sift-repos:
1113
test.nop:
@@ -18,3 +20,5 @@ sift-repos:
1820
- sls: sift.repos.ubuntu-multiverse
1921
- sls: sift.repos.ubuntu-universe
2022
- sls: sift.repos.dotnet-backports
23+
- sls: sift.repos.microsoft
24+
- sls: sift.repos.refresh

sift/repos/microsoft.sls

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,31 @@ sift-microsoft-key:
55
- skip_verify: True
66
- makedirs: True
77

8-
microsoft:
9-
pkgrepo.managed:
10-
- humanname: Microsoft
11-
- name: deb [signed-by=/usr/share/keyrings/MICROSOFT.asc] https://packages.microsoft.com/ubuntu/{{ grains['lsb_distrib_release'] }}/prod {{ grains['lsb_distrib_codename'] }} main
12-
- dist: {{ grains['lsb_distrib_codename'] }}
13-
- file: /etc/apt/sources.list.d/microsoft.list
14-
- refresh: True
15-
- clean_file: True
8+
sift-microsoft-repo-cleanup:
9+
pkgrepo.absent:
10+
- name: deb https://packages.microsoft.com/ubuntu/{{ grains['lsb_distrib_release'] }}/prod {{ grains['lsb_distrib_codename'] }} main
11+
- refresh: true
12+
13+
sift-microsoft-list-absent:
14+
file.absent:
15+
- name: /etc/apt/sources.list.d/microsoft.list
16+
17+
sift-microsoft-sources-absent:
18+
file.absent:
19+
- name: /etc/apt/sources.list.d/microsoft.sources
20+
21+
sift-microsoft-repo:
22+
file.managed:
23+
- name: /etc/apt/sources.list.d/microsoft.sources
24+
- contents: |
25+
Types: deb
26+
URIs: https://packages.microsoft.com/ubuntu/{{ grains['lsb_distrib_release'] }}/prod
27+
Suites: {{ grains['lsb_distrib_codename'] }}
28+
Components: main
29+
Signed-By: /usr/share/keyrings/MICROSOFT.asc
30+
Architectures: amd64
1631
- require:
1732
- file: sift-microsoft-key
33+
- pkgrepo: sift-microsoft-repo-cleanup
34+
- file: sift-microsoft-list-absent
35+
- file: sift-microsoft-sources-absent

sift/repos/refresh.sls

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
sift-refresh-repos:
2+
module.run:
3+
- name: pkg.refresh_db

sift/repos/ubuntu-multiverse.sls

Lines changed: 40 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,45 @@
1-
{%- set repo_url = "http://archive.ubuntu.com/ubuntu/ " %}
21
{%- if grains["osarch"] == "aarch64" or grains["osarch"] == "arm64" -%}
3-
{%- set repo_url = "http://ports.ubuntu.com/ubuntu-ports/" -%}
4-
{%- endif %}
2+
sift-ubuntu-ports-repo:
3+
file.append:
4+
- name: /etc/apt/sources.list.d/ubuntu.sources
5+
- text: |
56
7+
Types: deb
8+
URIs: http://ports.ubuntu.com/ubuntu-ports/
9+
Suites: noble
10+
Components: main universe restricted multiverse
11+
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
12+
Architectures: arm64
13+
14+
Types: deb
15+
URIs: http://ports.ubuntu.com/ubuntu-ports/
16+
Suites: noble-security
17+
Components: main universe restricted multiverse
18+
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
19+
Architectures: arm64
20+
- unless:
21+
- grep -q "URIs: http://ports.ubuntu.com/ubuntu-ports/" /etc/apt/sources.list.d/ubuntu.sources
22+
23+
{% else %}
624
sift-multiverse-repo:
7-
pkgrepo.managed:
8-
- humanname: ubuntu-multiverse
9-
- name: deb {{ repo_url }} {{ grains['lsb_distrib_codename'] }} multiverse
10-
- refresh_db: true
25+
file.replace:
26+
- name: /etc/apt/sources.list.d/ubuntu.sources
27+
- pattern: '^(Components: )(?!.*\bmultiverse\b)(.*)$'
28+
- repl: '\1\2 multiverse'
29+
- flags:
30+
- MULTILINE
31+
32+
sift-security-repo:
33+
file.append:
34+
- name: /etc/apt/sources.list.d/ubuntu.sources
35+
- text: |
1136
12-
sift-multiverse-repo-security:
13-
pkgrepo.managed:
14-
- humanname: ubuntu-multiverse-security
15-
- name: deb {{ repo_url }} {{ grains['lsb_distrib_codename'] }}-security multiverse
16-
- refresh_db: true
37+
Types: deb
38+
URIs: http://security.ubuntu.com/ubuntu/
39+
Suites: noble-security
40+
Components: main universe restricted multiverse
41+
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
42+
- unless:
43+
- grep -q "^Suites:.*noble-security" /etc/apt/sources.list.d/ubuntu.sources
1744

45+
{% endif %}

sift/repos/ubuntu-universe.sls

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,24 @@
1-
{%- set repo_url = "http://archive.ubuntu.com/ubuntu/ " %}
21
{%- if grains["osarch"] == "aarch64" or grains["osarch"] == "arm64" -%}
3-
{%- set repo_url = "http://ports.ubuntu.com/ubuntu-ports/" -%}
4-
{%- endif %}
2+
sift-ubuntu-ports-repo:
3+
file.append:
4+
- name: /etc/apt/sources.list.d/ubuntu.sources
5+
- text: |
56
7+
Types: deb
8+
URIs: http://ports.ubuntu.com/ubuntu-ports/
9+
Suites: noble
10+
Components: main universe restricted multiverse
11+
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
12+
Architectures: arm64
13+
- unless:
14+
- grep -q "URIs: http://ports.ubuntu.com/ubuntu-ports/" /etc/apt/sources.list.d/ubuntu.sources
15+
{% else %}
616
sift-universe-repo:
7-
pkgrepo.managed:
8-
- humanname: ubuntu-universe
9-
- name: deb {{ repo_url }} {{ grains['lsb_distrib_codename'] }} universe
10-
- refresh_db: true
17+
file.replace:
18+
- name: /etc/apt/sources.list.d/ubuntu.sources
19+
- pattern: '^(Components: )(?!.*\buniverse\b)(.*)$'
20+
- repl: '\1\2 universe'
21+
- flags:
22+
- MULTILINE
23+
{%- endif %}
24+

0 commit comments

Comments
 (0)