@@ -5,6 +5,12 @@ on: [push, pull_request]
55jobs :
66 test :
77 runs-on : ubuntu-latest
8+
9+
10+ env :
11+ NODE_EXTRA_CA_CERTS : /etc/ssl/certs/ca-certificates.crt
12+ SSL_CERT_FILE : /etc/ssl/certs/ca-certificates.crt
13+ REQUESTS_CA_BUNDLE : /etc/ssl/certs/ca-certificates.crt
814
915 steps :
1016 - name : Check out repository
@@ -25,12 +31,15 @@ jobs:
2531 - name : Install Act dependencies
2632 if : ${{ env.ACT }}
2733 run : |
28- apt-get update && apt-get install sudo -y
34+ apt-get update && apt-get install -y sudo
2935
30- - name : Install CA cert tools and trust internal CA
36+ - name : Install Runner Dependencies & Configure CA
3137 run : |
3238 sudo apt-get update
33- sudo apt-get install -y ca-certificates
39+ # Install Node.js (for JS-based actions) & ca-certificates
40+ sudo apt-get install -y nodejs ca-certificates
41+
42+ # This trusts your mounted certificate (from the act command)
3443 sudo update-ca-certificates
3544
3645 - name : Install ping utility
4049
4150 - name : Set timezone to UTC
4251 run : |
43- # Use sudo for all commands to ensure permissions in all runner environments
4452 sudo ln -fs /usr/share/zoneinfo/Etc/UTC /etc/localtime
4553 echo "Etc/UTC" | sudo tee /etc/timezone
4654 sudo apt-get update
@@ -57,37 +65,37 @@ jobs:
5765 sudo apt-get update
5866 sudo apt-get install -y default-jre
5967
60- - name : Install Python 3.10, Git, and set CA environment
68+ - name : Install build dependencies
69+ run : |
70+ sudo apt-get update
71+ sudo apt-get install -y build-essential
72+
73+ - name : Install Python 3.12 and Git
6174 run : |
6275 sudo apt-get update
6376 sudo apt-get install -y lsb-release software-properties-common gnupg curl git
6477
65- # Properly and securely add the GPG key for the deadsnakes PPA
78+ # --- THIS IS THE GPG KEY FIX ---
79+
6680 sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BA6932366A755776
6781 sudo gpg --export BA6932366A755776 | sudo gpg --dearmor -o /usr/share/keyrings/deadsnakes-archive-keyring.gpg
82+ # --- END FIX ---
6883
69- # Add the PPA repository, signed by the new key
7084 echo "deb [signed-by=/usr/share/keyrings/deadsnakes-archive-keyring.gpg] http://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/deadsnakes-ppa.list
7185
7286 sudo apt-get update
73- sudo apt-get install -y python3.10 python3.10 -venv python3.10-distutils
87+ sudo apt-get install -y python3.12 python3.12 -venv python3.12-dev
7488
75- # Set Python 3.10 as default using symbolic links
76- sudo ln -sf /usr/bin/python3.10 /usr/local/bin/python
77- sudo ln -sf /usr/bin/python3.10 /usr/local/bin/python3
89+ sudo ln -sf /usr/bin/python3.12 /usr/local/bin/python
90+ sudo ln -sf /usr/bin/python3.12 /usr/local/bin/python3
7891
7992 python --version
80-
81- # Set the certificate path for all subsequent steps in the job
82- echo "SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt" >> $GITHUB_ENV
83- echo "REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt" >> $GITHUB_ENV
8493
8594 - name : Setup ML project
8695 run : |
8796 cd $GITHUB_WORKSPACE
88- # Make install.sh executable if it isn't already
8997 chmod +x install.sh
90- # Run the installation script
98+ # This 'pip' command will now inherit the job-level 'REQUESTS_CA_BUNDLE'
9199 ./install.sh
92100
93101 - name : Debug virtual environment
0 commit comments