Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#132] Base py3 migration. #676

Merged
merged 58 commits into from
Jul 4, 2023
Merged
Show file tree
Hide file tree
Changes from 57 commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
166eb57
Try testing on CentOS 5 under Docker.
dumol Aug 9, 2021
a56657e
Replaced tabs with 4 spaces.
dumol Aug 9, 2021
d260717
Updated module versions in pavement.py to match server master.
dumol Aug 9, 2021
1b8d386
Try fixing python-info-action.
dumol Aug 9, 2021
62d5d25
Test on CentOS 6.10 under Docker too.
dumol Aug 9, 2021
f472e75
Try fixing old CentOS woes.
dumol Aug 9, 2021
85f84e0
Fixed CentOS 6.10 vault repo address.
dumol Aug 9, 2021
fc80283
Do not use actions/cache on CentOS 6.10.
dumol Aug 9, 2021
c6ad5e4
Also test on Ubuntu Server 14.04/16.04 under Docker.
dumol Aug 9, 2021
cbcc2fb
Also test on macOS 11.
dumol Aug 9, 2021
2b29523
macos-11 not available for us yet.
dumol Aug 9, 2021
b933c8a
Update for centos-5 passwd file.
adiroiban Aug 9, 2021
3c83753
Update release version.
adiroiban Aug 9, 2021
f0a3c4e
Iniatil deps and lint.
adiroiban Jan 27, 2022
56f0825
Move to non namespace package.
adiroiban Jan 27, 2022
33ad010
Move to @implementer.
adiroiban Jan 27, 2022
e08b2f3
Move test code to chevah_compat and remove six and future.
adiroiban Jan 27, 2022
f5d7a96
use distro instead of ld. remove skippy3
adiroiban Jan 27, 2022
c598ef0
Slow test update.
adiroiban Jan 27, 2022
06149b0
Update normal tests.
adiroiban Jan 27, 2022
19024fc
Update elevated tests.
adiroiban Jan 27, 2022
6a100e5
Fix more tests.
adiroiban Jan 27, 2022
409a2ac
merge master.
adiroiban Jan 27, 2022
88d8020
fix ci test run.
adiroiban Jan 28, 2022
7366076
Use newer python3.
adiroiban Jan 28, 2022
b2a23ee
Try to define pam and arpy deps only on Linux. Mac and AIX will not h…
adiroiban May 2, 2022
f392cb1
merge master.
adiroiban Nov 21, 2022
ef2583e
Use latest python_pam
adiroiban Nov 23, 2022
e81b04a
Update requirements.
adiroiban Nov 23, 2022
40c9ab7
Try to debug centos 8.2 pam.
adiroiban Nov 23, 2022
2246977
Try to fix pywin32 on windowd.
adiroiban Nov 23, 2022
52b53d9
Run CI on windows with bash.
adiroiban Nov 23, 2022
f9d25d2
Use pythia.
adiroiban Mar 12, 2023
d65878c
Use pythia.
adiroiban Mar 12, 2023
87fa400
update deps.
adiroiban Mar 13, 2023
4f452a5
sync master.
adiroiban Mar 13, 2023
c9f16c0
Merge master.
adiroiban Mar 13, 2023
5b5643b
fix lint.
adiroiban Mar 13, 2023
4168795
Better unicode/binary handling for the test file.
adiroiban Mar 22, 2023
9e61b8b
1.0.4 fix md5 sum.
adiroiban Apr 1, 2023
f3e52f1
1.0.5 add skipOnPy3.
adiroiban Apr 3, 2023
b0e2115
1.0.6 First win fixes for py3.
adiroiban Apr 7, 2023
4e5ca77
1.0.7 Win filesytem fixes.
adiroiban Apr 8, 2023
0d54c4c
Cleanup md5 not used.
adiroiban May 19, 2023
261bfcb
merge master.
adiroiban May 19, 2023
d58a08f
Fix tests after merge.
adiroiban May 22, 2023
87fad80
merge master.
adiroiban May 23, 2023
6cda862
Update after merge with master.
adiroiban May 23, 2023
9f22dfb
Remove pywin32 post install.
adiroiban May 23, 2023
f69e184
Try to debug windows failed ci.
adiroiban May 23, 2023
97c5c2f
More updates after windows run.
adiroiban May 23, 2023
99a080e
more ci fixes.
adiroiban May 23, 2023
0acc6f8
Update for 1.0.8.
adiroiban May 23, 2023
7577199
Don't show password in the error. This is just dev code, but still.
adiroiban May 24, 2023
afe7d0d
Update docker tests. Fix linux tests. Enable win debug.
adiroiban May 24, 2023
ddd6aa3
More win fixes.
adiroiban May 24, 2023
a56c5e6
more win fixes.
adiroiban May 24, 2023
a7c2682
Update after review.
adiroiban Jul 4, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 54 additions & 34 deletions .github/workflows/bare.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true

defaults:
run:
shell: bash

env:
TMATE_DEBUG: 'no'
Expand All @@ -45,24 +48,24 @@ jobs:
uses: actions/cache@v3
with:
path: |
build-compat
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}-unicode
build-py3
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}-unicode

- name: Deps
run: ./brink.sh deps
run: ./pythia.sh deps

- uses: chevah/python-info-action@v1
with:
python-path: build-compat/bin/python
python-path: build-py3/bin/python

- name: Move build to Unicode path
run: mv build-compat build-compat
run: mv build-py3 build-py3

- name: Test
run: |
./brink.sh test_ci2
./pythia.sh test_ci2
env:
CHEVAH_BUILD: build-compat
CHEVAH_BUILD: build-py3

- name: Tmate debug on failure
if: failure() && env.TMATE_DEBUG == 'yes'
Expand All @@ -71,7 +74,7 @@ jobs:
limit-access-to-actor: true

- name: Move build back to to ascii
run: mv build-compat-ț build-compat
run: mv build-py3-ț build-py


ubuntu-2204-ascii-path:
Expand All @@ -93,14 +96,14 @@ jobs:
uses: actions/cache@v3
with:
path: |
build-compat
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}-ascii
build-py3
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}-ascii

- name: Deps
run: ./brink.sh deps
run: ./pythia.sh deps

- name: Test
run: ./brink.sh test_ci2
run: ./pythia.sh test_ci2
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand All @@ -111,7 +114,7 @@ jobs:
limit-access-to-actor: true

- name: Publish cov
run: ./brink.sh codecov_publish
run: ./pythia.sh codecov_publish
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand All @@ -130,19 +133,19 @@ jobs:
uses: actions/cache@v3
with:
path: |
build-compat
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}-unicode
build-py3
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}-unicode

- name: Deps
run: ./brink.sh deps
run: ./pythia.sh deps

- name: Move build to Unicode path
run: mv build-compat build-compat
run: mv build-py3 build-py3

- name: Test
run: ./brink.sh test_ci2
run: ./pythia.sh test_ci2
env:
CHEVAH_BUILD: build-compat
CHEVAH_BUILD: build-py3
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

- name: Tmate debug on failure
Expand All @@ -152,10 +155,10 @@ jobs:
limit-access-to-actor: true

- name: Move build back to to ascii
run: mv build-compat-ț build-compat
run: mv build-py3-ț build-py3

- name: Publish cov
run: ./brink.sh codecov_publish
run: ./pythia.sh codecov_publish
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand All @@ -174,14 +177,16 @@ jobs:
uses: actions/cache@v3
with:
path: |
build-compat
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}-ascii
build-py3
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}-ascii

- name: Deps
run: ./brink.sh deps
run: |
./pythia.sh deps
./pythia.sh build

- name: Test
run: ./brink.sh test_ci2
run: ./pythia.sh test_ci2
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand All @@ -192,7 +197,7 @@ jobs:
limit-access-to-actor: true

- name: Publish cov
run: ./brink.sh codecov_publish
run: ./pythia.sh codecov_publish
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand All @@ -208,26 +213,41 @@ jobs:
uses: actions/cache@v3
with:
path: |
build-compat
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}
build-py3
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}

- name: Deps
run: sh ./brink.sh deps
run: |
./pythia.sh deps
./pythia.sh build

# FIXME:691:
# We should have just a single test step here to run all the tests in one
# go.
# Not sure why on Windows the normal tests are not discovered by default.
- name: Test normal
run: |
./pythia.sh test normal
env:
CODECOV_TOKEN: enabled
USER: runneradmin

- name: Test
run: sh ./brink.sh test_ci2
- name: Test elevated
run: |
./pythia.sh test elevated
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
CODECOV_TOKEN: enabled
USER: runneradmin

- name: Tmate debug on failure
if: failure() && env.TMATE_DEBUG == 'yes'
if: failure() && env.TMATE_DEBUG == 'no'
uses: chevah/action-tmate@v3
with:
limit-access-to-actor: true

- name: Public coverage
if: ${{ !cancelled() }}
run: sh ./brink.sh codecov_publish
run: ./pythia.sh codecov_publish
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

Expand Down
42 changes: 7 additions & 35 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,11 @@ jobs:
fail-fast: false
matrix:
container:
- alpine:3.14
- amazonlinux:2018.03
- alpine:3.18
- amazonlinux:2
- amazonlinux:2022
# CentOS 5.11 setup was saved as an image pushed to Docker Hub. See
# the Overview section at https://hub.docker.com/r/proatria/centos.
- proatria/centos:5.11-chevah1
- centos:6.10
- centos:7
- centos:8.2.2004
- centos-stream9-fips
- oraclelinux:8
- ubuntu:14.04
- ubuntu:16.04
Expand All @@ -66,21 +61,6 @@ jobs:
apk upgrade -U
apk add git bash shadow sudo curl

- name: CentOS 6.10 setup
if: matrix.container == 'centos:6.10'
run: |
sed -i s/^mirrorlist=/#mirrorlist=/ /etc/yum.repos.d/*.repo
sed -i s@^#baseurl=http://mirror.centos.org/centos/\$releasever/@baseurl=http://vault.centos.org/6.10/@ /etc/yum.repos.d/*.repo
yum -y upgrade

# OpenSSL got updated in 8.3 from 1.1.1c to 1.1.1g.
- name: CentOS 8.2 setup
if: matrix.container == 'centos:8.2.2004'
run: |
sed -i s/^mirrorlist=/#mirrorlist=/ /etc/yum.repos.d/*.repo
sed -i s@^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever/@baseurl=https://vault.centos.org/8.2.2004/@ /etc/yum.repos.d/*.repo
yum -y upgrade

- name: Amazon Linux 2022 setup
if: matrix.container == 'amazonlinux:2022'
run: yum -y install libxcrypt-compat
Expand Down Expand Up @@ -121,42 +101,34 @@ jobs:
git reset --hard ${{ github.event.after }}
git log -1 --format='%H'

# The old curl on CentOS 5 has cert check issues with GitHub's SNI.
# Also with Let's Encrypt certificates, lately.
# So download the runtime over HTTP from backup server.
- name: CentOS 5 BINARY_DIST_URI hack
if: startsWith(matrix.container, 'proatria/centos:5.11')
run: |
sed -i s@^#BINARY_DIST_URI=\'https://bin.chevah.com:20443/production\'@BINARY_DIST_URI=\'http://bin.chevah.com:20080/production\'@ /home/chevah/$CHEVAH_REPO/brink.conf

# This action also fails on CentOS 5/6.
- name: Cache build
uses: actions/cache@v3
if: matrix.container != 'proatria/centos:5.11-chevah1' && matrix.container != 'centos:6.10'
with:
path: |
/home/chevah/$CHEVAH_REPO/build-$CHEVAH_REPO
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('brink.conf') }}-${{ matrix.container }}
key: ${{ runner.os }}-${{ hashFiles('pavement.py') }}-${{ hashFiles('pythia.conf') }}-${{ matrix.container }}

- name: Deps
run: |
cd /home/chevah/$CHEVAH_REPO
./brink.sh deps
./pythia.sh deps
chown -R chevah .

- uses: chevah/python-info-action@v1
with:
python-path: /home/chevah/$CHEVAH_REPO/build-$CHEVAH_REPO/bin/python
python-path: /home/chevah/$CHEVAH_REPO/build-py3/bin/python

- name: Build
run: |
cd /home/chevah/$CHEVAH_REPO
su chevah -c "./brink.sh build"
su chevah -c "./pythia.sh build"

- name: Test
run: |
cd /home/chevah/$CHEVAH_REPO
su chevah -c "./brink.sh test_ci2"
su chevah -c "./pythia.sh test_ci2"

# Helper so that on GitHub repo settings we can configure a single job as
# required.
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:

- uses: actions/checkout@v3
- name: Deps
run: ./brink.sh deps
run: ./pythia.sh deps

- name: Lint
run: ./brink.sh lint --all
run: ./pythia.sh lint --all
7 changes: 0 additions & 7 deletions chevah/__init__.py

This file was deleted.

Loading