Skip to content

Commit bc1b030

Browse files
committed
Merge branch 'v2'
2 parents 013a263 + 4aaa71e commit bc1b030

File tree

6 files changed

+71
-14
lines changed

6 files changed

+71
-14
lines changed

.changelog/changelog.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
| tag | date | title |
22
|---|---|---|
3-
| v2.6.5 | 2021-09-14 | User Sync Tool v2.6.5 |
4-
5-
# Bug Fixes
3+
| v2.6.5 | 2021-09-16 | User Sync Tool v2.6.5 |
64

75
\#728 - Fix keyring misidentification issue
6+
\#731 - None-type issue with user commands
7+
\#732 - Executable fails on Ubuntu 18.04 (bionic)
88

99
# Build Information
1010

11-
Builds are now made with Python 3.9 on all platforms
11+
* Builds are now made with Python 3.9 on all platforms
12+
* Separate build for Ubuntu Bionic (18.04)
1213

1314
---
1415

.changelog/latest.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
# Bug Fixes
22

33
\#728 - Fix keyring misidentification issue
4+
\#731 - None-type issue with user commands
5+
\#732 - Executable fails on Ubuntu 18.04 (bionic)
46

57
# Build Information
68

7-
Builds are now made with Python 3.9 on all platforms
9+
* Builds are now made with Python 3.9 on all platforms
10+
* Separate build for Ubuntu Bionic (18.04)

.github/workflows/package-release.yml

Lines changed: 53 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,56 @@ on:
66
- 'v*'
77

88
jobs:
9-
ubuntu:
9+
ubuntu-bionic:
10+
runs-on: ubuntu-18.04
11+
strategy:
12+
matrix:
13+
include:
14+
- extension_support: 0
15+
variant_tag: "-noext"
16+
- extension_support: 1
17+
variant_tag: ""
18+
steps:
19+
- uses: actions/checkout@v2
20+
- name: Set up Python
21+
uses: actions/setup-python@v2
22+
with:
23+
python-version: '3.9'
24+
- name: Get version tag
25+
id: get_version
26+
uses: battila7/get-version-action@v2
27+
- name: Ubuntu-Install dependencies
28+
run: |
29+
sudo apt-get update
30+
sudo apt-get install -y software-properties-common
31+
sudo apt-get install -y build-essential
32+
sudo apt-get install -y python3-dev python3-pip python3-virtualenv
33+
sudo apt-get install -y pkg-config libssl-dev libdbus-1-dev libdbus-glib-1-dev python-dbus libffi-dev libkrb5-dev
34+
- run: |
35+
pip install external/okta-0.0.3.1-py2.py3-none-any.whl
36+
pip install -e .
37+
pip install -e .[test]
38+
pip install -e .[setup]
39+
- name: Build executable
40+
run: make
41+
env:
42+
UST_EXTENSION: ${{matrix.extension_support}}
43+
- name: Test with pytest
44+
run: pytest
45+
- name: Get build
46+
run: |
47+
cd dist
48+
tar czf "user-sync-${UST_VERSION}${UST_VARIANT_TAG}-ubuntu_bionic.tar.gz" user-sync
49+
env:
50+
UST_VARIANT_TAG: ${{matrix.variant_tag}}
51+
UST_VERSION: ${{ steps.get_version.outputs.version }}
52+
- name: Make artifacts
53+
uses: actions/upload-artifact@v2
54+
with:
55+
name: user-sync-artifact
56+
path: dist/*.tar.gz
57+
retention-days: 5
58+
ubuntu-focal:
1059
runs-on: ubuntu-latest
1160
strategy:
1261
matrix:
@@ -36,16 +85,16 @@ jobs:
3685
pip install -e .
3786
pip install -e .[test]
3887
pip install -e .[setup]
39-
- name: Make standalone
40-
run: make standalone
88+
- name: Build executable
89+
run: make
4190
env:
4291
UST_EXTENSION: ${{matrix.extension_support}}
4392
- name: Test with pytest
4493
run: pytest
4594
- name: Get build
4695
run: |
4796
cd dist
48-
tar czf "user-sync-${UST_VERSION}${UST_VARIANT_TAG}-ubuntu.tar.gz" user-sync
97+
tar czf "user-sync-${UST_VERSION}${UST_VARIANT_TAG}-ubuntu_focal.tar.gz" user-sync
4998
env:
5099
UST_VARIANT_TAG: ${{matrix.variant_tag}}
51100
UST_VERSION: ${{ steps.get_version.outputs.version }}

docs/en/success-guide/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ nav_level: 1
88
nav_order: 100
99
---
1010

11-
Version 2.6.5, released 2021-09-14
11+
Version 2.6.5, released 2021-09-16
1212

1313
This document walks you through the steps needed to understand
1414
and setup the User Sync Tool.

docs/en/user-manual/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ nav_level: 1
88
nav_order: 10
99
---
1010

11-
Version 2.6.5, released 2021-09-14
11+
Version 2.6.5, released 2021-09-16
1212

1313
This document has all the information you need to get up and
1414
running with User Sync. It presumes familiarity with the use of

user_sync/rules.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -535,9 +535,14 @@ def execute_commands(self, command_list, connector):
535535
# do nothing if we have no commands for this connector
536536
if not command_list:
537537
return
538+
539+
# Instead of a Commands object, some items in the list might be None
540+
# this can happen if country code is invalid, for instance
541+
command_list = [c for c in command_list if c is not None]
538542

539543
total_users = len(command_list)
540544

545+
# split off the last command if we have more than 10, so we can send the signals
541546
if len(command_list) > 10:
542547
command_list, last_command = command_list[0:-1], command_list[-1]
543548
connector.start_sync()
@@ -642,7 +647,7 @@ def process_strays(self, primary_commands, secondary_command_lists, umapi_connec
642647
self.logger.critical('Unable to process Adobe-only users, as their count (%s) is larger '
643648
'than the max_adobe_only_users setting (%s)', stray_count, max_missing_option)
644649
self.action_summary['primary_strays_processed'] = 0
645-
return
650+
return [], {}
646651
self.logger.debug("Processing Adobe-only users...")
647652
return self.manage_strays(primary_commands, secondary_command_lists, umapi_connectors)
648653

@@ -676,7 +681,7 @@ def get_commands(key):
676681
return user_sync.connector.umapi.Commands(identity_type=id_type, username=username, domain=domain)
677682

678683
# do the secondary umapis first, in case we are deleting user accounts from the primary umapi at the end
679-
for umapi_name, umapi_connector in umapi_connectors.get_secondary_connectors().items():
684+
for umapi_name in umapi_connectors.get_secondary_connectors():
680685
secondary_strays = self.get_stray_keys(umapi_name)
681686
for user_key in primary_strays:
682687
if user_key in secondary_strays:
@@ -708,7 +713,6 @@ def get_commands(key):
708713
continue
709714

710715
# finish with the primary umapi
711-
primary_connector = umapi_connectors.get_primary_connector()
712716
for user_key in primary_strays:
713717
commands = get_commands(user_key)
714718
if disentitle_strays:

0 commit comments

Comments
 (0)