Skip to content

Commit d79c22d

Browse files
author
sticky-note
committed
feat(pkgrepo): impl new logic after migration to packages.broadcom.com
1 parent 570c44b commit d79c22d

File tree

9 files changed

+43
-58
lines changed

9 files changed

+43
-58
lines changed

docs/README.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ Git repositories under ``/srv/formulas`` and makes them available in the relevan
134134
'saltmain':
135135
- salt.formulas
136136
- salt.master
137-
137+
138138

139139
Pillar data can be used to customize all paths, URLs, etc. Here's a minimal pillar sample installing two formulas in the base environment:
140140

@@ -203,8 +203,8 @@ salt-minion packages on MacOS will not be upgraded by default. To enable package
203203
::
204204

205205
install_packages: True
206-
version: 2017.7.4
207-
salt_minion_pkg_source: https://repo.saltproject.io/osx/salt-2017.7.4-py3-x86_64.pkg
206+
version: 3006.9
207+
salt_minion_pkg_source: https://packages.broadcom.com/artifactory/saltproject-generic/macos/3006.9/salt-3006.9-py3-x86_64.pkg
208208

209209
install_packages must indicate that the installation of a package is desired. If so, version will be used to compare the version of the installed .pkg against the downloaded one. If version is not set and a salt.pkg is already installed the .pkg will not be installed again.
210210

pillar.example

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ salt:
2222
install_packages: true
2323

2424
# Optional: set salt version (if install_packages is set to true)
25-
version: 2017.7.2-1.el7
25+
version: '3006.9'
2626

2727
# Pin version provided under 'version' key by using apt-pinning
2828
# available only on Debian family OS-es
@@ -37,15 +37,18 @@ salt:
3737
salt_ssh: 'salt-ssh'
3838
pyinotify: 'python-pyinotify' # the package to be installed for pyinotify
3939

40-
# Set which salt repository to use, default to https://repo.saltproject.io
41-
# For older releases use https://archive.repo.saltproject.io
42-
repo: 'https://archive.repo.saltproject.io'
40+
# Set which salt repository to use
41+
# -> defaults to https://packages.broadcom.com/artifactory
42+
repo: 'https://packages.broadcom.com/artifactory'
43+
# yamllint disable rule:line-length
44+
repo_key_url: 'https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public'
45+
# yamllint enable rule:line-length
4346

4447
# Set which release of SaltStack to use, default to 'latest'
4548
# To get the available releases:
46-
# * http://repo.saltproject.io/yum/redhat/7/x86_64/
47-
# * http://repo.saltproject.io/apt/debian/8/amd64/
48-
release: '2018.3'
49+
# * https://packages.broadcom.com/artifactory/saltproject-rpm/
50+
# * https://packages.broadcom.com/artifactory/saltproject-deb
51+
release: '3006'
4952

5053
# MacOS has no package management.
5154
# Instead, we use file.managed to download an appropriate .pkg file and
@@ -57,8 +60,8 @@ salt:
5760
# NOTE: salt_minion_pkg_hash, if set, will be passed into file.managed's
5861
# source_hash, use URL or hash string
5962
# yamllint disable rule:line-length
60-
salt_minion_pkg_source: 'https://repo.saltproject.io/osx/salt-2017.7.4-py3-x86_64.pkg'
61-
salt_minion_pkg_hash: 'https://repo.saltproject.io/osx/salt-2017.7.4-py3-x86_64.pkg.md5'
63+
salt_minion_pkg_source: 'https://packages.broadcom.com/artifactory/saltproject-generic/macos/3006.9/salt-3006.9-py3-x86_64.pkg'
64+
salt_minion_pkg_hash: 'sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
6265
# yamllint enable rule:line-length
6366

6467
# tofs:

salt/osfamilymap.yaml

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,9 @@
55
{%- set py_ver_repr = salt['pillar.get']('salt:py_ver', '') %}
66

77
{%- set osrelease = salt['grains.get']('osrelease', '') %}
8-
{%- set salt_release = salt['pillar.get']('salt:release', 'latest') %}
9-
{%- if salt_release.split('.')|length >= 3 %}
10-
{%- set salt_release = 'archive/' ~ salt_release %}
11-
{%- endif %}
12-
{%- set osfamily_lower = salt['grains.get']('os_family')|lower %}
13-
{%- set osmajorrelease = salt['grains.get']('osmajorrelease', osrelease)|string %}
14-
{%- set oscodename = salt['grains.get']('oscodename') %}
158
{%- set opensuse_repo_suffix = 'Leap_' ~ osrelease if salt['grains.get']('osfinger', '') == 'Leap-15' else 'Tumbleweed' %}
16-
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://repo.saltproject.io') %}
9+
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://packages.broadcom.com/artifactory') %}
10+
{%- set salt_repo_key_url = salt['pillar.get']('salt:repo_key_url', salt_repo ~ '/api/security/keypair/SaltProjectKey/public') %}
1711

1812
#from template-formula
1913
{%- if grains.os_family == 'MacOS' %}
@@ -25,9 +19,9 @@
2519

2620

2721
Debian:
28-
pkgrepo: 'deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] {{ salt_repo }}/{{ py_ver_repr or 'py3' }}/{{ osfamily_lower }}/{{ osmajorrelease }}/amd64/{{ salt_release }} {{ oscodename }} main'
29-
pkgrepo_keyring: '{{ salt_repo }}/{{ py_ver_repr or 'py3' }}/{{ osfamily_lower }}/{{ osmajorrelease }}/amd64/{{ salt_release }}/salt-archive-keyring.gpg'
30-
pkgrepo_keyring_hash: sha256=ea38e0cdbd8dc53e1af154a8d711a2a321a69f81188062dc5cde9d54df2b8c47
22+
pkgrepo: 'deb [signed-by=/etc/apt/keyrings/salt-archive-keyring.pgp arch=amd64] {{ salt_repo }}/saltproject-deb stable main'
23+
pkgrepo_keyring: '{{ salt_repo_key_url }}'
24+
pkgrepo_keyring_hash: sha256=36decef986477acb8ba2a1fc4041bcf9f22229ef6c939d0317c9e36a9d142b34
3125
libgit2: libgit2-22
3226
pyinotify: python-pyinotify
3327
gitfs:
@@ -41,10 +35,10 @@ Debian:
4135
install_from_source: false
4236

4337
RedHat:
44-
pkgrepo_name: saltstack
45-
pkgrepo_humanname: SaltStack repo for RHEL/CentOS $releasever
46-
pkgrepo: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/redhat/$releasever/$basearch/{{ salt_release }}'
47-
key_url: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/redhat/$releasever/$basearch/{{ salt_release }}/SALTSTACK-GPG-KEY.pub'
38+
pkgrepo_name: salt-repo-latest
39+
pkgrepo_humanname: Salt Repo for Salt LATEST release
40+
pkgrepo: '{{ salt_repo }}/saltproject-rpm/'
41+
key_url: '{{ salt_repo_key_url }}'
4842
pygit2: python-pygit2
4943
python_git: GitPython
5044
gitfs:

salt/osfingermap.yaml

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,12 @@
22
# vim: ft=yaml
33
---
44

5-
{%- set py_ver_repr = salt['pillar.get']('salt:py_ver', '') %}
6-
75
{%- set osrelease = salt['grains.get']('osrelease', '') %}
8-
{%- set salt_release = salt['pillar.get']('salt:release', 'latest') %}
9-
{%- if salt_release.split('.')|length >= 3 %}
10-
{%- set salt_release = 'archive/' ~ salt_release %}
11-
{%- endif %}
126
{%- set osmajorrelease = salt['grains.get']('osmajorrelease', osrelease)|string %}
13-
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://repo.saltproject.io') %}
7+
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://packages.broadcom.com/artifactory') %}
8+
{%- set salt_repo_key_url = salt['pillar.get']('salt:repo_key_url', salt_repo ~ '/api/security/keypair/SaltProjectKey/public') %}
149

1510
Oracle Linux Server-7:
1611
pkgrepo_humanname: SaltStack repo for RHEL/CentOS {{ osmajorrelease }}
17-
pkgrepo: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/redhat/{{ osmajorrelease }}/$basearch/{{ salt_release }}'
18-
key_url: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/redhat/{{ osmajorrelease }}/$basearch/{{ salt_release }}/SALTSTACK-GPG-KEY.pub'
12+
pkgrepo: '{{ salt_repo }}/saltproject-rpm/'
13+
key_url: '{{ salt_repo_key_url }}'

salt/osmap.yaml

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,23 @@
44

55
{%- set py_ver_repr = salt['pillar.get']('salt:py_ver', '') %}
66

7-
{%- set osrelease = salt['grains.get']('osrelease', '') %}
8-
{%- set salt_release = salt['pillar.get']('salt:release', 'latest') %}
9-
{%- if salt_release.split('.')|length >= 3 %}
10-
{%- set salt_release = 'archive/' ~ salt_release %}
11-
{%- endif %}
12-
{%- set os_lower = salt['grains.get']('os')|lower %}
13-
{%- set osmajorrelease = salt['grains.get']('osmajorrelease', osrelease)|string %}
14-
{%- set oscodename = salt['grains.get']('oscodename') %}
15-
{%- set os_family_lower = salt['grains.get']('os_family')|lower %}
16-
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://repo.saltproject.io') %}
7+
{%- set salt_repo = salt['pillar.get']('salt:repo', 'https://packages.broadcom.com/artifactory') %}
8+
{%- set salt_repo_key_url = salt['pillar.get']('salt:repo_key_url', salt_repo ~ '/api/security/keypair/SaltProjectKey/public') %}
179

1810
Fedora:
1911
pygit2: python2-pygit2
2012

2113
Amazon:
2214
pkgrepo_name: saltstack-amzn-repo
2315
pkgrepo_humanname: SaltStack repo for Amazon Linux 2
24-
pkgrepo: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/amazon/2/$basearch/{{ salt_release }}'
25-
key_url: '{{ salt_repo }}/{{ py_ver_repr or 'yum' }}/amazon/2/$basearch/{{ salt_release }}/SALTSTACK-GPG-KEY.pub'
16+
pkgrepo: '{{ salt_repo }}/saltproject-rpm/'
17+
key_url: '{{ salt_repo_key_url }}'
2618

2719
Ubuntu:
28-
pkgrepo: 'deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] {{ salt_repo }}/{{ py_ver_repr or 'apt' }}/{{ os_lower }}/{{ osrelease }}/amd64/{{ salt_release }} {{ oscodename }} main'
29-
pkgrepo_keyring: '{{ salt_repo }}/{{ py_ver_repr or 'apt' }}/{{ os_lower }}/{{ osrelease }}/amd64/{{ salt_release }}/salt-archive-keyring.gpg'
30-
pkgrepo_keyring_hash: sha256=ea38e0cdbd8dc53e1af154a8d711a2a321a69f81188062dc5cde9d54df2b8c47
31-
key_url: '{{ salt_repo }}/{{ py_ver_repr or 'apt' }}/{{ os_lower }}/{{ osrelease }}/amd64/{{ salt_release }}/SALTSTACK-GPG-KEY.pub'
20+
pkgrepo: 'deb [signed-by=/etc/apt/keyrings/salt-archive-keyring.pgp arch=amd64] {{ salt_repo }}/saltproject-deb stable main'
21+
pkgrepo_keyring: '{{ salt_repo_key_url }}'
22+
pkgrepo_keyring_hash: sha256=36decef986477acb8ba2a1fc4041bcf9f22229ef6c939d0317c9e36a9d142b34
23+
key_url: '{{ salt_repo_key_url }}'
3224
pygit2: python-pygit2
3325
gitfs:
3426
pygit2:
@@ -38,8 +30,8 @@ Ubuntu:
3830
install_from_package: Null
3931

4032
Raspbian:
41-
pkgrepo: 'deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=armhf] {{ salt_repo }}/{{ py_ver_repr or 'py3' }}/{{ os_family_lower }}/{{ osmajorrelease }}/armhf/{{ salt_release }} {{ oscodename }} main'
42-
pkgrepo_keyring: '{{ salt_repo }}/{{ py_ver_repr or 'py3' }}/{{ os_family_lower }}/{{ osmajorrelease }}/armhf/{{ salt_release }}/salt-archive-keyring.gpg'
33+
pkgrepo: 'deb [signed-by=/etc/apt/keyrings/salt-archive-keyring.pgp arch=armhf] {{ salt_repo }}/saltproject-deb stable main'
34+
pkgrepo_keyring: '{{ salt_repo_key_url }}'
4335

4436
SmartOS:
4537
salt_master: salt

salt/pkgrepo/debian/absent.sls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ salt-pkgrepo-clean-saltstack-debian:
1010
1111
salt-pkgrepo-clean-saltstack-debian-apt-key:
1212
file.absent:
13-
- name: /usr/share/keyrings/salt-archive-keyring.gpg
13+
- name: /etc/apt/keyrings/salt-archive-keyring.pgp

salt/pkgrepo/debian/clean.sls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ salt-pkgrepo-clean-saltstack-debian:
1010
1111
salt-pkgrepo-clean-saltstack-debian-apt-key:
1212
file.absent:
13-
- name: /usr/share/keyrings/salt-archive-keyring.gpg
13+
- name: /etc/apt/keyrings/salt-archive-keyring.pgp

salt/pkgrepo/debian/install.sls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
55
salt-pkgrepo-install-saltstack-debian-keyring:
66
file.managed:
7-
- name: /usr/share/keyrings/salt-archive-keyring.gpg
7+
- name: /etc/apt/keyrings/salt-archive-keyring.pgp
88
- source: {{ salt_settings.pkgrepo_keyring }}
99
- source_hash: {{ salt_settings.pkgrepo_keyring_hash }}
1010
- require_in:

salt/pkgrepo/redhat/install.sls

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,12 @@ salt-pkgrepo-install-saltstack-redhat:
88
- name: {{ salt_settings.pkgrepo_name }}
99
- humanname: {{ salt_settings.pkgrepo_humanname }}
1010
- baseurl: {{ salt_settings.pkgrepo }}
11+
- priority: 10
1112
- enabled: 1
13+
- enabled_metadata: 1
1214
- gpgcheck: 1
1315
- gpgkey: {{ salt_settings.key_url }}
1416
{%- if grains['os']|lower in ['amazon'] %}
1517
- failovermethod: priority
16-
- priority: 10
1718
{%- endif %}
1819
{%- endif %}

0 commit comments

Comments
 (0)